给公司员工上的培训1——微观规范
生活随笔
收集整理的這篇文章主要介紹了
给公司员工上的培训1——微观规范
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
那天給公司的新員工進行了一次編程規范培訓,我把這些規范分為:
1)微觀上的規范。
2)宏觀上的規范。
先說下微觀上的規范。
第一,契約式編程。這是流程與流程,功能與功能之間的銜接點的規范。就像流水線兩邊的工人。如果下一流程的工人,不檢查上一流程工人生產的零件就開始使用,那么就算是上級工人的零件有問題,他也要承擔責任。如果他在使用前就檢查出問題,那么上一流程的工人就要承擔責任。所以,上一級工人在向下傳遞零件時,需要先檢查一下。同理,如果程序員A的函數,在傳的參數的時候,不做檢查,傳出了不正確的值,那么程序員A需要負責,但如果下一級程序員B不檢查就使用,出現問題,是程序員B的責任。要求:函數在傳入和傳出參數時,都要做判斷,把錯誤消滅在最小的范圍內。
第二,斷言。我們在發布程序代碼之前,都要進行調試,調試的時候,可以進行斷言。
例子(C#):System.Diagnostics.Debug.Assert ( KeyWord.Length >= 3 );
上面的例子中,如果出現KeyWord的長度小于3,就會彈出錯誤,并且問你進一步的操作。但是這段代碼的Release中是不會執行的。這就有好處了,寫再多這種代碼都不會影響Release版本。
當然,我們還要加上一句:
if?(?KeyWord.Length?<?3?)
{
????return?null;
} 這是給Release版本用的。
以上兩個是比較重要的,還有其它的規范。文檔在卡上,想起來再寫文章。
宏觀上的規范,有三層,MVC,面向對象的幾個基本原則。以后的文章會講到。
最后還有測試,包括單元測試。
有空再寫一篇面向對象分析技術。
1)微觀上的規范。
2)宏觀上的規范。
先說下微觀上的規范。
第一,契約式編程。這是流程與流程,功能與功能之間的銜接點的規范。就像流水線兩邊的工人。如果下一流程的工人,不檢查上一流程工人生產的零件就開始使用,那么就算是上級工人的零件有問題,他也要承擔責任。如果他在使用前就檢查出問題,那么上一流程的工人就要承擔責任。所以,上一級工人在向下傳遞零件時,需要先檢查一下。同理,如果程序員A的函數,在傳的參數的時候,不做檢查,傳出了不正確的值,那么程序員A需要負責,但如果下一級程序員B不檢查就使用,出現問題,是程序員B的責任。要求:函數在傳入和傳出參數時,都要做判斷,把錯誤消滅在最小的范圍內。
第二,斷言。我們在發布程序代碼之前,都要進行調試,調試的時候,可以進行斷言。
例子(C#):System.Diagnostics.Debug.Assert ( KeyWord.Length >= 3 );
上面的例子中,如果出現KeyWord的長度小于3,就會彈出錯誤,并且問你進一步的操作。但是這段代碼的Release中是不會執行的。這就有好處了,寫再多這種代碼都不會影響Release版本。
當然,我們還要加上一句:
if?(?KeyWord.Length?<?3?)
{
????return?null;
} 這是給Release版本用的。
以上兩個是比較重要的,還有其它的規范。文檔在卡上,想起來再寫文章。
宏觀上的規范,有三層,MVC,面向對象的幾個基本原則。以后的文章會講到。
最后還有測試,包括單元測試。
有空再寫一篇面向對象分析技術。
轉載于:https://www.cnblogs.com/fyan888/archive/2007/07/03/train.html
總結
以上是生活随笔為你收集整理的给公司员工上的培训1——微观规范的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于磨洋工
- 下一篇: Mangos自己制作装备