青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eXile 的專欄

好玩的Go語言

     1.什么是Go語言

    Go語言是Google推出的新的一個致力于系統級的編程語言。很多人說它是 C + Python,既有c的靈活高效,又有Python的簡單易用,它的原則是 Simple && Fast。它的語法規則很簡單。其官方網站上有一個《三天學會Go語言》的教程,包括三部分:基本結構,面向對象,并發。一個周末的時間就差不多可以掌握其基本面貌。相對來說,第三部分“并發”似乎難接受一些。但是如果你對多線程,同步,消息隊列這些東西很有經驗的話,對它的概念也會容易理解。

     2.Go語言的面向對象

     Go語言在C語言語法的基礎上,以最簡潔的形式加入了面向對象。
    關于繼承:Go語言沒有繼承。但是它支持嵌入,這個有點類似于其它語言的mixin,可以用來模擬繼承。
    關于多態:Go 語言的最大特點是它的接口定義。所謂“接口”,就是一組方法的集合。任何一個類只要實現了一個接口的所有方法,則是該接口的實現者,不需要顯式聲明實現該接口。所以一個沒有任何方法的空接口可以代表任何類型。
   
     3.Go語言的并發

     Go語言提出一個新的概念—Go例程,有點類似于線程,但是更加輕量,更省資源。Go例程之間的通信方式 ——信道,這是GO 語言的核心概念,有點類似于UNIX的Pipe。在Go語言中,不需要接觸線程,鎖這些低階概念。

     4.Go語言可以用來做什么

     Go語言目前最強的是它的網絡功能。它的package中已經實現了最常見的網絡協議和編碼處理。Go的官方網站使用的就是Go語言,實際上它就是Go的文檔系統godoc。
      還沒有官方對數據庫支持,不過因為通過某種辦法可以在Go語言中直接調用C函數,所以很容易的實現對MYSQL 或者 Sqlite 這些數據庫的支持。
      至于GUI,這估計目前還不在設計者的考慮范圍之內,因為他們連Windows都不舍得支持。不過可以通過它的http包和template包等等,已經構成了一個WEB框架,可以用來實現WEB GUI的開發,使用Go寫一個帶有路徑分派的Http服務器也就幾行代碼的事。
    


posted on 2010-01-11 19:48 eXile 閱讀(22230) 評論(39)  編輯 收藏 引用 所屬分類: 網絡開發

評論

# re: 好玩的Go語言 2010-01-12 12:38 陳梓瀚(vczh)

mixin可能造成的問題有:子類指針不能轉成父類指針。如果真的不能,那繼承是沒意義的。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 13:16 eXile

是的,畢竟Go沒有繼承,沒有虛函數,它沒有子類和父類的概念,所有的指針都視為不同的類型。但是,對于Go語言來說,接口不是指針,這是它和其它語言的不同。如果要多態,就應該使用接口,而不是具體的類。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 15:50 陳梓瀚(vczh)

@eXile
這也會帶來問題,譬如說我有很多個同時針對IFooA和IFooB的實現,其中大部分函數的實現相同,沒繼承你只好復制代碼了。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 17:31 eXile

@陳梓瀚(vczh)
如果可能的話,把相同的代碼提取出來,組成一個新類或新函數,再組合進去。或者,使用一個代理類。我覺得利用嵌入還是比較好解決這個問題的。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 18:04 eXile

@陳梓瀚(vczh)
面向對象的兩條重要原則:1.面向接口編程,而不是面向實現編程 2 優先使用組合而不是繼承, 這在別的語言中只不過是口頭約定,而在Go語言中,你則不得不這樣做。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 21:13 eXile

關于為什么沒有繼承,官方FAQ是這么說的:它簡化了類之間的關系,不再有復雜的類型體系。接口的隱式風格,使一個類型不需要提前聲明,就可以一次滿足多個接口,同時又沒有傳統的多重繼承的復雜性——“這種風格需要一段時間來適應,但這是Go語言最令人激動的事情之一”。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 23:34 陳梓瀚(vczh)

