程式設計師寫程式出現bug再所難免,但是常常製造低階錯誤,影響深遠的bug就不對了。工作中有這樣的現象,部分程式設計師比其它人更容易製造bug,而且具有bug低階反覆,頻率高,bug似是而非,是名副其實的「bug大王」,這對團隊來說是個**煩。所以,程式設計師都應該避免成為這樣的麻煩,那麼應該怎麼樣才能避免成為「bug大王」呢?
筆者根據平時工作的一些觀察、經歷和感悟,認為應注意以下幾點:
思考要全面,不要把這頭按下去了,那頭又冒出來。比如增加乙個特性,就要考慮這個特性影響的
功能及模組;修改一段**,要考慮是不是會影響其它**。
二、心態要保持平和
不要把生活中的情緒帶到工作上。寫程式如果不平心靜氣很容易犯錯誤,比如有人會因為買房子把程式寫得一塌糊。當然有乙個和睦的家庭關係、人際關係有助於有調整出平和的心態。一位台灣的朋友曾經說過,他們認為夫妻對於雇主來說是乙個整體,他們很難想象乙個天天吵架的人能夠好好工作。
三、避免不必要的爭論
程式設計師與專案經理、測試員、架構設計者在工作上會有很多機會需要溝通。但是如果不先思考清楚就發起爭論,這對於溝通和情緒都不會幫助。爭論會讓你對實現功能沒有興趣,在寫程式時就容易不專心。所以盡量在仔盡可能理解對方的要求後再對不理解的部分提出討論,不要急於爭論。
四、不要上qq
寫程式時不要上qq。qq對於很多程式設計師來說,真的效率殺手、bug催化劑。qq上一會兒這個發個資訊,一會那個傳個東西,都將讓你的思維碎片化,會導致思考表面化,進而犯下一些低階錯誤。當然不只是上qq,包括其它相關的容易分心的im軟體。如果實在要上,可以把一天的時間分成2:6:2,其中60%的時間要關掉qq。
五、一定要做基本確認
基本確認包括語法正確性確認、編譯正確性確認和功能正確性確認。
語法是最基本的,但是很多人為了快或者太過於自信,將一些語法都通不過的東西就直接簽入,這是非常不好的。
編譯正確性,對於web開發來說,部分程式設計師經常會忘記完整編譯再簽入,也橫容易導致問題。
功能正確性確認,這裡說的確認還不能算是測試,就是簡單的檢視。工作中確實有很多bug是因為連最基本的確認都沒有做而導致的。比如調整分頁錯誤,程式改了後,看都不看就認為修改好了,這肯定容易出錯。
六、寫程式要符合常理
經常有很多違背常識的、「愚蠢」的bug讓測試人員哭笑不得。比如原本錄入大量文字資訊的多行文字框卻只有乙個馬賽克那麼大;在進行超過限制字數的檢查並提示後將整個文字框直接清除(這種錯誤會找罵的)了。當然,這可能涉及軟體開發管理的問題。如果需求定義非常完美,那麼這些提示將會寫好,程式設計師照做就行了。但是那種把偽**寫好,變數名稱都命好的任務包目前還很少有組織能做到,及時能做到,程式設計師也不能忘記對常識問題的把握。程式設計師在程式中涉及到的常理問題上要有自己的思考和判斷,如果拿不準的應該主動找設計人員進行溝通確認。
七、從不做「bug大王」到有效避免bug
首先是要不厭其煩的做好單元測試[1]。就web開發來說,同一模組的資料庫物件、dal、bll到web可以構成乙個單元。這些單元可以編寫專門的單元測試**用nunit來進行測試。nunit測試dll庫專案還比較方便,但是測試web就不那麼方便了,簡便的方法寫一些測試的頁來進行單元測試;
然後是注意利用整合開發環境提供各種功能和資訊,比如警告等[2]。
接下來是**審查,如果有條件,重要的**最好由同事間互相審查一下。
最後是盡量使用系統中既有的解決方案解決問題,包括已經建立好的公共庫,類似的ui模型等等。盡量不要使用不熟悉的外部庫來實現一些原本用常規方法就能實現的功能。
參考1:程式設計師的單元測試,有效地減少bug
參考2:八種方式減少程式開發中的bug
參考3:程式設計師如何減少bug
Git嘗試,以及配置
git的配置 git config system list系統自動配置的 git config global list使用者配置的 所有的配置檔案都儲存在本地 乙個 git 安裝目錄 乙個在user,目錄下 git bash輸入。配置使用者檔案 git config global user.name...
Demo打包嘗試以及初略步驟
對於剛開始嘗試做遊戲的同學來說,自己的demo打包可能會遇到很多奇葩的問題,我在剛開始打包的時候也遇到了很多坑,這裡把打包過程全部敘述一遍,希望對大家能有一些幫助。cocos2d x版本為3.2 工具安裝 環境配置 在環境變數中配置上述三項的路徑,格式如下。注意一定要嚴格按照提示的變數名命名,提示可...
時常會在某些銀行遇到惱人的事,以下幾招可以試試
一 換零錢 哥哥結婚叫我去換50張20的rmb發小紅包用。拿了1k去銀行換,nb態度極其不好的說 沒有,不能換給你 態度實在惡劣啊。我十分兇惡的反問 你再說一次 傢伙很牛的說 就是沒有 我說 你等著 nb說 你威脅我啊 我拿了身份證說 開戶,存1k 結束了,我說 再提20 連著提了二次20。nb說 ...