zoukankan      html  css  js  c++  java
  • 给公司员工上的培训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,面向对象的几个基本原则。以后的文章会讲到。
    最后还有测试,包括单元测试。
    有空再写一篇面向对象分析技术。
  • 相关阅读:
    蓝桥杯省赛经验
    阅读笔记四
    阅读笔记二
    阅读笔记一
    动态规划——Maximum Sum of 3 Non-Overlapping Subarrays
    动态规划——Remove Boxes
    动态规划——Dungeon Game
    动态规划——Freedom Trail
    动态规划——Frog Jump
    《软件需求十步走》阅读笔记一
  • 原文地址:https://www.cnblogs.com/fyan888/p/train.html
Copyright © 2011-2022 走看看