Maven 约定大于配置理解

Maven 约定大于配置理解

18.10.9 松江图书馆

在刚接触到这6个字的时候,我反正是深深怀疑着,主要原因呢,是我不理解它具体的意思。

紧接着,我是一顿找啊,但发现在各类博中,并没有找到我想要的答案,但也随着知识体系的构建,慢慢有了些领悟。

约定大于配置,因为这个概念是在学习maven时,横空抛出来的,所以,个人总以为这只头关乎于maven,是maven的特性,但实则,约定大于配置更像是一种编程思维呢。

请听我来分析:

在汇编时代 ,编程语言通过二进制对硬件直接编码,然后转成电气信息来处理信息,语言再往上抽离,就有诸如c语言这样面向过程的语言,进而再抽离有了目前面象对象的高级语言 java C++ 等,而在这些高级语言中,我们不再使用10进行对硬件的直接编码,而是约定出来一些叫 类啊,方法啊,属性啊,还有什么封装 多态 继承之类的专用的名称和技术,而这技术,是定制这套语言的设计师约定的啊,设计师约定编程框架,约定使用new来创建对象啊,等等… 而我们不用 fresh(新鲜的)来创建对象,因为创建对象已对用new来约定了

讲到这里,我感觉又有了更深一层的体会,即便是汇编语言,使用10进行编码,最后通过编号信息转为电气信息,这本质也是一种约定啊! 比如发送100000000.经过什么解析,然后在显示屏有对应的颜色

~~ 此时,我感觉体内的知识体系大楼正在剧烈的晃动,关于约定大于配置其实不光是maven的体现,更应该是整个编程世界的体现,本质上约定大于配置就是实现物理世界和编程世界互通或互认的一种思维和技术实现.

而我们目前开发软件,一般都是基于IDE的,难道IDE不也是一种“约定大于配置”的体现吗?

而讲到maven,往往会特别重申它的“约定大于配置“的好处,是因为通过maven来构建一个项目,有它自己独道的好处,极大的便捷了我们的开发。

在IDE开发的基础上,maven又进一步的“约定大于配置“思维可以帮我们实现以下内容:

1 如果使用maven,它有仓库的概念,可以帮我们依赖jar包,方便我们管理jar包,在协同开发时,更优


2 maven有自己独特的本地目录结构,不受不同IDE开发的影响,用git或者SVN托管,有不错的结构


3 maven可作多模块开发,并可在父模块pom.xml中配置依赖和插件,方便多模块管理

题外,我个人感觉还有一点尤为重要,它的重要远远超过通过maven构建项目的带来的方便的重要性,那就是:越来越多的公司使用maven来构建项目,如果你不会的话?

呵呵。面试官不会爱你!


Maven 约定大于配置理解_第1张图片

你可能感兴趣的:(maven)