1.实践
计算机是一门实践的学科,提高技术水平也应该选择最贴近实践的方法——自己写或者看别人写。我不是反对看技术书,但真正值得细读的技术书非常少,市面上计算机图书汗牛充栋,这个是经典、那个是大师、另一个又是必读,很容易误导初学者。事实上对国内大量在一线的程序员来说(专业项目管理、需求分析、测试等其它工种除外)在真正必读的书我认为只有2本——《代码大全》和《设计模式》(这里指的是讲设计模式的书,相对于Gof的这本,我更推荐《敏捷软件开发:原则、模式与实践》),剩下的时间都应该用在写代码和读代码上面。编程涉及到很多细节上的东西,比如变量和方法的命名、方法的粒度、注释的写法、经典模式的变体等等,而这些东西在书里是不会有的。所以靠看书是成不了好的程序员的,这个方面我走过弯路,希望大家不要再走了。如果有一天你发现自己读书的时间多于读代码和写代码的时间,你就要小心了,在成为优秀程序员这条路上,你已经走到岔道里去了。
2.不要重复发明轮子
老程序员有个特点,就是代码写的很快,有的时候甚至快得不可思议,让新手目瞪口呆。我们常说“不要重复发明轮子”,但一般的理解是对已有的专业代码库的重用,事实上在具体的类、方法的层次,甚至是语句的层次都可以实现代码重用。因为并不是所有的代码都会被抽象整理为公用的代码库的,一些很细节的东西是不会有的,而程序员每天面对的正是一个个具体的、细粒度的问题;而且限于一些开源协议的规定,也不是什么库都能随便搞拿来主义的。解决这个问题的方法就是建立自己的代码库,多读代码,多写代码,把自己认为好的、具有一定通用性的代码整理出来,如此日积月累,最后大量的工作都是通过拷贝/粘贴已有代码来完成的,真正要创造的很少。我们可以把更多的精力放在局部代码结构的设计上,写代码的速度会越来越快,而且因为已有代码都是实际应用中千锤百炼的结晶,代码的质量也会约来越高。
分享到:
- 2008-03-07 18:17
- 浏览 2181
- 评论(9)
- 论坛回复 / 浏览 (8 / 3727)
- 查看更多
相关推荐
小程序源码 看书阅读前端 看书阅读带后端 (代码源)小程序源码 看书阅读前端 看书阅读带后端 (代码源)小程序源码 看书阅读前端 看书阅读带后端 (代码源)小程序源码 看书阅读前端 看书阅读带后端 (代码源)小程序源码 ...
读书笔记:看书《数据结构与算法分析 Java语言描述第三版》所敲的代码
【看书阅读小程序源码】是一款专为...总的来说,【看书阅读小程序源码】是一个全面的阅读解决方案,包含从内容呈现到用户交互、商业运营等多个层面的功能,适用于个人开发者或者小型团队进行阅读类小程序的开发和运营。
这个读书系统源代码提供了学习和实践ASP开发的良好机会,特别适合初级编程者。 该读书系统可能包含以下几个核心知识点: 1. **ASP基础**:了解ASP的基本结构,如`<% %>`标记内的脚本代码,以及如何在页面上嵌入...
适用人群:用PC在微信读书网页版看书,使用markdown做笔记的用户 具体功能: 1. 一键导出标注、热门标注、书评、想法、目录; 2. 导出格式自定义; 3. 一键复制图片、注释、代码块; 4. 护眼色主题; 5. 书架分类、...
"C#看书小软件"是一个基于C#开发的轻量级阅读工具,旨在为用户提供简洁、高效的阅读体验。这款软件具有关闭自动保存书签的功能,透明度可调的界面设计,以及逐句显示的内容呈现方式,特别适合在各种环境下进行阅读,...
4. 作者介绍:大厂码农,java领域创作者,阿里云开发社区乘风者计划专家博主,专注于大学生项目实战开发,文章底部有博主联系方式,更多优质系统、项目定制请私信。 5. 最新计算机软件毕业设计选题大全: ...
豆瓣读书v2API访问小程序(python) ...Git 代码托管服务是一个基于云计算的代码托管平台,提供了丰富的功能,包括代码托管、版本控制、协作开发和项目管理等。 GitHub 是一个流行的 Git 代码托管服务平台。
- **多上论坛交流**:参与MATLAB相关的在线论坛和社区可以帮助解决问题,并且能够学习到其他用户的优秀编程实践。 - **阅读高质量的代码**:通过阅读和分析优秀的MATLAB代码,可以更快地掌握高级技巧和最佳实践。 ...
看书不难,能读犯难;读书不难,能思犯难;能思不难,能记犯难。”这段话揭示了阅读的不同层次,从简单的浏览到深入思考再到记忆巩固,每一个步骤都是不可或缺的。 - “读书者知其所言莫非吾事,而即吾身以求之,则...
小程序的开发涉及到前端界面设计、数据交互和用户体验优化等多个方面。开发过程中通常会用到微信开发者工具,使用WXML(微信小程序标记语言)和WXSS(微信小程序样式语言)进行页面结构和样式的定义,以及JavaScript...
【标题】:“豆瓣客户端项目代码”揭示了这是一个与豆瓣平台相关的移动应用开发项目,主要功能是为用户提供阅读书籍、发表评论以及上传照片等互动体验。这个项目可能涉及到Android或iOS平台,或者是跨平台的开发框架...
毕业设计,基于SpringBoot+Vue+MySql开发的前后端分离的医院药品管理系统,内含完整源代码,数据库脚本,视频教程 身处网络时代,随着网络系统体系发展的不断成熟和完善,人们的生活也随之发生了很大的变化,人们在...
毕业设计,微信小程序+SSM后端+MySql开发的校园失物招领小程序,内含完整源代码,数据库脚本,论文视频,视频教程 身处网络时代,随着网络系统体系发展的不断成熟和完善,人们的生活也随之发生了很大的变化,人们在...
为了满足人们随时随地只要有网络就可以看书的要求,医院药品管理系统被开发研究了出来。 本文主要描述了该医院药品管理系统的具体开发过程,在SSM框架的基础上,采用vue技术和MYSQL数据库,使该医院药品管理系统...
9. **测试**:项目可能包含了单元测试和UI测试代码,确保代码质量并进行持续集成。JUnit和Espresso是Android开发中的常用测试工具。 10. **版本控制**:项目名称中的"master"表明可能使用了Git作为版本控制系统,...
为了满足人们随时随地只要有网络就可以看书的要求,高校办公室行政事务管理系统被开发研究了出来。 本文主要描述了该高校办公室行政事务管理系统的具体开发过程,在SSM框架的基础上,采用vue技术和MYSQL数据库,使...