<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          曾經(jīng)的 PHP 程序員,現(xiàn)在的 Gopher,我經(jīng)歷了哪些?

          共 2224字,需瀏覽 5分鐘

           ·

          2021-04-10 11:22

          想和本文作者——前螞蟻金服技術(shù)專家/Go語言 Contributor 曹大直接交流嗎?

          請查看文末福利哦

          全文共 1771 字,閱讀大約需要 6 分鐘

          作者 | 曹春暉(Xargin)

          編輯 | 廠長

          作為一個 Gopher 是幸運的,我們永遠(yuǎn)都站在了時代的最前沿。


          01


          我也曾經(jīng)是一個 PHP 程序員,那時候幾個要好的同事在一家創(chuàng)業(yè)公司里努力奮進(jìn),追逐著改變中國的農(nóng)業(yè) O2O 的夢,但這個夢很快就被資本打醒了。


          失業(yè)的我要去找尋新的機會,作為一個技術(shù)人員,擺在面前的選擇看起來有很多,但其實并不多。


          幾乎所有的公司都希望我的語言經(jīng)驗可以直接遷移,不接受我去面試 PHP 以外的崗位。所以我去了一個可以寫 PHP 的地方,在公司內(nèi)伺機而動,最終如愿以償?shù)剞D(zhuǎn)為了一個 Gopher。


          02


          我們用 Go 重構(gòu)了一些公司內(nèi)的老代碼,讓這些系統(tǒng)相比 PHP 更好維護,性能更高。不得不說,更換語言之后,我的幸福感急劇上升。從此我不但可以繼續(xù)寫那些我熟悉的業(yè)務(wù)代碼,同時造起輪子來也得心應(yīng)手。


          比如,我可以用 Go yacc 去寫一個自己的 SQL parser;可以用這個 SQL parser 做一個神奇的 sql 審校工具;也可以去業(yè)界先進(jìn)的 etcd 項目里學(xué)習(xí) raft 算法;還可以在 TiDB 里看看未來的數(shù)據(jù)庫到底長什么樣子;更可以去了解各種高并發(fā)場景下其它工程師的總結(jié)與思考,通過與他們思想碰撞提升自己。



          社區(qū)讓我接觸到了國內(nèi)最優(yōu)秀的一批工程師,他們層出不窮的想法總是能夠帶給我靈感。同時隨著對 Go 的深入學(xué)習(xí),我也接觸到了同樣優(yōu)秀的國外工程師。


          可能是在 golang-nuts 上請教問題,也可能是在 reddit 上回答一些 Gopher 新手的問題,也可能是在 go 的官方 repo 向官方提 proposal,擺事實講道理希望官方對語言的某些問題進(jìn)行改進(jìn)。


          我終于開始覺得我日常在干的是和計算機科學(xué)沾邊兒的工作,而不是工廠流水線上的螺絲釘工人。


          Go 語言的設(shè)計本身就像是一個非常微型的操作系統(tǒng),所以畢業(yè)了多年之后,我也重新回爐閱讀了上學(xué)期間讀得云里霧里的操作系統(tǒng)課本,買來了所有流行的講語言垃圾回收的書(還沒讀完哈哈)。也讀懂了很多曾經(jīng)帶給人心理陰影的大部頭。


          語言是技術(shù)人員之間的一種連接,Go 讓我與業(yè)務(wù)項目以外的工程師們產(chǎn)生了大量的交流與聯(lián)系。


          有時是做中間件的,有時是做網(wǎng)關(guān)的,有時是做 k8s 和 etcd 的。這種連接使我的視野不囿于狹小的一隅,我開始逐漸理解技術(shù)在不同的領(lǐng)域怎么樣產(chǎn)生它的價值,各個領(lǐng)域的人怎么樣去運用這樣的工具,他們的理想、抱負(fù)和抱怨。


          這讓我對語言的優(yōu)點和缺陷也有了更深的理解,開始學(xué)會以更底層,又更全面的角度去審視一門技術(shù)。


          我也開始總結(jié)自己的使用經(jīng)驗與方法論。說實話,只要有興趣,也可以用幾個月的時間完全調(diào)整自己的工作方向。


          03


          不知不覺間,這門語言已經(jīng)火遍了大江南北。


          即使你不知道每年一度的 GopherCon,你也應(yīng)該知道聲勢浩大的 Gopher China,社區(qū)活動帶動了工程師的激情。我從來沒見過這樣熱鬧的社區(qū)和這樣熱情的分享。除去個別公司的廣告不談,大部分工程師的分享都是純粹而真摯的。每一次的分享總會有那么幾個讓人眼前一亮,原來項目還可以這樣做!


          自 2015 年以來,除了綁在 Java 戰(zhàn)車上的公司,大部分國內(nèi)的大公司的新業(yè)務(wù)幾乎一邊倒地選擇了使用 Go 來編寫


          例如:滴滴,百度,字節(jié),高德,騰訊等等耳熟能詳?shù)墓径奸_始將資源傾斜至 Go 來完成他們的新業(yè)務(wù)項目。曾經(jīng)在知乎上被當(dāng)成反面案例的騰訊,現(xiàn)在在某 bu 也有了統(tǒng)一的框架,統(tǒng)一的規(guī)范和統(tǒng)一的 CI/CD,時光荏苒,士別三日??梢哉J(rèn)為 Go 已經(jīng)成為了各家大公司之間的通行證。


          下面的圖來自騰訊研發(fā)大數(shù)據(jù)報告:


          盡管早期選擇 Go 需要面對各種“是不是基于政治”考量的質(zhì)疑,在 2021 年的當(dāng)下,如果你選擇使用 Go 來做項目,已經(jīng)沒有什么人可以質(zhì)疑你了。


          這門語法簡單,從工程出發(fā),設(shè)計較(防噴寶典)完善的語言的魅力在于我們可以短時間學(xué)會他,在壓測中優(yōu)化他,在長期使用中精通它。


          傳統(tǒng)的語言要么要面對復(fù)雜的內(nèi)存安全問題,要么要面對繁復(fù)的歷史包袱。其它看起來非常完善的語言,在云原生時代,則碰到了各種容器部署水土不服的問題。


          即使你不是一個 Gopher,相信你也會對云原生感興趣。在這個時代,幾乎大部分的云原生基礎(chǔ)設(shè)施都與 Go 有關(guān)系,隨著時代洪流向前的我們,不去學(xué)習(xí)云原生的重要組織基因 -- Go 也是說不過去的。


          當(dāng)今 service mesh 和 dapr 對傳統(tǒng)架構(gòu)進(jìn)行了顛覆,而這些工作中都有著 Go 的影子,可以說作為一個 Gopher 是幸運的,我們永遠(yuǎn)都站在了時代的最前沿。



          路走對了,就不怕遠(yuǎn)。如果你目前還是一個只會寫業(yè)務(wù)的程序員,希望你也能像我一樣勇敢地打破藩籬,成為更好的自己。



          END



          想縱向提升你的Go語言實操能力嗎

          想要和世界知名Go技術(shù)專家直接交流嗎

          慕課網(wǎng)特邀2位重重重量級嘉賓,進(jìn)行技術(shù)分享!

          大咖群現(xiàn)在免費進(jìn)入!

          群內(nèi)更有獨家學(xué)習(xí)資料免費贈送哦~

          (左右滑動查看)

          01

          02

          03


          瀏覽 29
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  男女黄A片 | 亚洲无码视频网站 | 99热久| 手机在线看A片 | 亚洲电影,操 |