@eXile
所以說,過分強調原則只會降低生產率。C++其實都能做,但是人們在這種情況下會非常自覺,然后再不得不例外的時候例外。不允許例外是不好的。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 23:35 陳梓瀚(vczh)

@eXile
至于說不需要提前聲明估計最根本的原因是為了簡化編譯器的開發吧。因為在設計語言的時候我也會不自覺的傾向于這種設計,不過最后我還是堅持挑戰編譯器的開發而不是添加約束。  回復  更多評論   

# re: 好玩的Go語言 2010-01-12 23:39 陳梓瀚(vczh)

@陳梓瀚(vczh)
不過最近我傾向于pattern matching了……這根繼承不同。繼承具有縱向擴展性,你可以添加新的實體,為已有的規則添加新內容。Pattern matching則是橫向的,重點在于添加規則而不是添加新的實體。如果可以兩者結合起來,那應該是一件令人激動人心的事情。

當然這還是一個方向問題。現在CPU越來越快內存越來越大,語言應該傾向于更容易寫。傾向于執行起來快但是開發效率不高的只能在極少的領域里面應用。估計google不關心這個吧。  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 00:05 eXile

@陳梓瀚(vczh)
不需要提前聲明估計最根本的原因是為了簡化編譯器的開發吧?
不是這么簡單。這是Go語言與其它面向對象語言的最大不同。舉個例子就明白了,

type MyInterface interface { func doIt() } // 接口

type A struct {}
func (self *A) doIt() {} // 指針

type B struct {}
func (b B) doIt() {} //值

type C struct { A } // 嵌入

則A, B,C 都實現了MyInterface接口,也就都是MyInterface類型。沒有繼承,沒有顯式說明,靜態綁定。Go把它稱之為“最令人激動的事情之一” 不是沒有道理的。
  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 00:09 eXile

說到開發效率, 在服務器領域,Go絕對優于Java,C++,就不用提了。  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 10:36 陳梓瀚(vczh)

@eXile
哦,這就是concept嘛。MyInterface會被自動匹配進A。但是我想,如果A的所有函數都分散在各個文件里面,他還不是得全部讀完了才能進行這個分析。所以只是沒有向前聲明,取而代之是全文搜索。

那我還有一個問題,interface有沒有顯式繼承?(go語言的官方網站竟然被墻艸)  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 10:40 陳梓瀚(vczh)

@eXile
當然說絕對由于Java和C++什么的還是說得太早啊,關鍵還要看這個語言是不適合用來寫大量的庫,還有其ABI是什么樣子的。當然庫包含兩種

1:代碼包含。程序越大編譯時間越長。
2:二進制。這樣子如果我有兩個二進制庫,第一個有interface,第二個有恰好可以匹配進去的類,那么就有問題。

當然想來想去你說mixin和自動匹配interface同時存在的話,其實和多重繼承就是一回事,僅僅是少寫了一點聲明父類的代碼而已。并不是什么激動人心的新東西。C++的template早就是這個意思了。  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 11:27 eXile

@陳梓瀚(vczh)
1)編譯分析是根據包packege來進行的,一個類的函數必須定義在一個包中,但可以在不同的文件中。
2)interface有顯式繼承,當然也是以嵌入的形式。我也想到了C++的concept,但是Go接口又具有動態特性。
3)Go具有和C一樣的ABI,一樣的類型,一樣的結構布局,所以從Go調用C很容易,但是,因為有GC,所以不支持從C調用Go。
4)超快的編譯速度,無論是Go還是D語言,對c/c++的一個很大的不滿就是編譯太慢,當然不會再出現這個問題。庫是二進制的。Go目前有兩套編譯器,其中一個編譯器gccgo的目標是和gcc二進制兼容。
5)Go語言的庫都是用Go語言來寫的,個人感覺很好讀,代碼量也少得多,每個庫也就是一兩個實現文件,是學習Go的最好途徑。  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 11:30 eXile

