国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

程序员最重要的技能:知道什么时候不写代码

发布时间:2019/09/12标签:   代码    点击量:

原标题:程序员最重要的技能:知道什么时候不写代码
本文指出大少数顺序员都轻易犯下的错是,由于对编程的高兴,不晓得甚么时间应当对编码说“不”。顺序员须要晓得甚么时间不须要编码,并从名目中删除全部不用要的代码,这将让任务变得更轻易,并使软件寿命更长久。对甚么说“不”学会说“不”是一个好的开始。然而究竟是对甚么说“不”,又是甚么时间合适说“不”呢?这确实是大少数顺序员,乃至是那些高等顺序员都很轻易混杂的一个重点。作为一位顺序员,编写代码无疑是你职业中最主要的局部。在你的编程生活中,你弗成幸免的地将会处置种种对于差别范例代码的恳求。而每个恳求都能够会迫使你做出一些困难的决议。这些看下来所有畸形,仿佛也没甚么错。究竟,这是全部人对你的冀望:作为顺序员就该编写代码。但是,这里有一个成绩:你能否应当编写向你恳求的全部代码?这个成绩给咱们引入了一个顺序员所能学到最主要的技巧:晓得甚么时间不编码能够是顺序员所能学到最主要的技巧。——《可读代码的艺术》对下面这句话,我完整批准。这是为甚么呢?编程是处理成绩的一门艺术。因而,天然而然地,顺序员成为了成绩处理者。作为顺序员,当咱们眼前有一个新成绩有待处理,或由于任何其余起因须要咱们写出代码行时,咱们会由于任务感而觉得高兴。有这类高兴也是再畸形不外的,究竟咱们是顺序员,咱们就是喜爱写代码。但是,对编写代码这件事过于高兴就会让咱们变得自觉。这类情感会让咱们疏忽了一些主要的现实,而这些现实能够招致更大的成绩,让咱们在将来不得不再去处理这些更严峻的成绩。那末,咱们每每轻易疏忽哪些主要的现实呢?你写的每一行代码都是: 必需被其余顺序员浏览和懂得的代码 必需被测试和调试的代码 会增添软件缺点的代码 能够会在未来引入新 bug 的代码正如 Rich Skrenta 所写的,代码是咱们的朋友:代码堪称是罪恶的。代码会糜烂。代码须要按期保护。它们老是包括有待发觉的 bug。而新特征的增加老是象征着旧代码必需停止调剂。代码量越大,bug 所能存身的处所就越多,且 checkout 或编译代码所需的时光就越长,而新员工懂得这个体系所须要的时光就越长。这还象征着,假如你须要重构代码,须要移动更多货色。别的,更多的代码平日象征着顺序领有更少的机动性和更少的功效。这一点乍一看是违背直觉的,但确切许多时间,较之一个才干平凡的顺序员所编写的漫长凌乱的代码,一个简略文雅的处理计划能运转更快,且其功效会更通用。代码都是由顺序员编写的。以是编写更多的代码每每须要更多的顺序员。而顺序员之间的相同本钱是以 n²的速率增加的,而后,这些顺序员写的全部代码都增加到体系,在扩展体系功效的同时,也会增添全部软件工程的经营本钱。我说的这些都是真的,岂非不是吗?以是,那些用他们的出产效力和编程头脑来鼓励你的巨大顺序员们,都是那些晓得甚么时间该说“不”,甚么时间不编程的人。易于保护、连续寿命长、一直关心用户完成功效的那种软件,应当不包括任何不用要的代码行。最好的代码实在是没有代码,而最无效率的顺序员晓得甚么时间不该该编码。怎样晓得甚么时间不该该编码呢?当你投身一个名目的时间,很天然地会觉得高兴,满头脑都是全部那些想要完成的炫酷功效。然而顺序员每每轻易高估了他们的名目真正须要几多特征。因而就形成体系中有很多未实现或未投入应用的特征,乃至有些特征纯洁只是让利用顺序变得过于庞杂。你应当起首懂得甚么对你的名目是须要的,以幸免犯下这类过错。懂得软件的用处及其中心界说,这是晓得甚么时间不该该编写代码的第一步。请允许我举一个例子。假定,你的软件只要一个目标:治理电子邮件。基于这个目标,发送和接受电子邮件是该软件名目的两个基础功效。你就不该该等待这个软件同时也能治理你的待服务项清单,岂非不是如许吗?因而,你应当谢绝与此中心界说有关的任何能够的特征恳求。在这类时间,能够确实地确定你清楚甚么时间不该该编写代码。永久不要随便扩大软件的用处。一旦晓得了甚么内容对你的名目是必弗成少的,那末鄙人一次评价全部能够呈现的代码恳求时,你会心识到这一点。你将清楚地晓得编写代码的需要是甚么。这个体系应当完成哪些特征?哪些代码值得编写?因而,你能够英勇地去质疑所有,由于你确实地清楚那些不用要的代码是怎样拖垮你的名目的。晓得甚么时间不该该编码能够使你的代码库更小。

版权信息Copyright © 银河官网 版权所有    ICP备案编号:鲁ICP备09013610号