• 自己的一些编程规范


    毕业正式上班前,公司对新入职的员工进行了拓展训练和培训,公司的一个出身研发的年轻领导问了我们这样一个问题:“试想一下,建筑工地的农民工没有我们聪明,更没有学历,但是他们盖的大楼却总是能够按期完成,而且常常可以使用几十年而不出问题,而学历更高的我们写的软件不但经常延期,而且常常出现各种bug,我们有想过为什么会这样么?”当时没有人回答,这个领导也没有给出明确的答案,但是这个问题一直在我的脑海里徘徊。经过3年多的工作和思考,我觉得自己可以试着回答这个问题了。

    程序员与农民工的工作效率与可靠性的区别来自于下面两点:

    1. 理论的成熟度不同。有计算机以来才几十年而已,而人类有建筑以来已经好几千年了,计算机和软件开发的理论相比建筑的理论,其成熟度自然是无法比拟的。
    2. 标准化和规范化的程度不同。建筑行业每个工种和工序都有比较严格的操作规范和标准,而软件行业的标准和规范却非常稀疏。

    长期来看,随着计算机和软件行业的不断发展,其理论肯定会逐渐成熟;短期来说,作为程序员的我们可以通过不断规范自己的编程习惯,标准化自己的编程行为,是可以慢慢实现软件按期交付,稳定运行的目标的。

    下面是自己总结的一些编程规范:

    1. 形成固定的命名习惯;这样在编码时,就不用时常停下来思考变量和函数的名称,反而可以把更多的精力用于思考逻辑;
    2. 绝不使用引起二义性的东西;
    3. 尽可能地解耦,一个函数只做一件事情;
    4. 消灭所有编译产生的警告;
    5. 防御性地编程,总是假设自己的代码会出问题;
    6. 尽可能地详细记录日志,包括时间、错误发生的地方,错误码等等;
    7. 对于异常分等级地处理,按照以下原则处理异常:能恢复尽量恢复,譬如超时重发,这样软件的可用性比较好;异常处理不能污染数据或者损害硬件;
  • 相关阅读:
    次小生成树
    [bzoj5329] P4606 [SDOI2018]战略游戏
    CF487E Tourists
    P3225 [HNOI2012]矿场搭建
    CF #636 (Div. 3) 对应题号CF1343
    P3469 [POI2008]BLO-Blockade
    大假期集训模拟赛12
    大假期集训模拟赛11
    大假期集训模拟赛10
    小奇画画——BFS
  • 原文地址:https://www.cnblogs.com/cnpirate/p/6593586.html
Copyright © 2020-2023  润新知