前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >工程师必须知道的几个原则

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

作者头像
袁新栋-jeff.yuan
发布2021-12-07 17:40:11
2010
发布2021-12-07 17:40:11
举报
文章被收录于专栏:用户4352451的专栏
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 代码是否容易理解。 架构师的作用是什么,设计业务架构,物理架构。这些架构的作用是什么? 那就是将复杂的业务进行抽象且变得简单。刚也说过了一个业务约越抽象也就越容易复用。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/06/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • DRY 原则
    • 逻辑重复
      • 功能语义重复
        • 代码执行重复
        • 代码的可复用性
        • 代码的复用
        • 如何提高代码的可复用性
        • Rule of Three 原则
        • YAGNI 原则
        • kiss 原则
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档