`
goodsense
  • 浏览: 31962 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

写程序8条“不怕”的经验

阅读更多
1.  改变

在软件开发中,没有什么事情会一直停滞不前。现在你正在开发的东西,只是软件的其中一个版本,未来随时可能发生变化。

变化是在软件开发中最常见的事情,你最好接受这一事实。一种好的做法是,使你的代码更加模块化,这样在未来需求改变时,可以容易地进行更改。

遵循DRY(Don't Repeat Yourself)和YAGNI(You Aren't Gonna Need It)原则。经常看看你的代码,相信自己可以做得更好。立即采取行动,并进行重构,你等的时间越长,代码维护起来就越艰难。有可能会混乱到你无法处理。

引用
好代码是很容易改变的代码。代码会不断改变,直到它不再容易改变为止。那时所有的代码已经变成了糟糕的代码。—— 匿名


2.  移除死代码和注释掉的代码

在开发中,往往会遇到一些无用的或注释掉的代码,你可能不愿意删除,因为你不知道它们以后会不会排上用场。

立刻删除了吧!因为有版本管理工具来负责记住这些代码。现实中太多的项目充斥着大量注释掉的代码,如果不需要,就删除吧,不要害怕。

引用
完美,不是在没有东西需要补充的时候,而是在没有东西需要去掉的时候。——《小王子》


3.  犯错误

没有人是完美的,每个人都会犯错误。犯错是一个学习的过程。如果你不承认任何错误,你将不会有任何改善。

所以,每当你犯了一个错误的时候,你要从中学到一些新的东西,来提高你的知识。此外,不要隐藏自己的错误,或为它们感到羞愧,诚实、坦率地说出你的错误,为自己或他人作前车之鉴。批评与自我批评是推动一个成功团队向前的重要工具。

引用
从未犯过错误的人,是没有机会尝试新东西的。—— 阿尔伯特•爱因斯坦


4.  向其他人展示你的代码

你是不是害怕其他人审查你的代码?为什么呢?你没有尽全力写好吗?你害怕犯任何错误吗?

你不应该这样,代码审查中发现的每一处错误都可以为你积累一些经验,在以后的编码中,你将不会再犯同样的错误。因此,你应该为你写的代码感到骄傲,不要害怕别人看到。

5.  失败

这是最重要的一个。如果你害怕失败,那么你将永远无法解决手头的问题。永远不要放弃希望,把它当作是一个挑战。尝试从另一个角度看东西。成功地解决难题之后,会让你更加强大。

引用
我并没有失败,我刚刚发现了1万种无法正常工作的方式。——托马斯•爱迪生


6.  你自己代码的稳定性

你向你的老板或客户展示你的项目时,你开始担心“能正常运行吗?希望我在开发过程中没有遗漏什么。”

这是一个不好的征兆,你不应该担心。你应该尽早测试你的项目。当然,你无法100%肯定你的作品是完美的,但通过编写自动化测试,可以大大提高你对你的代码的信任度。

7.  新的、复杂的技术

有些开发人员很懒惰,经常沉浸在他们的“Good Old”技术中。要知道,IT正在以令人难以置信的速度发展,每一天都会有新的、更好的技术出现。

因此,开发人员要以开放的态度,多学习一些东西,阅读一些博客,使你不至于与新技术脱节。如果技术/框架满足你的需求,尝试一下也无妨。

8.  项目时间压力

别让时间压力毁了项目的质量。保证你的代码干净、稳定,这是你的工作。高质量也意味着需要深思熟虑的决策和开发时间,有时你需要争取一下。你的客户期待你用100%(甚至120%)的努力来完成一个可维护的、最先进的产品,如果最终你交付一个次品,那么你后面的时间将被各种需求变更、维护工作占用,并且老板和客户对你的信任度也会降低。

在开发中,你节省的时间往往会为你带来更多的技术债务。因此,当涉及到项目质量时,拿出你的勇气,诚实地与你的老板谈谈。
分享到:
评论

相关推荐

    单片机超级精华包

    单片机超级精华包是一个集合了多个与单片机应用相关的资源和教程的压缩文件,主要包含《不怕掉电的超级万年历》的源程序和相关文件,以及关于使用ATmega16设计简单流水灯电路的相关资料。这些内容对于学习和实践...

    c语言学习心得.docx

    * 不怕辛苦,把你的每一段代码都敲进计算机,让计算机来实现,这样有助于你对程序的理解,并试着修改你的代码,让你的代码更精简,效率更高。 六、编程心得 * 学习 c 语言是基础,很重要,如果你不学好 c 语言,...

    UGNX后处理器PUI版

    8、若超出给定的工件尺寸范围,则温馨提示可加工的最大工件尺寸值X长8米Y宽5米Z高3.5米;预防工件尺寸太大超过机床行程。 9、若UG编程时误勾选了换刀设置里手工换刀复选框,则有温馨提示;预防自动换刀程序里出现M...

    写给matlab新手的几句话

    4. **不怕英文帮助文档**:Matlab的官方文档是英文的,但通过阅读和实践,可以从中学到很多知识。初期可能困难,但随着学习深入,理解会逐渐加深。 5. **积极动手实践**:编程能力是通过编写和调试代码来提升的,...

    50条C++学习建议

    ### 50条C++学习建议详解 #### 1. 把C++当成一门新的语言学习 - **解释**:虽然C++源自C语言,但它引入了许多新特性,如类(class)、模板(template)等,这些特性使得C++成为一门全新的语言。 - **建议**:不要假设你...

    我的C++心得 大家指教指教!!!

    8. **预处理器宏和编译指令**:预处理器宏可以帮助我们实现代码的条件编译,而#include指令则用于引入头文件。 9. **设计模式**:虽然设计模式并非C++特有,但理解和应用常见的设计模式(如单例、工厂、观察者等)...

    2022年c语言学习心得体会.docx

    这是学习好C语言的关重要的环节,无论你编程学得多好,上机实现才是目的,所以,不怕要辛苦,把你的每一段代码都敲进计算机,让计算机来实现,这样有助于你对程序的理解,并试着修改你的代码,让你的代码更精简,...

    电子信息工程专业就业前景.docx

    数字电子线路方向主要是从事单片机、FPGA、数字逻辑电路、微机接口的开发,更高的要求会写驱动程序、会写底层应用程序。该方向用于工业控制、监控等方面。 通信方向分为两个分支:工程设计、施工、调试和开发。开发...

    用Proteus制作的郭天翔《十天学会51单片机》的学习板

    4.我的个人博客里面有很多学习51单片机的过程中的经验体会,写出来给大家参考一下。如果有什么问题也可以给我留言,我会抽空回答大家学习51单片 机过程中遇到的问题,大家交流交流。我也在不停的学习,所以时间有限...

    1640-DF2通刷固件

    标题中的“1640-DF2通刷固件”指的是针对西数(Western Digital)硬盘型号为WD1640DF2的通用固件升级程序。固件是存储在硬盘内部微控制器上的软件,它控制着硬盘的读写操作、错误校验、磁头定位等核心功能。"通刷...

    qt c++各种实例

    Qt是一个强大的跨平台应用程序开发框架,主要用C++语言编写,同时也支持QML进行UI设计。这个名为"qt c++各种实例"的压缩包显然包含了多个使用Qt和C++编写的示例项目,旨在帮助学习者和开发者更好地理解和掌握Qt库的...

Global site tag (gtag.js) - Google Analytics