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