㈠ Go 語言可能會代替 C 語言嗎
c語言是當今最流行的程序設計語言之一,它的功能豐富、表達力強、使用靈活方便、應用面廣、目標程序高、可植入性好,既有高級語言的特點,又有低級語言的許多特點,適合作為系統描述語言,既可以用來編寫系統軟體,也可以用來編寫應用軟體。不是不能搞出更好的,而是C現在已經足夠了,沒必要再費力搞其他的。學習C語言可以關注「C語言Plus」.
㈡ 為什麼要使用 Go 語言Go 語言的優勢在哪裡
為什麼要使用Go語言:
從工程的角度上來看,對於大多數後台應用場景,選擇Golang是極為明智的選擇。 這樣可以很輕松的兼顧運行性能、開發效率及維護難度這三大讓諸多程序猿欲仙欲死的奇點。
Go有什麼優勢:
可直接編譯成機器碼,不依賴其他庫,glibc的版本有一定要求,部署就是扔一個文件上去就完成了。
靜態類型語言,但是有動態語言的感覺,靜態類型的語言就是可以在編譯的時候檢查出來隱藏的大多數問題,動態語言的感覺就是有很多的包可以使用,寫起來的效率很高。
語言層面支持並發,這個就是Go最大的特色,天生的支持並發,我曾經說過一句話,天生的基因和整容是有區別的,大家一樣美麗,但是你喜歡整容的還是天生基因的美麗呢?Go就是基因裡面支持的並發,可以充分的利用多核,很容易的使用並發。
內置runtime,支持垃圾回收,這屬於動態語言的特性之一吧,雖然目前來說GC不算完美,但是足以應付我們所能遇到的大多數情況,特別是Go1.1之後的GC。
簡單易學,Go語言的作者都有C的基因,那麼Go自然而然就有了C的基因,那麼Go關鍵字是25個,但是表達能力很強大,幾乎支持大多數你在其他語言見過的特性:繼承、重載、對象等。
豐富的標准庫,Go目前已經內置了大量的庫,特別是網路庫非常強大,我最愛的也是這部分。
內置強大的工具,Go語言裡面內置了很多工具鏈,最好的應該是gofmt工具,自動化格式化代碼,能夠讓團隊review變得如此的簡單,代碼格式一模一樣,想不一樣都很困難。
跨平台編譯,如果你寫的Go代碼不包含cgo,那麼就可以做到window系統編譯linux的應用,如何做到的呢?Go引用了plan9的代碼,這就是不依賴系統的信息。
內嵌C支持,前面說了作者是C的作者,所以Go裡面也可以直接包含c代碼,利用現有的豐富的C庫。
Go適合用來做什麼:
伺服器編程,以前你如果使用C或者C++做的那些事情,用Go來做很合適,例如處理日誌、數據打包、虛擬機處理、文件系統等。
分布式系統,資料庫代理器等。
網路編程,這一塊目前應用最廣,包括Web應用、API應用、下載應用。
內存資料庫,前一段時間google開發的groupcache,couchbase的部分組建。
雲平台,目前國外很多雲平台在採用Go開發,CloudFoundy的部分組建,前VMare的技術總監自己出來搞的apcera雲平台。
㈢ 請Golang深度用戶說說,現在Golang的性能可以和C比嗎
不可以。
可是,一台機器從生產到報廢,絕大部分的時間CPU都是跑不滿的,計算機的世界本來就有大量的浪費。
而程序員的時間和精力卻非常寶貴,全世界99.9%的應用型程序都應該用容易開發的語言來寫,為了性能而用C去寫代價可能非常大。
㈣ go語言可能會代替c語言嗎
可能性不大,C語言應用領域廣,認可度大,很多系統都是基於C語音開發的,c語言更兼容
㈤ go語言能取代C語言嗎
不能吧,現在用C語言搞開發都是用在更加底層的開發中,更加底層的開發需要高運行效率,go語言的運行效率是比不上C語言的,所以go語言在這些方面還無法取代C語言。應該說是各有所長吧,go和C都有它們自己的適用環境,誰也不能取代誰。
㈥ 如果把go語言和c語言劃分等級,那麼go語言可以和c語言平起平坐嗎
完全可以,go語言是c的強化班。
㈦ 高手,誰用c語言和go語言做過比較
不能吧,現在用c語言搞開發都是用在更加底層的開發中,更加底層的開發需要高運行效率,go語言的運行效率是比不上c語言的,所以go語言在這些方面還無法取代c語言。應該說是各有所長吧,go和c都有它們自己的適用環境,誰也不能取代誰。
㈧ go語言會不會被其他語言淘汰掉
不能吧,現在用C語言搞開發都是用在更加底層的開發中,更加底層的開發需要高運行效率,go語言的運行效率是比不上C語言的,所以go語言在這些方面還無法取代C語言。應該說是各有所長吧,go和C都有它們自己的適用環境,誰也不能取代誰。