嗨,您好!
今天我們將討論Golang及其豐富的功能。
Golang是一種靜態(tài)類型化,高性能且簡單的語言,這幾天以來一直使我感到很開心。 由于我正在從事一個(gè)項(xiàng)目,所以我最近開始學(xué)習(xí)Go,事實(shí)證明它非常有效,最重要的是,它是一種簡單的語言。 Go不允許您創(chuàng)建不使用的內(nèi)容,請對其進(jìn)行更好的注釋,然后運(yùn)行程序,否則編譯器將不允許您前進(jìn)。
我不會(huì)說我是Golang的粉絲,但是來自C,C ++背景,這似乎很容易使用。 豐富的庫集和良好的Go社區(qū)將以各種可能的方式幫助您克服問題。
因此,直截了當(dāng),這是Go擁有的功能列表,它使它比其他任何語言都更加獨(dú)特和可愛。
1.Simplelicity —我一直把它作為第一個(gè)功能,因?yàn)檫@是我談?wù)揋o時(shí)唯一想到的第一件事。 與其他語言不同,go并不能使其具有豐富的功能而具有競爭力,相反,它將可讀性和可維護(hù)性作為首要任務(wù)。 Golang的創(chuàng)建者僅在語言中添加了相關(guān)的功能,而沒有通過添加許多東西來使語言變得復(fù)雜。 當(dāng)您開始使用Go語言時(shí),您將能夠感覺到go語言的簡單性。如果您正在瀏覽別人的go語言代碼,無論代碼庫有多大,每一行都將具有很高的可讀性 對你來說是可以理解的
2.強(qiáng)大的標(biāo)準(zhǔn)庫— Go具有豐富的庫包集,使您可以更輕松地編寫代碼。 盡管它的庫不如Python或JAVA豐富,但它具有所有必需的東西。 您可以在這里瀏覽庫-https://golang.org/pkg/
3. Golang中的并發(fā)性-并發(fā)功能是Golang流行的另一個(gè)功能。 Go提供了Goroutines和渠道來處理并發(fā)。 并發(fā)有助于有效利用多處理器體系結(jié)構(gòu)。 并發(fā)性還有助于更好地?cái)U(kuò)展大型應(yīng)用程序。 用go編寫的一些著名的項(xiàng)目示例是Docker,Kubernetes,Dropbox和Hugo。
4. Web應(yīng)用程序構(gòu)建— Go由于其簡單的構(gòu)造和更快的執(zhí)行速度,已成為一種流行的Web應(yīng)用程序構(gòu)建語言。 互聯(lián)網(wǎng)上有大量的教程,您可以從任何內(nèi)容開始。
5.測試支持— Go提供了一種方法來測試您編寫的程序包。 僅需使用" go test"命令,您就可以測試以" * _test.go"文件編寫的代碼。 為了使任何程序都可靠,必須進(jìn)行測試,因此,每次編寫一些代碼時(shí),都應(yīng)在實(shí)際功能的基礎(chǔ)上添加測試功能。
6.面向?qū)ο?/strong>-好的,這一點(diǎn)值得磋商。 我們是否應(yīng)該調(diào)用go作為一種面向?qū)ο蟮木幊陶Z言! 盡管go沒有類和對象的概念,但是Golang中的結(jié)構(gòu)被廣泛用于替代類。 與結(jié)構(gòu)相關(guān)時(shí),我們使用的是"方法"的術(shù)語。 因此總之,go并不完全像面向?qū)ο蟮恼Z言。 很酷吧!
7.編譯速度-這是go贏得了很多人的關(guān)注的地方,因?yàn)樗木幾g和執(zhí)行速度比許多著名的編程語言(例如Python,Java等)要好得多。無需符號(hào)表即可輕松解析Golang。 Golang及其編譯器的設(shè)計(jì)始終牢記編譯和執(zhí)行的速度。
8.系統(tǒng)編程和云計(jì)算變得容易—這是一項(xiàng)免費(fèi)功能,因?yàn)槟侥壳盀橹挂呀?jīng)閱讀了七個(gè)功能。 因此,Go確實(shí)對系統(tǒng)級編程很有好處,因?yàn)樗c系統(tǒng)編程語言(如C)表現(xiàn)出許多相似之處,并且它旨在牢記這一點(diǎn)。
就這些了! 希望你和我喜歡寫的一樣喜歡它。 如有任何疑問,您可以發(fā)送郵件至" thisisdasc@gmail.com"
(本文翻譯自Andrei Dascalu的文章《Seven Golang Features you must know about》,參考:https://medium.com/@thisisdasc/seven-golang-features-you-must-know-about-944485d413fe)