iT邦幫忙

2023 iThome 鐵人賽

DAY 18
0

在書店亂晃,每每逛到電腦區,就會看到幾本奇怪的一系列的書,書的上面寫著大大的「無暇程式碼」。

剛好這一套書我都大概看完了,所以今天的主題就是來聊聊這一套書的中心思想:敏捷開發。

敏捷開發,是來自於「敏捷軟體開發宣言」,是2001一群工程師在一個叫雪鳥的地方討論出來的「教義」,希望在工作時可以嚴格遵守這些守則。

簡單來說是這四個守則:

  • 個人和互動:自我組織和動機是重要的,像共同定位和雙人程式開發,這樣作業模式中的溝通是重要的。建立一個良好的溝通和協作的開發團隊,優於一個孤立運行的專家團隊。溝通是一個基本的概念。
  • 工作軟體:工作軟體比在會議中向客戶呈現檔案更有用並更受歡迎。最好的做法是和程式碼一起評論,保持外部檔案的輕量化,而不是沉重的檔案,後者需要花費很大的精力,且很快就會過時。
  • 客戶協作:在軟體開發週期的初始階段,需求無法完全收集,所以最好直接涉及到付費客戶、最終使用者或者代理,以便在回饋的基礎上逐步闡述和調整詳細的需求。
  • 回應變化:敏捷軟體開發方法的重點是快速響應變化和持續發展。

他們設計跟研究了很多種開發時的方法,這裡的方法不是指程式碼怎麼寫、問題怎麼解決,而是真的從團隊開發去解決問題。

比如說有一個很有趣的開發方法叫做「雙人開發」,兩個人一起用一台程式碼,一個人作為駕駛者負責撰寫程式碼,另一個人則是導航,負責注意是否有bug或者邏輯錯誤。

我自己也實際使用過這個方式,感覺是真的有比一人一台電腦分開寫不同地方還有效率,因為可以及時的討論東西,bug也可以馬上抓出來。

再舉個例子,敏捷開發會期望是「TDD測試驅動開發」,也就是今天我如果要寫一個功能,我應該先寫好他的測試,這樣當我在寫測試的過程中也可以先想好實際的實作跟調用應該怎麼設計比較好,等實作完成後,也可以直接使用前面寫好的來使用。

敏捷開發某個程度來說其實還蠻像宗教的,因為裡面的內容不一定是「照著做就會比較好」,有時候也會變得有點偏執(比如如果為了讓函式一定要小於30行,可能反而製作了更多的函式造成程式碼混亂),不過裡面還是有很多內容是值得我們參考以及借鑑的。

最後以我粗淺的印象,來快速的介紹一下這四本書

如果有興趣的話,歡迎去買來看看喔!

本期meme

https://ithelp.ithome.com.tw/upload/images/20231002/20133574dnQaJos31e.png


上一篇
Day17 線段樹
下一篇
Day19 OOP VS FP
系列文
寫程式的那些宗教戰爭30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言