• 《程序员修炼之道》阅读笔记2


    维持正交性

    正交:两个事物中一个发生变化,对其他无影响,这两个事物就是具有正交性; 
    正交性的好处:

    1. 提高生存率;
    2. 降低风险

    让代码维持正交性,可以消除无关事物之间的影响;

    可撤销,可更换

    不存在最终的目标,也没有终极的架构;项目的任何一个模块一个组件都是可撤销,可替换的;不要过度依赖于某个第三方的产品,否则你的项目就被第三方绑架了;
    通过灵活的架构,将第三方产品隐藏在良好的抽象接口之后;

    无处不在的自动化

    多用python、shell等脚本语言,将工作的重复性任务自动化实现; 
    对于编程中的重复性代码,通过脚本自动生成代码来实现; 
    在工作中多总结,提炼小系统,让流程、代码都自动化; 
    linux下的cron是个好东西,让你的自动化任务都在夜深人静时准时执行;

    不要靠巧合编程

    你所写的代码都是深思熟虑过后的产物,先有设计,然后再产出;想到一处写一处是刚毕业的水平; 
    按照合约编程,别想着这个地方可以增加多少好功能,画蛇添足的故事太多,过多的超过用户期望未必有好的结果,可能就成了用户不想要的;

    测试的重要性

    测试重要,大家都知道;但单元测试,有多少个项目能认真的做过;没有质量高、覆盖好的单元测试,哪来的勇气去重构一个个庞然大物似的老项目? 
    这句话很精辟:测试你的软件,否则用户就得测试;

    新方法和新工具

    有个新工具或新方法想在项目组中推广,这事挺好;但不要低估采用新工具和新方法的代价,可能你的项目需要花上太多精力来熟悉这个方法,而第一个采用这个方法的项目,可能就只能是实验品; 
    批判的看待方法学,从中提炼适用团队的精华;

     

  • 相关阅读:
    Codeforces 1045C Hyperspace Highways (看题解) 圆方树
    Codeforces 316E3 线段树 + 斐波那切数列 (看题解)
    Codeforces 803G Periodic RMQ Problem 线段树
    Codeforces 420D Cup Trick 平衡树
    Codeforces 295E Yaroslav and Points 线段树
    Codeforces 196E Opening Portals MST (看题解)
    Codeforces 653F Paper task SA
    Codeforces 542A Place Your Ad Here
    python基础 异常与返回
    mongodb 删除
  • 原文地址:https://www.cnblogs.com/zhangxinyue/p/14839583.html
Copyright © 2020-2023  润新知