zoukankan      html  css  js  c++  java
  • 《程序员修炼之道Ⅱ》读书简记

    Statement: 是按照书中的顺序,但是其中的某些点由于关联度很大会放在一起。另外,这里只是书中各个点的个人整理以及无知浅薄的概括,还是推荐看书/原版书。

    只看了部分,后面的失去了兴趣,先搁置,看过的内容如下!

    1. 人生是你的

    拥抱变化,尝试改变,掌控机遇。

    2. 源码被猫吃了

    不害怕问题,问题就是用来解决的,积极“背锅”,让团队信任你,提供选择,不找借口。

    3. “破窗”

    不要放任“破窗”,Bug具有最高优先级,注意修复时的附带损伤。

    4. 石头做的汤和煮熟的青蛙

    成为推动变革的催化剂,保持全局观。

    5. 够好即可的软件

    在适当的时候停下优化的脚步。

    6. 知识组合

    定期投资,多样化,尝试借鉴经验,不要让问题沉寂,把找到答案作为个人挑战。

    7. 交流

    注意听众,注意时机,注意倾听。

    8&9. ETC & DRY 思维

    Easier To Change and Don't Repeat Youself.

    更为普遍的理论是:高内聚松耦合,尽量做到“最小模块,单一职责”。

    10. 正交性

    独立性和解耦性,努力的降低模块间的关联,消除修改所带来的影响。

    好处:最小修改,隔离病变,减小风险,利于测试,提高生产力

    11. 可逆性

    关键的技术选型和决定通常不可逆转,那么只能让架构更加的灵活、适应变化。上层逻辑的抽象,模块的切分细化,让API、库、模块易于修改和替换。

    12. 曳光弹

    最小框架demo。在项目初期,努力的探索打通整个系统,用最简的代码,实现最基本的框架性需求,后来的工作是仿照和使用框架填充整个所需要的系统。而原型则是不断被抛弃的实现“曳光弹”的前期探索和实践。

    13. 原型

    这里的原型就是“快速原型法”中的原型,适用于预研过程中的快速迭代,遵循“用完就扔”的原则。

    15. 关于估算

    不要凭空安排进度,要持续写代码,通过代码的推进对进度表进行迭代。必要时,请教老司机以获取经验。

    17. Shell游戏

    加强编辑能力, 学习更加高效的命令,发掘有用的特性,内化成为肌肉记忆。

    19. 版本控制

    共享目录并非版本控制,永远使用版本控制,不论工作大小和持续时间长短,养成习惯。

    20. 调试

    不要恐慌,发掘问题的根本原因,不止于表面,可复现,二分法,输出日志和跟踪信息。

    22. 工程日记

    经常性的记录自己的想法,经常性的进行工作总结,比记忆更加可靠。

    23.契约式编程

    契约式编程(编码之前,明确输入域边界条件,完成的功能和承诺的交付),尽早奔溃。

    25. 断言式编程

    在生产环境中没有什么不可能,防弹级软件(^_^)

    26. 保持资源的平衡

    有始有终(一般来说,分配即代表对释放负有责任)...

    27. 不要超出前灯范围

    小步前进(采取深思熟虑的小步骤,同时检查反馈,在推进中不断调整),不要占卜(习以为常的事情变化的可能性很大)

    38. 巧合式编程

    不要巧合式编程,应该深思熟虑, 和结果相近是不够的!

    38. ->如何深思熟虑的编程:

    1. 时刻注意你在做什么
    2. 能够向一个新手讲清楚这段代码吗?
    3. 按计划推进
    4. 只依赖可靠的东西
    5. 将假设文档化
    6. 不要只测试代码,还要测试假设
    7. 给精力的投放排个优先级
    8. 准备好重构

    40. 重构

    代码不是静态的东西,何时进行重构?当你学到一些东西而且对于已经实现的部分更加了解且不太满意时,不要犹豫,改掉它!

    1. 低风险,小步骤,随时测试
    2. 外部行为不变,并不是添加新功能
  • 相关阅读:
    第4次作业得分-东师软工
    第3次作业得分-东师软工
    C语言-第3次作业得分
    NPM
    Node模块化
    spring源码解析前瞻
    单例DCL模式
    dubbo-admin安装
    linux 安装Zookeeper
    Tomcat在Linux上的安装与配置
  • 原文地址:https://www.cnblogs.com/yocichen/p/14624128.html
Copyright © 2011-2022 走看看