程式語言Go官方調查社群內,對近期語言改動的意見,發現目前Go開發者的主要挑戰是錯誤處理與編寫最佳實踐程式碼,另外,官方也注意到模組難以維護的問題。

過去Go最被開發者詬病,甚至有高達8成受訪者不滿意的缺點—缺乏泛型(Generics),在Go 1.18正式推出泛型後,抱怨的聲音已經逐漸消失,儘管社群內對官方所提供的泛型有各種意見,但是泛型現在已經不是開發者在使用Go上最主要的挑戰。

在最新的開發者大調查中,顯示當前社群認為Go開發最大的困難在於錯誤處理(Error Handling),不少開發者回饋Go的錯誤處理程式碼過於冗長,官方提到,這樣的回應單就字面上來看,代表著開發者對於編寫重複的錯誤處理程式碼感到無聊或是過於繁瑣,探究其背後的意義,也可能表示錯誤處理會影響開發者的除錯能力。官方引用開發者的意見,提到現階段的錯誤處理,可能會造成混亂,如果處理不恰當,反而會掩蓋真正的問題。

另一個Go開發者的挑戰是寫出最佳實踐程式碼。Go是一個易學難精的程式語言,在之前的調查中,有超過70%的受訪者認為,學習使用Go第一年就能很有效率的開發,但是學習Go的最佳實踐,卻也是Go開發者的主要挑戰之一。

受訪者認為,Go沒有良好的最佳實踐文件,缺乏程式碼結構、推薦工具以及函式庫使用等相關紀錄,這使得初學者和團隊很難保持程式碼的一致性。對於想學習寫出符合Go慣用語法程式碼的開發者,增加了不少難度,尤其是對習慣其他程式語言開發範式的人來說更是如此。

Go 1.11的時候加入了模組的概念(Module),模組雖然為開發者帶來許多程式開發的便利性,但是維護模組的工作本身,對模組開發者卻不怎麼友善。Go官方2023年計畫對模組維護者進行研究改進套件生態,因此在這次的大調查中,也進一步了解模組維護者目前面臨的挑戰。

而調查結果顯示,模組維護者認為目前最大的挑戰,是維持相依性更新以及版本控制方面的困難,像是避免、辨識和掌握引入重大更改的時機,官方承諾,他們將基於這些意見,制定改進策略。

熱門新聞

Advertisement