首页 > 编程语言 >程序员修炼之道阅读笔记1

程序员修炼之道阅读笔记1

时间:2024-05-07 17:44:26浏览次数:27  
标签:本书 自己 笔记 之道 程序员 修炼 耦合

最近读了《程序员修炼之道:从小工到专家》这本书,受益匪浅,同时也让我发现了自己的一些问题。

目前读到的章节中,最让我受益的就是温水煮青蛙的例子。这个例子告诉我要持续不断地观察周围发生的事情,而不仅仅是自己在做的事。尤其是项目的管理者必须要实时的掌控项目的方向,因为大多数项目失去控制都不是一下子就发生的,而是慢慢地、不可改变的完全失去控制的。可能是系统一个特性一个特性的偏离了规范,项目进度一点一点的拖延。这种情况下如果是作为个人还是管理者都不应该容忍规范的违背,每天、每周都需要审视自己,审视团队,及时纠正问题,纠正团队的方向。

贯彻全书的一个原则是DRY(Don‘t Repeat Yourself)原则,这也是我需要改正的,我总是习惯于做自己会做的事情,逃避自己不会做的,在学校能逃,到社会上是逃不了的。只有不断的去创新,学习新的知识,才可以使自己得到进步,使自己能够适应这个不断发展的社会。同时也要自律。养成每天学习的好习惯,不要沉沦在舒适圈。沉沦在舒适圈的我就像泡在温水中的青蛙,最后的结果也将是一事无成,被这个社会淘汰。

一个好的程序一定是低耦合的,这本书提出了函数的德墨忒尔法则帮我们更好的界定耦合的边界,怎样编写低耦合的代码,更难能可贵的是这本书不仅仅描述了一般的代码耦合,还花了很大笔墨解释了时间耦合,很多时候一个业务的实现没有必要一定是线性的,它可以是并行的,这在适用的情形下往往能在提高用户体验的同时还能降低系统的并发压力。

 

标签:本书,自己,笔记,之道,程序员,修炼,耦合
From: https://www.cnblogs.com/zh-ang-zhang/p/18178037

相关文章

  • kvm笔记总结
    带记录windows虚拟机(kvm)复制粘贴https://forum.suse.org.cn/t/topic/15406https://bbs.deepin.org/zh/post/259929https://dausruddin.com/how-to-enable-clipboard-and-folder-sharing-in-qemu-kvm-on-windows-guest/virt-mannager打不开https://stackoverflow.com/questio......
  • Python学习笔记(一)
    Python简介Python是GuidovanRossum发布于1991年的一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,是一种解释型的,弱类型的高级计算机语言。需要注意的是python有2.x和3.x两个不兼容的版本,这是个历史遗留问题。python3.x将是趋势,所以这里选择的是python3.x。Python的......
  • 关于《一本书读懂ChatGPT》阅读笔记
    目录机器学习与深度学习比较神经网络感知机单层感知机Perceptron多层感知机MultilayerPerceptron卷积神经网络CNN循环神经网络RNNRecurrentNeuralNetsLSTMGPT实现过程机器学习与深度学习比较MLDL数据适用数据量小、维度低的情况训练需要较多数据量特征工程......
  • 什么是io?程序员该怎么理解io
    引言很多程序员会谈及IO,仿佛是种时尚或者给自己贴金的方式,因为提上它一般会涉及应用程序的性能相关话题,离高深的底层知识更接近了。但多数人的理解其实是模糊的,他们的脑海里会浮动着抽象的场景:IO就是输入输出啊,电脑在磁盘上读写就是IO,仅此而已,或者,更高明一点,他们隐隐约约的意识到......
  • SecureCRT使用笔记
    文件传输第一种方式:上传文件只需在shell终端仿真器中输入命令"rz",即可从弹出的对话框中选择本地磁盘上的文件,利用Zmodem上传到服务器当前路径下。下载文件只需在shell终端仿真器中输入命令"sz文件名",即可利用Zmodem将文件下载到本地某目录下。通过"FileTransfer"可以修改......
  • 算法学习笔记(16):Link Cut Tree
    LinkCutTree简称LCT(不是LiChaoTree),是一种非常强大的数据结构。声明该博客写来很大部分目的是帮助自己理解,笔者水平有限,没办法完全原创,有很多内容源自于OI-wiki,和网上博客,见谅。功能考虑一些问题:树上单点查,树上路径修改,这是树上差分可以解决的。那么如果路径查,......
  • 2024.05 做题笔记
    P6617由于\(w\)是固定的,容易想到去维护前驱。具体而言,对于每个\(i\),维护\(i\)之前第一个\(w-a_i\),这样可以解决不带修的部分分。发现带修就寄了!因为一次可能修改\(\mathcalO(n)\)个位置的前驱。但是考虑到我们只需要判断是否存在,因此如果\(a_i\)前的第一个\(w-a_i\)......
  • 刘铁猛C#学习笔记(草稿)
    C#笔记目录C#笔记刘铁猛网课005C#语言基本元素概览、初识变量与方法、算法简介构成C#语言的基本元素初识类型、变量和方法算法简介作业006,007详解类型、变量与对象(重要)006详解类型、变量与对象上什么是类型(Type)类型在C#语言中的作用007详解类型、变量与对象下C#语言的类型系统......
  • [学习笔记] 乘性函数 - 数论
    [SDOI2012]Longge的问题我们要求\(\sum\limits_{i=1}^n\gcd(i,n)\),但\(gcd\)没啥卵用,所以尝试给这n个正整数分组。对于\(gcd(i,n)=1\)的数给他们归到\(G(1)\)这个集合里去,当然,这个集合元素的数量为\(\phi(n)\)。对于\(gcd(i,n)=2\)的数归到\(G(2)\)这个集合里去......
  • CSS学习笔记
    ------------恢复内容开始------------CSSCSS(CascadingStyleSheets,层叠样式表),是一种用来表现HTML或XML等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。CSS语法语法由一个选择器(selector)起头,选择将要用来添......