良好的程式設計習慣是每個程式設計師都應該具備的工作素質,在我的軟體生涯中屢屢發現一些程式設計師的身上總有這樣或者那樣的壞毛病,這些毛病在一些從業時間不是很長的程式設計師的身上表現的特別突出。
1. 搭棚子
搭棚子顧名思義就是拿到乙個任務的時候,既不做更詳細的需求分析,也不作詳細設計,一開始就開啟程式設計工具,噼里啪啦的定義了一堆的模組,我不說是定義類,是因為這樣**裡根本就找不到物件,然後就在這些模組的基礎上進行工作,結果整個程式看起來就象胡亂搭起來的棚子,雖然有個程式的樣子,而且似乎也實現了所要的功能,但是這樣的程式往往是邏輯混亂,不僅理解困難,維護起來也是十分的困難。既然是個棚子,在風雨飄搖之日自然難以久長。
出現搭棚子的現象暴露出幾個方面的問題:
管理的混亂。管理者有職責去檢查這樣的**,並及早給予糾正和提供指導。
不重視設計。如果乙個軟體組織不重視設計,出現這樣的現象是自然而然的事情。
實用主義。在專案實施的過程中,有些人的口號就是實現功能就好,滿足使用者的需求就好,因而在程式設計的過程中總是匆匆上馬,表面上是加快了進度,實際為專案的後期維護埋下了炸藥,嚴重的會嚴重影響專案的進度和質量。
2. 釘釘子
釘釘子的表現為**維護或者程式實現的時候,硬生生的往程式中新增不必要或者與物件和邏輯相關的**。這樣的**往往表現在多層體系的系統中,有些人為了偷懶,不願意從下層將**維護好,而是從上層開始修改,如使用者需要做乙個報表程式,那麼有的程式設計師的做法就是將sql語句直接在介面層進行呼叫,破壞了系統的層次和封裝。還有的做法就是在不相干的物件中新增對其他物件操作
的**。
3. 甩錘子
有的人剛學了乙個新的技術,或者乙個得到乙個好的點子,不管這個點子是否使用於當前的程式,就到處應用。頗有「手上拿了個錘子就看到什麼都是釘子」的架勢。應用新的技術或者點子是好的,但是也要看時機和場合。
4. 糊窗子
窗子破了的時候,如果沒有地方配玻璃或者懶得去搞一塊玻璃,一些人的做法就是弄一張報紙或者美女的帖子破了地方,以期遮風擋雨。在我們的程式中出現bug的時候就如同窗戶破了乙個洞。有的人不是從源頭上進行解決,或者不是尋找合理的解決方案,而是就地將乙個漏洞堵上。其後果可能真的堵上了,但是也可能是因為其改動帶來了更多的問題,也可能是堵住了乙個地方,回頭發現又有其他的漏洞,然後不停的往程式身上帖報紙。這樣的程式看起來將不知道有多難看。
5. 拉肚子
拉肚子,我想每個人都拉過,相信每個人都會承認其滋味實際上是不怎麼好受的,但實際上在程式設計活動中有的人偏偏喜歡這樣。我曾發現有的人乙個函式居然超過3000行,以一螢幕25行來計算,要翻100多屏才能將乙個函式的**看完,my god!我想這樣的**拿給誰誰都要捏著鼻子,更不要說去維護了。還有乙個表現是一行往往寫的很長,自己將滾動條滾過來滾過去不知道是否曾經感到過累的慌。
6. 遛狗子
狗子是動物,隨地大小便是控制不住了,乙個是它們沒有文明的意識,另外乙個是人無法控制它們的意識。然而我們有的程式設計師在維護舊**的過程,就彷彿如果遛狗。每修改乙個程式就留下一些隱患,結果弄的乙個原本好好的**到處都是隱患。
以上是我的一些總結,一是提醒,而是警醒。要杜絕這樣的現象,除了要加強管理,程式設計師的自我修煉也顯得尤其重要。其實很多人並不是故意要這樣,而是受自身的限制。作為管理者要不斷的教育和敦促程式設計師,程式設計師也要注意不斷的學習,培養自己的程式設計意識和素質,同樣要培養自己對產品負責,對專案負責,對同事負責,對自己的工作負責的態度和榮譽感。
原文:http://www.cnblogs.com/yanrongpi/archive/2007/12/15/996072.html
程式設計活動中幾個不良現象
良好的程式設計習慣是每個程式設計師都應該具備的工作素質,在我的軟體生涯中屢屢發現一些程式設計師的身上總有這樣或者那樣的壞毛病,這些毛病在一些從業時間不是很長的程式設計師的身上表現的特別突出。1.搭棚子 搭棚子顧名思義就是拿到乙個任務的時候,既不做更詳細的需求分析,也不作詳細設計,一開始就開啟程式設計...
程式設計活動中幾個不良現象
良好的程式設計習慣是每個程式設計師都應該具備的工作素質,在我的軟體生涯中屢屢發現一些程式設計師的身上總有這樣或者那樣的壞毛病 這些毛病在一些從業時間不是很長的程式設計師的身上表現的特別突出。1.搭棚子 搭棚子顧名思義就是拿到乙個任務的時候,既不做更詳細的需求分析,也不作詳細設計,一開始就開啟程式設計...
程式設計活動中幾個不良現象
程式設計活動中幾個不良現象 良好的程式設計習慣是每個程式設計師都應該具備的工作素質,在我的軟體生涯中屢屢發現一些程式設計師的身上總有這樣或者那樣的壞毛病,這些毛病在一些從業時間不是很長的程式設計師的身上表現的特別突出。1.搭棚子 搭棚子顧名思義就是拿到乙個任務的時候,既不做更詳細的需求分析,也不作詳...