1. 認為「簡單原則」,就是不加認真思考,製作最簡單易於實現的系統。
殊不知真正的簡單是深思熟慮之後得到的結果。要多視角考慮,並且,必要時還需要跳出來思考,避免鑽牛角尖,這樣,才可能拿出真正簡單有效的方案。
2. 對於難以實現的需求,而不是認真客觀地認識和挖掘他們,然後根據可用的技術和資源,找出合理的解決方案,而是否認這些需求的存在。
這樣往往實現的功能不能滿足真正的需求,導致在系統的各個方面都要處理特殊問題(special case),這樣,乙個系統充滿處理特殊邏輯的**,系統開始變得不易維護和擴充套件。
3. 每次使用演算法,就自認為需要處理的資料量肯定巨大,效能要求極高。
前不久,同事為了設計乙個需求,需要去除陣列裡為空的資料和重複的資料,為了得到極好的效能,進行了大量的研究。然而這個功能並不常用,而且資料量不大,陣列的元素經常是少於3個的,最多也沒有多少,結果花費了大量時間,做出來的東西對於處理這種極少量的資料反而效能並不理想。
4. 往往糾纏於那些不經常使用的功能,而經常使用的功能。
出現這種問題的原因是:因為經常使用的功能相對於那些不經常使用的功能稍微簡單一點,這樣,為了那些不經常使用的功能改變了系統、設計結構,不經常使用的功能易於實現,而經常使用的那些功能卻難以實現,影響了正常功能的使用。
5. 認為使用了物件導向的語言,就設計出了物件導向的系統。
其實不然,大多數系統仍是過程式思維設計出的結構,未能使用到物件導向帶來的易擴充套件,易維護,易重用等好處。
6. 認為使用了設計模式就是好的設計,拼命地把各種學到的模式生搬硬套到系統。
剛開始還從需求入手,但是逐漸地,為了使用設計模式,使要解決的問題偏離和真正問題,臆想出不適合的或者根本不存在的需求。
7. 我們需要的是有智慧型的程式設計師,而不只是聰明的程式設計師。
聰明的程式設計師會把某一方面做到了極致,而有智慧型的程式設計師還需要從各個方面做權衡,最終得出合適的解決方案,不僅think,還需要think different(不是think differently):
i. 從系統的的各個方面,不同視角看待問題。
ii. 從目前的各種資源考慮,包括人力,物力資源。
iii. 從發展趨勢考慮,設計可以擴充套件,容易改變的系統。
iv. 跳出以前思考問題的固定思維模式。當乙個介面的實現裡充滿了對於各種各樣的special case處理,而不能跳出這些方面,對這些special cases進行更為泛化的分析,給出更為泛化的設計。
一些不良的思維習慣!!!
一些不良的管理思維習慣!管理者養成良好的思維方式非常重要,否則,不僅管理事務活動不能有效完成,甚至身心都會受到不良的影響。管理者不良的思維習慣有很多表現,以下是其中的一部分 思索代替行動 有乙個主管,兩個月來一直被一件事情困擾而十分不快。事情很簡單,原來是下屬跟他匯報了工作,他總是覺得其中有的資料不...
一些不良的思維習慣!!
一些不良的管理思維習慣!管理者養成良好的思維方式非常重要,否則,不僅管理事務活動不能有效完成,甚至身心都會受到不良的影響。管理者不良的思維習慣有很多表現,以下是其中的一部分 思索代替行動 有乙個主管,兩個月來一直被一件事情困擾而十分不快。事情很簡單,原來是下屬跟他匯報了工作,他總是覺得其中有的資料不...
一些不良的思維習慣!!!
一些不良的管理思維習慣!管理者養成良好的思維方式非常重要,否則,不僅管理事務活動不能有效完成,甚至身心都會受到不良的影響。管理者不良的思維習慣有很多表現,以下是其中的一部分 思索代替行動 有乙個主管,兩個月來一直被一件事情困擾而十分不快。事情很簡單,原來是下屬跟他匯報了工作,他總是覺得其中有的資料不...