初读《程序员修炼之道》

一直听说这本书是如何如何好的,怀着膜拜的心情快速阅读了一遍,感触较深的几点记录一下。

初读《程序员修炼之道》_第1张图片
程序员修炼之道——从小工到专家

一、注重实效的哲学

  • 学会问问题
    记得有一次,我在一个群里问题,等我把问题所有的描述点都到位后,我自己都发现问题所在啦,问问题之前一定要认真分析自己的问题,找出关键点。

  • 不要容忍破窗户
    一个丢在一旁的车子,一旦有一天有一个窗子坏了,过不了多久,整个车也即将被翻个底朝天。编写整洁、设计良好、优雅的代码谁也不想成为第一个破坏的人。

  • 定期为我们的知识资产投资
    学习新语言、阅读各种书籍、参加不同讲座、分享自己所学的,都是很有必要的,另外用于尝试不同的环境。

二、注重实效的途径

  • Don't Repeat Yourself
    DIY 原则一直是所公认的,但是我目前还是习惯对于某些需求,先重复一段代码(当然不会超过三次),然后先实现效果后,再来进行抽离,可能还没达到那种程度吧,哈哈。

  • 正交性原则
    其实可以理解就是高内聚低耦合吧,两条垂直的线。
    a: 让代码保持解耦,也就是不会没有必要地向其他模块暴露任何事情、也不依赖其他模块的实现的模块。
    b: 避免使用全局数据。
    c: 避免使用相似的函数。

  • 可撤销性原则
    没有什么最终方案,灵活多变对于自己的项目。

三、注重实效的偏执

You Can't Write Perfect Software,确实我们不可能写出完美的软件。

  • 错误的处理
    有时我们不可避免的遇到错误,发现 bug 和 解决 bug 未尝不是我们能力的体现呢?

  • 记住程序是不会说谎的
    不要想当然的认为那样,(int) count > 1 就是等于 count == 0 吗?

  • 配平资源
    只要是在编程,我们都要管理资源:内存、事务、线程、文件、定时器,所有数量有限的事物,我们通常都是 分配它——> 使用它 ——> 移除它,一定要有始有终

注意编写 “ 羞怯” 的代码:
不要向别人暴露你自己
不要和太多人打交道

四、编码时

  • 算法速率
    学习算法是必要的,优秀的程序员每天都在考虑算法使用的资源: 时间、处理器、内存、等等。

  • 工具化
    充分利用各种工具,让自己更有效率,git 、Dash、自动化打包之类的,等等能让我们效率提高的工具都可以去尝试使用。最好有一套自动化流程。

  • 注释
    不要写没有用的、不要写混淆人的、不要为了偷懒而省略
    尽量在做出某些重大决定,替换,重构,权衡时的想法,还是可以自己注释备忘下的,代码除了运行也是给人看的。

  • 测试
    积极面对测试,可以以测试为导向开发,目前像我们 iOS 中,只有一些大公司写单元测试的,但是实际上好多第三方的优秀开源库都是 有单元测试的,所以目前离我们比较近一点的是,可以尝试在自己的项目中开始写单元测试。

五、傲慢与偏见

注重实效的程序员,不会逃避责任。相反会乐于接收挑战,乐于让我们的专业只是让他人知道。不断的告诉自己,我们正在做的事情,正是我们可以引以为豪的事情!

当然也不能只相信自己的代码,而对其他小伙伴代码的怀有偏见,就像不应该阻止他人改我们自己的代码一样,应该是互相尊重,互相学习,求同存异,大方的接受自己的错误。

记住: 这是我编写的,我对自己的工作负责!

总的来说,感觉以后的再次拜读是肯定必要的,经典必有其经典!工作时间不是很长的我,有很多方面体会还不深,想着有些东西确实和时间相关的,还是要慢慢来体会。

你可能感兴趣的:(初读《程序员修炼之道》)