閒談軟體設計:Model Model Model有趣的是,Model 其實沒什麼嚴格的定義,所以每個人對 Model 的解讀也不盡相同,有人覺得資料怎麼儲存屬於 Model 的一部份 (受 ORM 工具的影響),有人覺得工作流程 (workflow) 是 Model 的一部份,我個人也有自己的想法,而且隨專案的規模和特性,也不是總是一樣的。
書摘《約耳續談軟體》 上篇用 Google 找此書的封面,意外找到我還在痞客邦時的舊文章,裡面滿滿的就回憶,主要是研究所到遊戲橘子這段時間的雜記之類,這本書其實讀過很多次,最早是從學校圖書館借出來看的,後來趁出版社兩本書套裝優惠時就買回來收藏,那時又看了一次,這次為了寫書摘再看了一次,真的是很有趣,最近換出版社重新翻譯出版,
2024-01-20
5
閒談軟體設計:多種 work 類型提到後端工程師,似乎就只是開發 API,但一個複雜的系統其實不太可能只透過 API 就能完成,例如一個簡單的功能,註冊會員,其實是由好幾個不同類型的工作互相配合,您才能收到開通信,才確保資料庫不會有一堆未開通帳號等。所以今天就來聊聊一個系統有幾種不同執行方式的工作。
閒談軟體設計:發生關係不管用哪種語言開發軟體,除非是那種一個 function 寫個幾萬行的人 (來人啊,把這種人拖去砍了),不然,一般都會根據某些因素,切割成模組或是特定功能的區塊 (一個 class 或是一個 function),但要完成一個特定功能,這些模組或區塊勢必要一起合作,因此這些模組與區塊就發生了關係。
閒談軟體設計:Offline first (Client 篇)Offline first 的設計最近有越來越多的感覺,但好的 Offline first 設計要解決蠻多的問題,是否使用 offline first 設計真的需要好好思考,不然可能得不到好處,反而還引起一堆 bug,本篇先探討在 client 端可能會遇到的問題與一些可能的解法。
書摘《敏捷與 Scrum 軟體開發速成》老實說,從中文書名無法聯想回原文書是《The Elements of Scrum》,雖然書名翻譯沒有太離譜(和內容無關之類的),但總覺得貼近原意會好一點。『Scrum團隊週記』這一章,整個讀完,其實就差不多可以了解Scrum的大部分,所以,若要讀這本書,又沒有太多時間,就先看這一章吧!
Scrum Bad Smells: Overcare about estimation過去擔任 Scrum Master 時,曾觀察團隊用 planning pork 估時超過三或四輪仍無法取得共識,但點數或時數有時只差一點點 (2 or 3),或是差距很大 (3 or 8),若仔細聽他們的討論會發現,之所以會沒有共識,是因為成員都帶入一個心態:如果我做這個 task 要多久?
2023-07-27
0
Scrum Bad Smells: No more calculation如果工作的預估和實際的執行是一致的,就不會有《人月神話》中那一句話:用人月的前提必須是人力與工時可以互換的情況下。我並不是說反正執行結果都不會跟預估的一樣,所以團隊成員在 planning meeting 裡可以亂估,而是要回頭想一下,Scrum 裡 planning meeting 的本質是什麼?
2023-07-27
2
Scrum Bad Smells之前讀《Refactoring: Improving the Design of Existing Code》,書中提到了若干個smells,用來聞出程式設計不太理想的地方,那在用Agile或Scrum方法時,是否也能聞出哪裡有些問題呢?可以的,我把過去參與過的經驗整理成幾個 smells。
閒談軟體設計:設計抉擇的因素程式開發有趣的地方,同樣的目標,不同的團隊會因不同的因素做出不同的設計抉擇。而這往往也是為什麼一個資深的工程師在開發速度上不一定比較快的原因之一,一個越是資深的工程師,思考的因素會更多,不過,不是考慮得越多就結果就一定越好,有時還會變成 over design 較糟的結果。