最少编码原则

转载 2016年08月29日 11:55:27
本文作者是一位资深软件工程师,他根据多年的编程经验,把自己的观点组织整理成本文,希望能给大家一点启发。

“最少编码原则”并不是说写的代码少到令意思表达不清楚。其实在很多情况下,可以只写几行代码就能执行相同的逻辑,但这对于后来接手的开发者来说是非常棘手的。最少编码不只是写最少量的代码,还意味着优雅的代码。如果你是有经验的程序员,可能就会明白我将要说什么了。本文的目的是尝试着去阐述清楚这个原则,虽然程序员们都听过都了解该原则,却很少能在每天的工作中将其运用起来。

最少编码指的是代码不仅仅全面解决了问题,而且除了执行能够准确地解决问题的逻辑行,没有其他多余的行。代码要尽可能普通,简单的代码也是优雅的代码,程序员看到这样的代码会感到愉悦。

最少编码和设计良好的解决方案之间有着密切的关系,优秀的解决方案可以大大减少代码量。使用组态代码(不同功能的代码可以很容易地组合)以及减低代码行或逻辑之间的耦合度,就是很好的代码设计例子,同时也符合最少编码原则。

将一段代码转换成最少代码就是我们通常所说的重构,重构可以删掉多余的不必要的部分,精简代码

大量的代码需要执行大量的逻辑,很容易造成bug。没有写出来的代码才没有bug,只要在编辑器中输入了字符,那么bug也可能潜伏在其中。重点是,如果代码不是特别繁琐,那么潜在的bug也会相应减少,最少编码原则可以将出现bug的可能性降到最低

如何写出最少代码?通常在写代码前要进行代码设计,而不是一来就开始敲代码,这是毋庸置疑的。简单的、通用的逻辑能减少代码量。对第一稿代码运用代码重构可以使代码简练,将最终版本转化为优雅的解决方案等,这都遵循了最少编码的原则。其实反复思考以及不断运用最少编码原则能够使任何垃圾代码变得优雅


我认为使用最少编程原则是每个程序员的成长目标之一,初学者,请不要说这是资深程序员或者说有经验的程序员才需要思考的问题,尽管初学者本身知识面不广,无法想到脑子里所学的以外的东西。但学习不是这样的,应该是多维度的去理解或扩充知识,这样才能让你脑洞大开,对某个问题才会有多个角度的理解,最少编程原则应该是我们一开始就应该试着去做的事情,虽然一开始几乎很难。 

举报

相关文章推荐

最少编码原则

本文作者是一位资深软件工程师,他根据多年的编程经验,把自己的观点组织整理成本文,希望能给大家一点启发。 “最少编码原则”并不是说写的代码少到令意思表达不清楚。其实在很多情况下,可以只写几行代码...

最少编码原则

本文作者是一位资深软件工程师,他根据多年的编程经验,把自己的观点组织整理成本文,希望能给大家一点启发。 “最少编码原则”并不是说写的代码少到令意思表达不清楚。其实在很多情况下,可以只写几行代码就能...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

最少知识原则(Least Knowledge Principle)

最少知识原则(Least Knowledge Principle),或者称迪米特法则(Law of Demeter),是一种面向对象程序设计的指导原则,它描述了一种保持代码松耦合的策略。其可简单的...

设计原则之最少知识原则 javascript

一个软件实体应当尽可能少地与其他实体发生相互作用,这就是最少知识原则(LKP),所谓软件实体是一个广义的概念,包括系统,类,,对象,模板,函数,变量等。而在javascript中,软件实体大多指的是对...

编程原则 -- 十个java语言编程原则(转)

十个java语言编程原则(转) 原则1:DRY(Don't repeat yourself) 即不要写重复的代码,而是用“abstraction”类来抽象公有的东西。如果你需要多次用到一个...

编码原则十日谈

转自:http://www.alisdn.com/wordpress/?p=256 前言为什么写这篇文章编写本文档的最初目的,是为研究院平台研发一部制定一套C++编码规范,以提高编码质量,进而提高软件...

迪米特法则(最少知道原则)

10.3.5  迪米特法则(最少知道原则)(Demeter Principle) 迪米特法则(Law of Demeter)又叫最少知道原则(Least Knowledge Principle)...

附汉字编码原则

附汉字编码原则  (2007-07-26 09:45:00) 转载▼     1.国家标准汉字代码体系 汉字字数繁多,属性丰富,因而汉字代码...

java并发编码原则

同步的一些简单的原则: 1.永远只是在更新对象得成员变量时加锁 2.永远只是在访问可能被更改的成员变量时加锁 3.永远不要在调用其它对象的方法时加锁 public class Test { ...

软件编码原则

每个程序开发人员都会受益于对编程的原则和模式的理解。为了给自己提供一个参考,我把这个概述写在这里。通过设计,讨论,或者回顾复习,它可能会对你有所帮助。要注意的是,它距离完成还有很长的距离,并且你也会经...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)