Homepage
Open in app
Sign inGet started

閒談軟體架構

閒談軟體架構:MVC

閒談軟體架構:MVC

很久前就曾想寫這個主題,但若寫的不好,恐怕又引起一番論戰,畢竟眾多 framework 實作 MVC 的方式都不一樣,從某 framework 入手認識 MVC 的開發者對 MVC 的認知可能就和從另一個 framework 了解 MVC 的開發者不同。
Go to the profile of Du Spirit
Du Spirit
Apr 6, 2019
閒談軟體架構:Repository

閒談軟體架構:Repository

我想有用過 Spring Data 的開發者對 Repository 應該都蠻熟悉,只要宣告個 interface,在 JPA annotation 完備的情況下,Spring Data JPA 會自動 inject 實作。我自己則是在 Martin Fowler…
Go to the profile of Du Spirit
Du Spirit
Mar 3, 2019
閒談軟體架構:設計抉擇的因素

閒談軟體架構:設計抉擇的因素

會有這一篇文章,是在 DZone 看到《Yet Another Evil Suffix for Object Names: Client》討論 AWS S3 Client 的設計不夠 OO,這讓我想起之前曾替公司設計過 Java SDK…
Go to the profile of Du Spirit
Du Spirit
Sep 30, 2017
閒談軟體架構:來煮碗拉麵吧

閒談軟體架構:來煮碗拉麵吧

很久沒上來,都快長蜘蛛絲了。為什麼是煮拉麵呢?主題是來自前同事在問我為什麼有人的程式好像常常會歪掉,或是變得難維護,後續的討論中,他用的例子就是拉麵,所以... 今天就用程式來煮拉麵吧!
Go to the profile of Du Spirit
Du Spirit
May 15, 2022
閒談軟體架構:UUID 之三部曲

閒談軟體架構:UUID 之三部曲

ㄟ~好啦,我知道離上一篇《閒談軟體架構:再聊 UUID》,沒多久再聊一次 UUID 有點怪,但這個使用情境其實挺有意思的,您是否有過以下情境:
Go to the profile of Du Spirit
Du Spirit
Sep 19, 2021
閒談軟體架構:再聊 UUID

閒談軟體架構:再聊 UUID

這文章是因為過去使用大量的 UUID,但 UUID 有個致命的缺點是,它實在太長了,128 bits 用 Hex 表示法,至少要 32 個字元,如果再加上分隔符號,就要 36 個字元,把這放在面向使用者者的頁面上,應該不會有人會記得住吧!但 UUID…
Go to the profile of Du Spirit
Du Spirit
Sep 10, 2021
閒談軟體架構:聊聊實聯制

閒談軟體架構:聊聊實聯制

已經有好一陣子沒有更新這裡的文章了,主要是前陣子下班之餘大多時間都在忙 side project,也就沒什麼時間更新文章。之前本來想趁著公司實聯制新功能上線,寫一下整個開發過程,順便當個徵才廣告,但寫一寫覺得沒甚麼好寫的,於是就棄坑了。
Go to the profile of Du Spirit
Du Spirit
Jun 20, 2021
閒談軟體架構:Singleton

閒談軟體架構:Singleton

這文章來自網友在《閒談軟體架構:Single Responsibility》的留言 (有人幫忙想題目也挺不錯的),問到:Singleton 對於好的架構來說是否能避免就避免呢?我簡單地回了一下我的想法,但 Singleton 其實很有趣,所以就寫篇文章來聊聊吧!
Go to the profile of Du Spirit
Du Spirit
Jan 2, 2021
閒談軟體架構:Deploy on Friday

閒談軟體架構:Deploy on Friday

之前看到同溫層有些人在討論 Deploy on Friday 這件事,本來沒想要跟風,偏偏昨晚要下班時,公司設定的 alert 響起,而且還是非常重大的那一種,只好把背包放下,跟其他同事協助將被灌爆的客服。老實說,這不是我們上版引起的,而是我們使用的 Firebase…
Go to the profile of Du Spirit
Du Spirit
Oct 23, 2020
閒談軟體架構:Switch 壞味道

閒談軟體架構:Switch 壞味道

這篇的標題來自《重構  —  改善既有程式的設計》第一版 (話說第二版出了,卻一直沒買來翻翻) 的第三章:程式碼的壞味道,這章條列了 22 個程式碼常見的壞味道,像是很多人朗朗上口的 duplicated code、long method、large class、long…
Go to the profile of Du Spirit
Du Spirit
Jul 15, 2020
閒聊軟體架構:Single Responsibility

閒聊軟體架構:Single Responsibility

話說在前頭,這篇文章所提出的質疑不一定適用所有的情境,請依據讀者自己的情境酌量採用。
Go to the profile of Du Spirit
Du Spirit
Apr 4, 2020
閒談軟體架構:架構師難尋?

