1. 程式人生 > >工作中的一些思考

工作中的一些思考

1. 分解問題的能力
解決問題是的流程,是先把一個大問題分解成各個不同層級小問題,然後逐個解決這些分解出來的小問題。
分解:把復雜的事情簡單化的過程
分解需要能力和智慧和經驗,能力和智慧和經驗是經過解決無數問題的鍛煉累積以及對這些問題的思考而來,沒有捷徑。
分解問題的能力很重要,可以用來衡量一個人的能力。考驗一個人的能力,只要給他一個復雜的問題,看他解決的過程,看他怎麼分解問題就可以了。而實際解決的結果只需佔用很小的考察比重。

2. 軟體開發中,所有的開發角色(分析、設計、編碼)都應追求一個目標:簡單、有效
復雜度高會導致:高成本,不能快速交付,容易偏離目標焦點
業務邏輯復雜會導致:實施上線過程慢長,成本高,不能迅速向市場推廣,從而佔領市場份額
技術功能復雜會導致:開發測試修改週期長,學習培訓成本高。

簡單意思不是功能少,復雜意思也不是功能多
簡單的目標是:每一個功能點都很好理解,流程都很清晰,功能點之間的耦合度都很低,沒有錯綜復雜的關系,功能點的介面和合理很清晰。
這就是設計,設計和結構有關,設計無處不在,結構無處不在
設計和技術有關,設計還和藝術有關

有效的意思是程式執行效率好,解決客戶需求有效果,迅速創造經濟價值。

簡單和有效往往是互相矛盾的,優秀的設計者能夠利用它的技能智慧和經驗來達成簡單和有效直之間最好的平衡