写在最后
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
🎉本博客知识点收录于🎉👉🚀《SSM框架系列教程》🚀—>✈️01【高内聚低耦合、Spring概述、IOC容器、Bean的配置方式】✈️
文章目录
一、高内聚低耦合
1.1 程序架构设计
高内聚低耦合,是软件工程中的概念,是判断软件设计好坏的标准,主要用于程序的面向对象的设计,主要看类的内聚性是否高,耦合度是否低。目的是使程序模块的可重用性、移植性大大增强。通常程序结构中各模块的内聚程度越高,模块间的耦合程度就越低。
- 内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事,它描述的是模块内的功能联系;
- 耦合是软件结构中各模块之间相互连接的一种度量,耦合强弱取决于模块间接口的复杂程度、进入或访问一个模块的点以及通过接口的数据。
Tips:元素可以是方法、对象(类),也可以指系统、子系统、模块、服务等。
- 1)高内聚低耦合是软件架构的一种概念、思想;
- 2)内聚与耦合想相对的,内聚程度越高那么耦合度就低,内聚程度越低往往耦合度就高;
- 3)我们在软件设计时,应该尽量做到高内聚、低耦合;
1.2 低耦合
1.2.1 耦合概念
耦合,简单的来说就是元素(类)与元素(类)之间的关系;我们在设计程序时应该降低元素与元素之间的直接关系;降低元素与元素之间的耦合性;
假如一个元素A去调用元素B,或者通过自己的方法可以感知B,当B不存在的时候就不能正常工作,那么就说元素A与元素B耦合。耦合带来的问题是,当元素B发生变更或不存在时,都将影响元素A的正常工作,影响系统的可维护性和易变更性。同时元素A只能工作于元素B存在的环境中,这也降低了元素A的可复用性。
1.2.2 如何降低耦合
简单的来说就是元素A不能过度依赖元素B;
- 1)定制合理的职责划分,让系统中的对象各司其职,不仅是提高内聚的要求,同时也可以有效地降低耦合;
- 2)使用接口而不是继承:我们不难发现。继承就是一种耦合,假如子类A继承了父类B,父类B修改了任何功能将直接影响到子类,而接口则是将功能延迟到了子类中来实现;
1.3 高内聚
架构设计时的内聚高低是指,设计某个模块时,模块内部的一系列相关功能的相关程度的高低。相关程度越高,我们称之为高内聚,反之低内聚;内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系。
很明显,程序的内聚性越高,代表功能的相关性也就越高,从一定程度上来说,这个功能就应该属性这个元素;因此耦合性就降低了;
程序讲究的是低耦合,高内聚。就是同一个模块内的各个元素之间要高度紧密,但是各个模块之间的相互依存度却要不那么紧密。
1.4 不能完全低耦合
高内聚低耦合只是一个度的问题,我们并不能做到完全的高内聚低耦合;有时候太过严格反而会适得其反
一、网安学习成长路线图
网安所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、网安视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
三、精品网安学习书籍
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、网络安全源码合集+工具包
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、网络安全面试题
最后就是大家最关心的网络安全面试题板块
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!