閒談軟體架構:架構師難尋?

會有這篇是因前陣子,和 91App 的首席架構師 Andrew 在母校北科旁的伯朗咖啡聊聊天。會找到我是因為 HR 看過我《閒談軟體架構》某篇文章後,然後問 Andrew 這位作者如何?碰巧 Andrew 也看過 Async everything?,加上 Terry…
Go to the profile of Du Spirit
Du Spirit
Mar 4, 2020
閒談軟體架構:聊聊 State 與語言

閒談軟體架構:聊聊 State 與語言

會想寫這篇是因為先前看到一篇網路文章討論用物件管理狀態的問題,看完後我只能說,不論用 OOP 還是 FP 語言,終究得處理狀態,程式也許沒有狀態,但系統有狀態。因為,如果系統沒有狀態,那會非常難用,沒有購物車記住選購的東西,那網頁購物系統會多難用應該不難想像吧!
Go to the profile of Du Spirit
Du Spirit
Oct 6, 2019
閒談軟體架構:Async everything?

閒談軟體架構:Async everything?

開始之前,先來個小測驗
Go to the profile of Du Spirit
Du Spirit
Sep 1, 2019
閒談軟體架構:Query Object

閒談軟體架構:Query Object

之前在開發旅遊 app 的內容管理平台時,初期 Repository 用得好好的,但到後期,為了輸出報表或是提用特定列表時,就需要一直在 repository 的介面上加上特定的 query method,像是這樣 (這不是當時的程式,只是示意):
Go to the profile of Du Spirit
Du Spirit
Mar 2, 2019
閒談軟體架構:Immutable Interface

閒談軟體架構:Immutable Interface

這是三年前的舊文, 不過,回頭再看一遍,還是挺有意思的。順便更新一下,Java 9 針對 library 開發有更好的存取限制 (模組),可將某些類別和函式限定成同模組就可以存取,這很適合將實際實作的類別隱藏起來,但外部是看不到的。Swift 也有…
Go to the profile of Du Spirit
Du Spirit
Sep 19, 2017

閒談軟體架構:Model Model Model

可能是過去求學時,學的是《Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development》和《Object-Oriented…
Go to the profile of Du Spirit
Du Spirit
Aug 13, 2017
閒談軟體架構:語意的抽象化

閒談軟體架構:語意的抽象化

唸研究所開始當助教,偶而會有學弟妹問:怎樣寫好程式?老實說,這是個大哉問,連我學開發軟體這麼久,我也只能回答他們:多培養自己釐清問題、拆解問題、解決問題與抽象化的能力。但他們通常只會一臉狐疑看著我,感覺我說的話好抽象。事實上,這也不是我第一個這樣說的,有句軟體工程諺語是這樣說的:…
Go to the profile of Du Spirit
Du Spirit
May 29, 2017

閒談軟體架構:例外處理

本文源起於前陣子,前同事在 FB Messenger 問起:為什麼 BeanGoException (是的,沒錯,就是最近發表的 BeanGo!,過去三年的青春都在開發這個產品) 是繼承 RuntimeException 而不是…
Go to the profile of Du Spirit
Du Spirit
May 28, 2017

閒談軟體架構:內部函式庫

今年 (2016) 因為轉職,特休歸零了,一年一度跟家人的國外旅遊也就暫緩,只有安排短短的宜蘭兩天一夜的小旅行,宜蘭雖然去過不少次,但這次幾個點都蠻不錯的,算是有個小小的充電,但…總覺得少了些什麼?
Go to the profile of Du Spirit
Du Spirit
May 28, 2017
閒談軟體架構:Client Server

閒談軟體架構:Client Server

本來本周是想寫跟最近工作有關的 library vs. framework,不過前幾日中午休息時間時,在 FB 上看到一個開發者在某個社團分享他開發的 library,並想了解大家對於用這來設計 Restful API 的想法,我並沒有直接留言…
Go to the profile of Du Spirit
Du Spirit
May 28, 2017

閒談軟體架構:休息時間

看到標題是否覺得很奇怪?休息時間,如果改成 REST time 有沒有一種突然豁然開朗的感覺呢?每次看到 REST 就讓我想起以前念研究所和老師一起想論文題目時,曾提過國外常會玩這種文字遊戲,像是將 Representational State Transfer…
Go to the profile of Du Spirit
Du Spirit
May 28, 2017
閒談軟體架構:發生關係

閒談軟體架構:發生關係

上一篇《閒談軟體架構:友善的距離》意外在 Facebook 上引起不少人的回應 (是的,我不但偷偷加了副標,還擴充了些內容),不過首先要澄清一下,接下來一系列文章…
Go to the profile of Du Spirit
Du Spirit
May 28, 2017
About 閒談軟體架構Latest StoriesArchiveAbout MediumTermsPrivacy