《卓越程序员密码》读书笔记

主要内容:
这本小书名叫《卓越程序员密码》,但大部分内容讲的不是具体的技术。书中的话题涉及程序员生活的方方面面,每个话题独立成篇、言简意赅,读来多有切身之感,引人思考。譬如每日邮件繁忙,电话不断,如何保证工作效率?有些程序员朋友,自身水平很高,为何向别人讲解问题时却效果不佳?如何和不断提要求的客户周旋?作者在行业中浸淫多年,在团队建设、项目管理等方面都有独到的见解。当然,书中更少不了关于软件开发本身的技巧,复杂性管理、重构、代码生成等都是对实际工作很有指导意义的方法。

扔掉旧代码
不要把代码囤积在注释里,删除代码可以让代码库精简。眼前的页面应该精确地反映出软件现在的工作方式,一分不多,一分不少。现在就扔掉旧代码,在编程中间就不用跳过一堆不相干的垃圾字节。我们以后也用不着去琢磨,这一大团已经注释掉可看起来还很重要的代码,到底还是不是那么重要。

早起先测试
早起上班第一件事:测试你的软件。这是你最清醒、最有动力写点好东西的时候。在一天的工作中,我们花了那么多力气去写代码,根本没精神再去挨段测试了。一天下来,会越来越难以统览全局。到了傍晚,人已经沉浸在这个软件中了。疲惫令我们无法判断什么有道理或是直觉上正确,还会让我们漏掉一些细节。

编程语言虽有不同,核心的编程思想、方法和架构却是高度类似的。我们只是用不同的方式来表达而已。

建筑不同于软件,即使完全相同的建筑也要重新设计。

伟大的程序员可以同时在“地沟”和“高层”之间游刃有余。当然,架构师可能大部分时间都在做高层次的构思,但也应该对开发有所涉足,来了解整个的情况。

代码生成器是什么?
代码生成器是按照特定编码规范输出代码的软件,可以直接生成项目,也可以单页生成
比如动软,生成项目可以选择vs版本的,其实嘛,动软挺垃圾的,不如你去学学orm框架,很简单的,比动软的三层好得多

不要把代码囤积在注释里,删除代码可以让代码库精简。眼前的页面应该精确地反映出软件现在的工作方式,一分不多,一分不少。现在就扔掉旧代码,在编程中间就不用跳过一堆不相干的垃圾字节。我们以后也用不着去琢磨,这一大团已经注释掉可看起来还很重要的代码,到底还是不是那么重要。

第6篇 多元化胜于专业化
在软件行业,我们可以身兼设计师、程序员和数据库管理员。一个人可以精通PHP、Java、.NET、C++、Python、SQL,还可以了解HTML、CSS、JavaScript和Flash。但似乎很少有人能够轻松地跨越用户界面和后端之间的界限。

现在的编程语言之间有大量的重叠。设计模式和重构这些概念在编程的世界里随处可见。

在我的公司里,开发团队的大部分人员都了解多种编程语言,同时兼做前端和后端。这可以帮我们平衡每个人的工作量,因为大家都可以很熟练地在软件的所有层面上工作。

软件不一定要从头开始写。
软件不用非得一上手就从头开始,我们可以从最感兴趣的地方入手。这种优越性是造很多其他东西时所无法享受的,比如造房子、造汽车或者造任何实际的东西。我们并不一定要从某个特定的地方入手,许多东西都可以事后重构。也许这是绕了一点弯路,但如果一直灵感喷涌而不是苦苦煎熬,我们就可以做得更快更好。

这点挺有感触的:
这在着手做一个大型软件项目时尤其有用。用不着花上三天时间来框定一个进度表和发布日期,不如用这工夫写你最感兴趣的那部分程序。过一个礼拜,你就会知道自己到底有多少动力,对于其他部分何时能够搞定也会心中有数。

不能从一开始就追求完美:
然而,要在这个行业中生存下来,你最好不是个完美主义者,因为没有什么软件是完美的,特别是基于网络的软件。我们的产品是通过用户存活下来的。用户基数增长的时候,它会发生嬗变。新功能会不断呈现,新bug也会不断产生,所以要求完美实在让人筋疲力尽。

第12篇 早起先测试
早起上班第一件事:测试你的软件。这是你最清醒、最有动力写点好东西的时候。
在一天的工作中,我们花了那么多力气去写代码,根本没精神再去挨段测试了。一天下来,会越来越难以统览全局。到了傍晚,人已经沉浸在这个软件中了。疲惫令我们无法判断什么有道理或是直觉上正确,还会让我们漏掉一些细节。

不要在卧室工作:
正如帕金森定律所说:“工作会不断膨胀,直至占满所有可用的时间之后才会完成。”由于我可以在一天中的任何时间“工作”,所以可占用的时间就多了去了。每周40个小时的工作突然就变成了168小时的工作+睡觉+吃喝娱乐。

在家办公是一种奢侈。大部分人都宁愿在家办公,也不愿花两个小时去上班。但如果你有幸享受这一点,千万不要在卧室里办公,最好也不要在起居室。搞出一个封闭的工作区,最好是单独的一个房间,这样就可以在工作时间结束后从那里离开。一天结束之后关上门,挂上一个“打烊”的牌子,然后去享受生活中的其他乐趣,第二天再继续工作。

投资:
如果有两个显示器,把开发环境摆在面前,全屏显示,另一个显示器上则一直开着测试浏览器,所有其他程序(比如邮件和聊天客户端)也放在这里。这样,你就可以一直专注于开发,并且在另一块显示器上做测试。

要是有三个显示器,可以把开发环境放在面前,另一个显示器开着测试浏览器,然后把所有其他程序(比如邮件和聊天客户端)放在第三个显示器上。如果你想要全神贯注几分钟,不想让闪烁的任务条图标和未读消息分你的神,只要暂时把第三个显示器关掉就行了。

说个题外话,下次找工作时,若想知道该工作好不好,可以迅速扫一眼办公室,就知道管理层是不是关注开发团队——是不是真正关心开发人员的工作环境。数数房间里面的显示器,然后除以员工人数。得出的值就是“关注系数”。

现在,很多非技术人员都对软件存在一个很基本的误解。作为程序员,我们基本上是逻辑和信息的整理者,我们的工作主要是推送、接收、处理和显示数据。我们中大部分人搞的都不是人工智能。我们没法轻易地写出能够推荐或猜测的程序,即使“推荐”或“猜测”是一些预定好的、可以描述的逻辑。然而有时候,在外行人的想象中我们的工作方式是这样的:有某种黑魔法盒,即使我们不给出所有的信息,它也能理清所有的头绪。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值