曾經看過一位同事,因為比較熟悉網站應用程式,所以把他一個工具性質的需求也這麼奇妙地實作出來。感歎之餘,我私下認為,開發的時期只要辨別這兩種:
至於其他的變形,例如「打完收工」的什麼時候再自動跳出來打一下(排程)?要不要開機就自動打一下?打很久不耐煩了怎麼辦?「痴痴地等」有沒有休息的機會(服務)?這類的因素應該都不要在開發時列入考慮,外包處理就好。如果以上的思考很雜亂,來點有系統的:
除了相依性是程式必須負起責任(檢查、錯誤處理)外,其他都可以,也應該外包給作業系統。看看有哪些實務上的做法(主要會提 Linux / CentOS 7):
看過以上的解構,大家未來在開發時,會不會想要避免把面紗縫在程式的臉上呢?