裁员潮下再读 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,持续为你呈现更多干货!

原创好文

相关推荐
小bo波1 小时前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
阳光是sunny1 小时前
别再被 worktree 绕晕了!AI 编程时代你必须掌握的 Git 隔离神器
前端·人工智能·后端
万少2 小时前
万少的博客 - 技术分享与解决方案
前端·javascript·后端
咖啡八杯3 小时前
GoF设计模式——备忘录模式
java·后端·spring·设计模式
苍何3 小时前
腾讯再放大招,企微 Agent 大圆开启内测
后端
ethantan3 小时前
一篇讲解AI Agent 组成:像人一样思考的智能体
人工智能·后端·程序员
Cosolar5 小时前
vLLM 生产级部署完全指南
人工智能·后端·架构
IT_陈寒5 小时前
垃圾回收器选错了,我的Java服务内存炸了
前端·人工智能·后端
槑有老呆6 小时前
从 Prompt Engineering 到 Harness Engineering:AI 编程的下一次跃迁
设计模式
用户8356290780516 小时前
使用 Python 在 PDF 中创建与管理书签
后端·python