读书笔记 --《程序员修炼之道》

xiaoxiao2021-02-28  44

读书笔记 --《程序员修炼之道》

总的收获

本书提出很多工作建议,有编码层面,项目进度层面,效率层面。给了工作中的很多建议。 印象深刻的有以下几点:

不要重复你自己曳光弹单元测试持续集成,持续部署估算项目时间 6.破窗理论 7.重构 8.自动化

以下是总结: 这本书,主要告诉程序员(开发, 测试,运维)一些工作中的方法论,和一些工作习惯。能够使你的工作更加高效和挖坑更少。 注重实效的哲学 注重实效的程序员在工作会做到: 负责,不仅仅是按时完成工作,更多的是,当出现问题的时候,不是去找接口,推卸责任,而是承担起来,给出解决方案。勇敢的承认我们的无知。提供各种选择,不找蹩脚的借口。 不要留破窗户, 当你看到问题的时候,尽快修复他。否则,最后问题将变的更加严重,直到你再也不想看代码,不敢改动任何一处。(破窗户:低劣的设计,错误的决策,糟糕的代码)。 做变化的催化剂 ,如果没有人作出改变,那就从你开始,影响每一个人。 足够好的软件, 不要等到你编写出完美的软件再交付给你用户使用,小步迭代,持续交付,尽早让你的用户看到软件,能够让你及早的发现问题,及时调整。 更新你的知识资产,要定期阅读来学习新的知识,多元化,可以让你的视野开阔。 批判的思考,批判的分析你读到的和听到的,否则很难将你学到的转换成你自己的知识,最后你只是一个图书馆。 交流,倾听别人和让对方倾听你,清楚你要告诉倾听者什么,你是否表达清楚,回复他人,确保对方确定你已经收到了他告知你的信息。

注重实效的途径 DRY原则 不要重复自己 ,我们经常会做很多重复的工作,而是意识到解决一下这些重复,或者进行抽象,或者进行自动化,我们应该做更加脑力的事情,而不是体力活。

强加的重复

无意的重复

无耐心的重复

开发者之间的重复

正交性 两个或者多个事务其中一个发生变化,不会影响其他的,正交性系统模块之间的耦合很低。 正交性的好处

提高生产率

降低风险

利于测试(特别是单元测试)

编码使用正交性的技巧

让你的代码保持解耦

避免使用全局数据

避免编写相似的函数

曳光弹 使用简单的功能,方法检验方案是否可行,小步快跑,快速迭代,让客户能尽快的看见的看见东西,以便及时进行调整,保证项目能够成功。 估算 避免发生意外 基本工具

使用脚本高效工作

源码控制

构建 自动和可重复的源码构建

调试你的代码 调试的形式不仅仅是使用IDE的调试工具,也可以使用断言,输出查看,毕竟多线程下,很难进行调试。

代码生成器

注重实效的偏执 你不可能写出写出完美的软件,不可能不犯错误,所以注重实效的程序员,会对自己的错误进行防卫性编码。

按合约设计 合约即规定你的权利与责任,也规定对方的权利与责任。

死程序不说谎 代码是最老实的家伙,一旦出异常和错误,就要测试,修改代码。

断言式编程 如果它不可能发生,用断言确保它不会发生。

配平资源 要有始有终,打开的资源,记得关闭。

弯曲或折断

使代码不会僵化,我们需要解耦各个模块。

解耦与得墨忒耳法则 得墨忒耳法则:只和你的‘密友‘交谈

当你编码时

不要靠巧合编程,要深思熟虑的编程

算法的时间空间复杂度

重构 使快要或已经僵化的代码,重新焕发活力

易于测试的代码 编写单元测试

当项目开始之前

挖掘真实需求

建立需求文档

使统一的沟通词汇

充分准备 倾听反复出现的疑虑,等你准备好再开始。

注重实效的项目

不要留破窗户

做催化剂

交流沟通

不要重复你自己

正交性

自动化

一切都要自动化

无情的测试

在你的代码上签名

转载请注明原文地址: https://www.6miu.com/read-2631216.html

最新回复(0)