吊詭的是,go語言的官方網站我在Windows下不能訪問,但在Linux下可正常訪問  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 15:53 陳梓瀚(vczh)

@eXile
我明白了,一個真正徹底的方法是,你用接近動態語言的語法來寫程序,然后編譯器幫你推導出所有的interface結構(你連interface都不用寫了,而且你一旦真的寫錯了編譯器還會告訴你,多好),還有各個函數的類型。在vlpp的框架完成之后,我去實現它。  回復  更多評論   

# re: 好玩的Go語言 2010-01-13 22:39 空明流轉

@陳梓瀚(vczh)
編譯時間怎么辦。。。。怎么辦。。。  回復  更多評論   

# re: 好玩的Go語言 2010-01-14 02:05 陳梓瀚(vczh)

@空明流轉
我不信編譯時間能比程序員因為沒有語言這個功能而多花的寫代碼的時間長  回復  更多評論   

# re: 好玩的Go語言 2010-01-14 09:50 bluegene

個人感覺go語言目前的進展不快啊,這么早就把它開源,看來google不愿意投入太多的精力在上面啊  回復  更多評論   

# re: 好玩的Go語言 2010-01-14 10:43 eXile

@陳梓瀚(vczh)
Go接口的實現可能是這樣的,假設函數定義的形參類型為Myinterface,而實際調用的實參類型為A,所編譯器會對A生成一個關于Myinterface的方法表,這樣,實參的值并不是一個簡單的對象指針,而是對象指針再加上方法表的首地址。  回復  更多評論   

# re: 好玩的Go語言 2010-01-14 10:49 eXile

@bluegene
這是想借助開源社區的力量,比如現在已經有人在做Windows 的移植,以及數據庫的客戶端,還有人在討論GUI的設計。對于老外來說,開源只會太遲,不會太早。
  回復  更多評論   

# re: 好玩的Go語言 2010-01-14 12:20 陳梓瀚(vczh)

@eXile
可憐的google  回復  更多評論   

# re: 好玩的Go語言[未登錄] 2010-01-14 21:40 eXile

@陳梓瀚(vczh)
google不可憐,可憐的是網民。  回復  更多評論   

# re: 好玩的Go語言 2010-01-15 01:21 linbc

看來,這是我理想中的語言,簡單應當是美  回復  更多評論   

# re: 好玩的Go語言 2010-01-15 14:56 陳梓瀚(vczh)

@linbc
簡潔才是美  回復  更多評論   

# 呵呵,我也喜歡Go語言 2010-01-19 09:25 lvscar

我對這個語言也很感興趣, 現在開始嘗試用它來寫一些小東西. 如果得空歡迎和我交流 gtalk&email: lvscar <at> gmail.com  回復  更多評論   

# re: 好玩的Go語言 2010-03-02 16:02 四不象

duck typing , I like it  回復  更多評論   

# re: 好玩的Go語言 2010-03-06 09:10 科杰

我覺得只要是簡單,并且跨平臺就算一門好的編程語言了
科杰:www.kjhq.com  回復  更多評論   

# re: 好玩的Go語言 2010-07-12 08:51 AngelitaVaughan

It's understandable that cash can make people free. But how to act when one doesn't have money? The one way only is to receive the <a href="http://bestfinance-blog.com/topics/business-loans">business loans</a> and just collateral loan.   回復  更多評論   

# re: 好玩的Go語言 2010-07-27 05:48 buy essay

If people want to see more facts about this good topic, they should purchase custom written essays or buy an essay with the help of research paper writing services.   回復  更多評論   

# re: 好玩的Go語言 2010-08-05 20:03 dissertation

I state that high school students would be satisfied, if order thesis topic at thesis writing service. Furthermore, this can save free time.   回復  更多評論   

# re: 好玩的Go語言 2011-03-01 11:14 殷遠超

繼承是為了傳遞特性,并不一定要用虛函數分發。在C++模板編程里面也可以用得上。@陳梓瀚(vczh)
  回復  更多評論   

