Google 為什麼不給 Golang 做一個自己的 IDE?
看到Sun對Java發展的歷程,Sun自己開發的IDE還沒有IBM給Java開發的好用,前者Netbean,與後者Eclipse,不但作為Java的第一IDE,而且擴展成一個平台了,是Google沒看到這段歷史,還是Google把Golang的發展作為業餘項目?
https://godoc.org/golang.org/x/tools/cmd
所有做 IDE 需要的,跟 Go 有關的功能大多數都在這裡了。剩下的都是 personal taste——用什麼 key-binding ,用什麼 look-and-feel,用 Java 還是 CLR 去跑 GUI 的事情,誰有興趣誰去管好了:)
1.不存在業餘產品的說法,所有的產品,產生必然有目的,沒有人會把時間浪費在所謂的「業餘產品」
2.IDE主要是簡化程序開發,集成很多工具方便開發和調試,但是所有所有語言本身都不依賴IDE,所以語言和IDE本身就是獨立的兩樣東西,Google發布Go語言,並不代表他會發布Go的IDE3.雖然Go沒有官方IDE,但是Google同樣提供了許多工具,例如Godoc、Goget、GoTest、Goinstall、Goformat 等,這些工具已經簡化了很多Go語言的開發,只是沒有集成到一個編輯器里。其實大多數的IDE提供的某個語言的特徵功能都是其他開發者或團隊提供的,例如Eclipse上的諸多插件。
Go 就是 Emacs + godef 啊。已經很方便了啊。Emacs 也是 iintegrating 而不是 integrated 啊。
有IDE啊。
Go的主要開發者,包括Rob Pike和Russ Cox都用Acme。
Russ Cox專門錄製了這段視頻 https://www.youtube.com/watch?v=dP1xVpMPn8M 解釋為什麼Acme是Integrating Development Environment(而不是Integrated Development Environment)。Russ說話很快,我和同事Keith Tsang | LinkedIn聽寫了他的旁白,寫了這個字幕文件:wangkuiyi/RussCoxAcmeTourSubtitle · GitHub。主要靠ABC Keith同學牛逼。
Acme是Plan 9操作系統的標準IDE。Plan 9是幾位Unix設計者於1990年代設計的下一代操作系統,很多功能知道最近才被Dropbox等公司實現。Go的圖標就是Plan 9圖標設計者Renee設計的。Renee就是Rob Pike家那口子。具體八卦請參閱:介紹Acme文本編輯器
舉個例子,安卓。
安卓以前和Linux鬧矛盾的時候谷歌為什麼不自己造一個內核?安卓幹嘛用Java,谷歌怎麼不自己造一個語言?android 以前哪有什麼IDE,整個插件就靠eclipse搞起項目來了。android studio 總算來了,對不起 它也只是基於intellij的。說谷歌怎麼不自己開發一個go語言IDE,那是你還不夠了解谷歌的作風,谷歌就是能用現有開源的東西就利用。
很多人都覺得谷歌很多類似行為都是利用了開源社區,特別是當初和Linux的矛盾的那時候。我不喜歡谷歌這個公司,但是更加討厭微軟。不過不得不說,自己造那是微軟才會幹的。visual studio code 就支持 go 的 intellisense 和 debug。。。
而且 go 插件是 vs code 最早的幾個插件之一。。。
還是微軟官方管理的:https://github.com/microsoft/vscode-go也不知道背後沒有什麼骯髒的交易給這些 godef,gofmt ,gocode,goxxx寫個emacs插件,不就差不多是個ide了嘛!
為什麼我覺得google只是玩票………
golang並不是Google的官方項目,準確的說它只是在谷歌工作的一些大牛的業餘產品,谷歌官方在推的是Dart語言
語言本身還在快速變化,還不知道有沒有未來,還是先考慮活下來的問題吧,錦上添花的事情以後再說
1.沒必要,有多少後端的人都還在用vim emacs?2.意思不大,goimports,gocode,godef,gofmt,gotypes等等都存在了,你再做個ide也不過是把這些組合一下。
google不會做ide
推薦閱讀:
※Google是否不擅長設計程序語言?
※無法訪問Google頁面,人在海外,請問是電腦哪裡設置錯了嗎?
※美國CS本科生可以做一些什麼項目來證明自己的軟體工程能力? 大家本科階段自己都獨自實現了一些什麼項目?
※Android 操作系統為什麼不啟用swap?