裁员潮下再读 SOLID原则!

你好,我是猿java。

我们用了 5篇文章分别讲解了 SOLID 的 5个原则以及使用,SOLID是 Robert C. Martin(也称为Uncle Bob)提出或者总结出来的经典之作,它可以适用于各种编程语言,通常会用来衡量一个模块,系统设计的是否合理。本文,我们将对 SOLID做一个系统性的总结。

SOLID是什么?

架构整洁之道 这本经典的书籍中有一套关于软件设计的SOLID 原则,SOLID 实际上是五个设计原则首字母的缩写,它们分别是:

  • 单一职责原则(Single responsibility principle, SRP)
  • 开放封闭原则(Open--closed principle, OCP)
  • Liskov 替换原则(Liskov substitution principle, LSP)
  • 接口隔离原则(Interface segregation principle, ISP)
  • 依赖倒置原则(Dependency inversion principle, DIP)

总结

  • 单一职责原则:任何一个软件模块都应该只对某一类行为者负责
  • 开放封闭原则:软件实体应该对扩展开放,对修改关闭
  • Liskov替换原则:子类型必须能够替换其父类型
  • 接口隔离原则:不应强迫客户依赖他们不使用的接口
  • 依赖倒置原则:高层模块不应该依赖低层模块;抽象不应该依赖于细节

SOLID原则是编程规范的一个里程碑之作,如果在日常的设计、编码和重构时能多参考这些原则,至少可以保证自己的代码不会太差,如果要写出优雅的代码,建议可以阅读一些优秀的开源框架,比如 Spring。

个人感悟

经济下行,互联网环境越来越糟糕,每个公司面试的要求越来越苛刻,八股文可以背,算法可以刷,个人认为今后拉开差距的一定是基本功,因为基本功是刻在骨子里的硬通货,比如,网络通信,计算机原理,编译原理,设计思维,如果能够在这些方面多花点功夫,多深入的理解一些,对于不同语言(java,golang,python,c等)和框架其实只是一种工具而已。

最近面试过很多阿里出来的P7,给我感触最深的一点是:他们当中很多都是 985名校,从毕业就进入了阿里,然后在一块很小的业务上拧同一种型号的螺丝太久,以至于他们明面是 P7,实际上技术深度和宽度远不足P6。

或许是这个环境造就的这种悲哀,也或许是他们一直在聚光灯下,顶着高薪的光环迷失了自我,以至于在这裁员的大潮中,他们被脱去光鲜的外衣,然后和市面上的岗位格格不入,高不成低不就。所以,建议同行的小伙伴,在日常的积累中一定要把基本功打扎实,切勿本末倒置。

在学历越来越不值钱的时代,真功夫才是你"卷"的实力。

学习交流

文章总结不易,感谢帮忙点赞,收藏,或者关注公众号:猿java,持续为你呈现更多干货!

原创好文

相关推荐
子兮曰11 小时前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
小羊没烦恼!11 小时前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
子兮曰11 小时前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
俊昭喜喜里11 小时前
java中的继承和多态的区别
java
小羊没烦恼!11 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
爱勇宝11 小时前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
譕痕11 小时前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码12 小时前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖12 小时前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时12 小时前
01-06-A-JVM排查实战详解
java·jvm