兩年前,我用 NodeJS 為自己建立了一個小型伺服器 - 一個基於 HTTP 的 SQLite 代理程式。當您需要透過網路與消費者共享資料集時,它非常有用。經過多次重構和新的需求,現在我終於決定用 Golang 重寫代理,以獲得更好的分佈和記憶體效率。進展非常順利,我幾乎用Go 重寫了所有內容,甚至包括我最初不打算重寫的部分,現在我相信,如果我將Go 與NodeJS 一起使用,我之前所做的50-70% 可能會更好。因此,我已經向自己證明,Golang 對於任何後端密集型 Web 開發來說都是非常高效的,並且在開發速度方面幾乎與 NodeJS 相當。與 C++ 相比,即使使用 Go 創建 NAPI 插件也非常容易,因為交叉編譯。
現在我們來談談 Golang 的一個缺點,這與程式設計無關。
去年我主要以自由開發人員身分工作。參加演出,有時還參加短期合約工作。我偶爾使用 Golang,主要是當我的任務與區塊鏈相關時,我甚至用 Go 編寫了幾個微服務。
現在我調查了就業市場,我有點失望,加密/金融領域是Golang 在就業市場上的主要領域:(。大多數公司需要3-4 年的Go 經驗(即使是零工),這很難如果您不在FANG 或加密貨幣金融領域工作
。
當我查看我的工作提要時,就業市場上的 Golang 看起來就像區塊鏈的 RoR,有點「用領域語言來找」。
如果小公司和新創公司也青睞 Go,他們可以做得更好,就業市場也會有所不同。我相信Go可以為產品增加更多的價值。是的 - 一個寵物項目給了我這個視角。
談寵物項目。
我介紹 DAL:https://github.com/nesterow/dal
它處於早期 alpha 階段,因為目前只有我在使用它。在當前階段,該專案對於研究很有用,特別是對於那些想要為 NodeJS 編寫本機插件或想要將其庫移植到 Golang 的人,或者如果有人有時間來烤我:)
客戶端部分是用 TypeScript 編寫的,伺服器可以用作獨立的二進位檔案(最佳效能)或 Nodejs 外掛程式。
平安✌️
以上是我用 Golang 重寫了我的 JS 項目,想分享我的經驗。的詳細內容。更多資訊請關注PHP中文網其他相關文章!