難得有個主題可以讓小弟嘴一下
我目前參與的產品開發正在加入一項新功能
讓使用者在後台系統利用類似SQL的方法查詢所有歷程紀錄
(如果你用過JIRA一定知道我在說什麼)
這個功能要有友善的提示
當使用者漏打左括弧或右括弧或者是字串上的引號少打一個
要有對應的錯誤提示請使用者修正
如果搜尋條件中有矛盾的情況(例如既等於又不等於同一個常數值)
要有對應的告警提示使用者
如果你受過直/編譯器架構的訓練
如果你對 abstract syntax tree 和 optimization 還有一點印象
看到上面這些需求時你大腦中一定就會浮出一個具體的輪廓
並且開始在思考要怎麼實作
本科系的價值就在這裡
『寫程式』本身真的只是基本中的基本
是本科系和非本科系的最大共同點
解決不同深度的問題才是本科系與非本科系的差異
當然我不是說我們的產品有這項功能就一定賣得比別人好
但優勢是累積出來的
當你有越來越多是別家產品沒有的優勢時
就有越大的機會獲得客戶的青睞
商業邏輯誰都會講
TDD、敏捷開發誰都説
遇到稍微深一點的問題
誰是那頭遇到颱風跟著飛的豬就立刻現形