工程师必须知道的几个原则

Posted Jeff、yuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了工程师必须知道的几个原则相关的知识,希望对你有一定的参考价值。

DRY 原则

逻辑重复

校验密码和校验账号的两个函数有重复的逻辑。也就是有重复的逻辑,但是也不是重复的代码

功能语义重复

什么是功能语义,语句表达的意义。 实现一个检验IP合法性的。一个使用的是正则进行校验的,一个是通过hard code进行校验。这就是代码逻辑不同,但是语义是相同的

代码执行重复

执行了多次语义相同的逻辑代码。比如我们在在校验用户的登录信息是否正确的时候,先校验他的基本信息是否存在,再校验是否正确。但是我们在校验是否正确的时候已经 校验了是否存在了。所以不用重复了。

代码的可复用性

当有个同学写了一个工具类,这个工具类可以被我们各个地方使用。这就能说明这个代码的可复用性很高吗?

代码的复用

代码复用表示的是一个行为, 也就是我们在开发的时候复用了另一位开发同学的代码,来实现我们自己开发的业务需求。

如何提高代码的可复用性

  1. 减少代码耦合

  2. 满足单一职责原则

  3. 模块化

  4. 业务逻辑和非业务逻辑分开

  5. 通用代码的下沉(例如我们多个项目引入了同一个base SDK)

  6. 继承、多态、抽象、封装 (越抽象的类越容易复用)

  7. 应用模板等设计模式。其实只要你真的遵守了面向对象的SOLID设计原则,到最后抽象出来的代码就会是某种设计模式。

    设计模式的本身就是在使用面向对象设计原则的时候抽象出来的方法论。

Rule of Three 原则

  • 三分法则:什么是三分法则呢?第一次复用代码的时候不用进行复用,而在第二次的时候进行重构复用。

YAGNI 原则

  • You Ain’t Gonna Need It , 你不会需要他。这个原则结合我们的开发场景的语义就是不要做过度设计。
  • 刚开始开发需求的时候,我们通过评审后,了解了产品的需求,在进行架构设计的时候,过度考虑未来的场景。但是这的确是一个未知的场景,大概率不会到来。甚至有可能偏离。
    其实我们可以看出来,上面的两个原则的最终目标就时”尽可能少的资源浪费“。

kiss 原则

  • keep it simple and stupid,keep it short and simple ,keep it simple and Straightforward
  • 语义:尽可能的保持简单
  • 那在我们在写代码的时候如何评判这个简单呢? 1. 代码实现起来的难度 2. 代码的逻辑复杂度,3 代码是否容易理解。
    架构师的作用是什么,设计业务架构,物理架构。这些架构的作用是什么? 那就是将复杂的业务进行抽象且变得简单。刚也说过了一个业务约越抽象也就越容易复用。

以上是关于工程师必须知道的几个原则的主要内容,如果未能解决你的问题,请参考以下文章

Web安全工程师必须要知道XSS漏洞的几个要点,你知道吗?

Web安全工程师必须要知道XSS漏洞的几个要点,你知道吗?

产品经理可能需要知道的几个工具

JS 总结之关于 this 应该知道的几个点

成为Java工程师,你必须知道这几个常用的开发工具

可靠性工程 | 可靠性设计必不可少的几个工具