# re: 好玩的Go語言 2013-10-17 23:57 Internet site

Our expert resume writers will be happy to provide professional CV writing services to potential employees who do not have time to write a resume. Consider ResumesExpert company "resumesexpert.com" and view CV templates. Now you have the necessary info where to buy resume paper, so do not doubt order resume and enjoy your career.  回復  更多評論   

# re: 好玩的Go語言 2013-10-17 23:57 CustomEssays.co.uk rewiew

Don’t know which firm to pick to receive help from? Look through QualityEssay testimonials, and come to a sound choice.  回復  更多評論   

# re: 好玩的Go語言 2013-10-17 23:59 check here

Have no clue which firm to select to obtain assistance from? Look over College-Paper testimonials "essaysreview.com", and come to a sound decision.  回復  更多評論   

# re: 好玩的Go語言 2013-10-17 23:59 up here

Our professional resume writers will provide help with resume writing to job seekers who do not have time to write a resume. View this ResumesExpert company resumesexpert.com and check resume writing samples. Now you have the necessary info where to buy resume paper, so do not hesitate buy resume and build your career.  回復  更多評論   

導航

<2010年1月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

統計

常用鏈接

留言簿(18)

隨筆分類

隨筆檔案

服務器編程

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人精品1314www| 国产主播一区二区| 亚洲精品乱码久久久久久| 欧美国产先锋| 亚洲日本中文字幕免费在线不卡| 久久九九精品| 欧美激情中文字幕乱码免费| 亚洲人午夜精品| 午夜一区二区三区不卡视频| 亚洲欧美日韩另类| 一区二区日本视频| 一本色道久久综合狠狠躁篇的优点| 国产精品午夜久久| 国产区日韩欧美| 伊人色综合久久天天| 亚洲品质自拍| 蜜桃av久久久亚洲精品| 国产一区二区高清不卡| 精品动漫3d一区二区三区| 亚洲精品在线三区| 欧美在线视频观看| 久久人体大胆视频| 一区二区三区免费网站| 久色成人在线| 悠悠资源网亚洲青| 久久亚洲综合网| 亚洲欧美视频一区| 欧美视频日韩视频在线观看| 亚洲伦理一区| 麻豆久久久9性大片| 亚洲私人影院| 国产亚洲欧美日韩日本| 日韩亚洲精品在线| 欧美第十八页| 欧美精品日韩一本| 亚洲精品影视| 亚洲第一二三四五区| 久久天天综合| 久久久久久穴| 狠狠色伊人亚洲综合成人| 欧美一区二区在线免费播放| 亚洲视频在线播放| 国产深夜精品福利| 亚洲国产精品va在线观看黑人| 久久岛国电影| 久久国产日韩欧美| 日韩视频一区二区三区在线播放| 欧美激情影院| 欧美天天在线| 久久综合网色—综合色88| 欧美xxx在线观看| 午夜精品www| 欧美人与禽猛交乱配| 亚洲自啪免费| 影音先锋久久久| 久久精品国产第一区二区三区最新章节 | 欧美黄色成人网| 欧美另类极品videosbest最新版本 | 亚洲男人av电影| 午夜一区二区三视频在线观看| 亚洲国产成人久久综合| 一本久久a久久免费精品不卡| 国产日韩一区二区三区在线播放| 欧美国产丝袜视频| 激情小说另类小说亚洲欧美| 99精品99| 99精品国产在热久久婷婷| 国产精品日韩欧美| 国产日产高清欧美一区二区三区| 牛牛影视久久网| 又紧又大又爽精品一区二区| av成人免费在线观看| 一本色道久久99精品综合| 免费看亚洲片| 欧美亚洲视频在线观看| 亚洲女同精品视频| 一区二区免费在线视频| 欧美在线观看天堂一区二区三区| 亚洲伦伦在线| 久久久精品一品道一区| 免费欧美日韩| 欧美一区亚洲| 欧美激情视频在线免费观看 欧美视频免费一| 欧美看片网站| 欧美成人精品在线| 最新国产乱人伦偷精品免费网站| 你懂的一区二区| 亚洲经典在线看| 亚洲小说春色综合另类电影| 国产精品伦一区| 麻豆精品视频在线| 亚洲肉体裸体xxxx137| 欧美一区二区视频免费观看| 经典三级久久| 国产精品久久久久77777| 亚洲欧美国产77777| 欧美成人精品高清在线播放| 在线观看亚洲精品| 国产一级一区二区| 欧美色视频日本高清在线观看| 久久爱www.| 亚洲午夜av在线| 亚洲国产婷婷香蕉久久久久久99| 亚洲一区精品视频| 欧美日韩精品欧美日韩精品 | 欧美激情精品久久久| 日韩午夜黄色| 一本久道综合久久精品| 国产亚洲成人一区| 国产精品任我爽爆在线播放 | 国产一在线精品一区在线观看| 久久午夜影视| 蜜臀久久99精品久久久久久9 | 亚洲亚洲精品在线观看 | 在线观看91精品国产麻豆| 欧美一区2区三区4区公司二百| 欧美影院午夜播放| 午夜精品福利电影| 午夜亚洲一区| 亚洲免费高清| 亚洲一区二区视频| 99热免费精品在线观看| 国产精品99久久久久久宅男| 亚洲综合色网站| 久久久福利视频| 老鸭窝亚洲一区二区三区| 欧美1区免费| 日韩视频中文| 亚洲欧美成人网| 欧美在线视频在线播放完整版免费观看 | 久久乐国产精品| 玖玖玖免费嫩草在线影院一区| 麻豆精品在线播放| 亚洲影院色无极综合| 性xx色xx综合久久久xx| 欧美精品福利视频| 国产一区日韩欧美| 亚洲一区二区三区免费视频| 欧美激情一区二区三区在线视频观看 | 午夜伦理片一区| 欧美亚韩一区| 夜夜狂射影院欧美极品| 久久精品国产清自在天天线| 欧美日韩中文| 亚洲精品乱码久久久久久蜜桃91| 亚洲欧美激情视频| 亚洲在线视频免费观看| 亚洲一级一区| 国产精品成人一区二区艾草| 黄色成人av在线| 久久精品国产亚洲一区二区| 亚洲日本在线观看| 麻豆精品视频在线观看| 在线观看欧美亚洲| 久久久久久久综合色一本| 亚洲欧美在线看| 国产一区二区三区日韩| 国产精品豆花视频| 一区二区欧美亚洲| 国产伦一区二区三区色一情| 亚洲伊人伊色伊影伊综合网| 中日韩视频在线观看| 国产精品av久久久久久麻豆网| 亚洲理伦电影| 亚洲一区二区三区在线| 国内外成人免费激情在线视频网站| 美日韩精品视频| 欧美日韩亚洲一区二区| 亚洲在线成人精品| 久久丁香综合五月国产三级网站| 影音先锋一区| 欧美激情按摩在线| 国产精品综合| 美女主播精品视频一二三四| 欧美日韩伦理在线| 久久久久久久久久看片| 欧美日韩一区精品| 麻豆av一区二区三区久久| 国产精品黄页免费高清在线观看| 欧美影院成年免费版| 欧美日本国产视频| 久久亚洲免费| 国产香蕉97碰碰久久人人| 亚洲精品视频二区| 国产拍揄自揄精品视频麻豆| 一区二区三区精品视频| 在线精品亚洲一区二区| 欧美一级视频| 欧美一级视频精品观看| 国产精品午夜春色av| 亚洲深夜福利| 亚洲网站在线看| 国产精品国产成人国产三级| 亚洲黄色高清| 这里只有精品视频在线| 欧美日韩中文另类| 亚洲免费观看| 亚洲欧美激情视频| 在线播放豆国产99亚洲| 欧美国产日韩一区二区|