Maven专题第一章:写在Maven之前:程序员的那点事---消除重复,简化工作,提升效率和质量

目录

一、程序员的日常工作(理想版)

二、程序员的日常工作(忙碌版)

三、程序员的日常工作(悲催版)

四、消除重复,简化工作,提升效率和质量

  1. 开发:编码

a. 代码结构上:

b. 组件:

c. 框架:

d. java EE 项目中的那些框架:

  2. 资源管理工作的简化

        a.项目资源管理 中碰到的问题

       b. 解决方案:

3. 项目管理的简化

总结:

从程序诞生开始,各路人马就一直在研究消除重复,不管是编码、体力劳动、还是项目管理等方面,以前这样,以后也不会停止,相信后续会有更多更美的工具出现,让我们翘首以待


一、程序员的日常工作(理想版)

打卡,例会,

coding,coding,coding,coding   ……

吃午饭,小睡会儿

coding,coding,coding,coding ……

吃晚饭,散会儿小步

coding,coding,coding,coding ……

做完当日工作内容,不需要搭末班车就能够提早到家

看看书、刷个抖音、和老婆聊会儿天,关灯睡觉

 

二、程序员的日常工作(忙碌版)

打卡,例会

coding,cod^ 报ClassNotFoundException

          度娘-->尼玛,全都英文,眼花缭乱的

          阿里爸爸-->

         **DN-->要会员,要充钱--->找人借个账号-->

-->尼玛,版本又不对--->再各种找,-->

吃午饭,接着找包

run debug^报错,版本冲突-->各种找-->消除冲突

coding、coding 、coding……

吃个晚饭,多加会儿版,坐末班车回家

再找包……睡觉

 

三、程序员的日常工作(悲催版)

打卡,例会--》经理说:公司的框架要升级,大伙儿辛苦下,把各种包整理下

找包,找包,找包,-->尼玛,项目中这么多包,谁知道谁依赖谁,谁和谁冲突,-->祈祷

           -->度妈妈,请多点理解吧

          -->阿里爸爸多点支持吧

-->奋战完成-->经理说:小谢,客户这里催得紧,你抓紧下把这个模块搞出来

coding,coding,coding……

不吃饭了,不打卡了,不睡觉了,没有今天明天了,

coding,coding,coding……

吃个夜宵,错过了白班末班车,错过了晚班末班车,拿着睡袋在公司将就对付一晚吧

 

四、消除重复,简化工作,提升效率和质量

以上的内容,开个玩笑,不过java 和javaweb项目中的jar包,一向是小白和老鸟头疼的问题,找包找得身心疲惫,找包找到蓝瘦香菇,只有经历过的人才能够真正领略它的魅力。当然在项目中也经常碰到一些重复的功能,重复的模块,如果每一个项目都从零开始的话,那这些重复的工作就变成了体力劳动,实际上,当有了程序后,各路大神就已经在琢磨消除重复的问题。

让我们一起来看看,有哪些:

  1. 开发:编码

a. 代码结构上:

代码重用:方法、父类、工具类等等

b. 组件:

组件重用, 把很多项目需要用到的通用功能,独立出来,需要用到那个,直接导入使用即可,不需要再次开发

c. 框架:

完成项目底层结构的配置,让我们只需要注重业务逻辑即可

         1> 公司内部的开发框架:比如网络公司给人家做网站,当新来一个网站,基本上只需要做一个网站界面就可以,而  不需要从零开始,就出现了所谓的模板网站

        2>. 阿里巴巴:阿里巴巴开源的框架非常多,这些框架都是在阿里巴巴/淘宝内部用的非常成熟之后才开源出来,比如iceworks开发工具,这里面封装很多的前端框架,并集成到一起,可以很快速的搭建前段项目;

              阿里巴巴的开源工具列表:https://mp.csdn.net/postedit/86229651

       3>业界通用的框架:spring   springmvc  hibernate,mybatis等框架,每一个框架都在某一个方面给出了非常优秀的解决方案

 

d. java EE 项目中的那些框架:

展示层:  H5/css3/js/jquery --对应组件库:element-ui,jstree,d2admin等等       

控制层:   springmvc/Struts2 -->针对这个技术简单的介绍

业务逻辑层: springIOC/SpringAop

持久化层:    jdbc/Hibernate/Mybatis

数据库:mysql/Oracl-->navicate /pl/sql developer(工具)

 

  2. 资源管理工作的简化

        a.项目资源管理 中碰到的问题

              1>  j2ee项目中使用不同框架,肯定需要用到对应的jar包,原来的方式上网各种查,

              2>  框架版本不同,对应的jar包版本不一样,所依赖的jar包版本不一样,--》版本冲突,程序员要消除冲突,再次各种查,尤其是项目使用的框架版本升级的时候,稍大一点的项目会让整个项目组的同学蓝瘦香菇

              3> 对于国人来讲,English并不是强项,找到对应依赖包有点难度;国内目前很多资源站下载需要积分,要么需要购买会员,要么再去别地找找,而且有可能下载的资源还不是自己 所需要的,再次各种查

              4> 对于较大的项目,管理中痛苦必然存在:谁分得清这么多Jar包哪个和哪个依赖,哪个和哪个冲突?我不可能为了开发一个项目就去把所使用的框架,相关资源都背熟吧

              5> 不同项目可能用到某些相同的资源,那么会导致项目工作区资料冗余,浪费空间不说,还不易管理

                举个简单的例子:开发spring+hibernate+mybatis项目,每个项目所需要的基础包都一样,我们把这些工具包复制到web-info\lib目录中,我们才可以使用,这些完全一模一样的资源,使得我们的工作区存在大量重复文件,使得项目变得臃肿。我们需要瘦身的工具,最好是每个jar包,电脑里边只存一份就好

       b. 解决方案:

              1>  数不清的程序员在不停地做着这种体力上的重复,公司内部一般设置统一的资料库,在项目文档上进行相关的约定,从而提升效率,减少出错的几率

               2>使用项目管理工具,比如说本专题的主角:maven;使用Maven,可以享受统一规范的jar包管理体系,给个名字,给个版本号,它会自动从中央仓库下载这些jar包和他所依赖的jar包

 

3. 项目管理的简化

  1. 项目管理:编译、测试、打包、项目部署,这些方面也存在着重复

      从历史上有很多项目管理工具,包括  make-->ant-->maven-->Gradle等

    make介绍:https://blog.csdn.net/qq_36983118/article/details/79213483

    ant介绍:https://blog.csdn.net/qq997404392/article/details/76986978

   Gradle用法介绍:https://blog.csdn.net/u014624659/article/details/84700021

 

 

总结:

从程序诞生开始,各路人马就一直在研究消除重复,不管是编码、体力劳动、还是项目管理等方面,以前这样,以后也不会停止,相信后续会有更多更美的工具出现,让我们翘首以待

         

         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小帅陪你自学编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值