对Maven、gradle、svn、spring 3.0 fragment、git的想法
1.Maven
Maven可以构建项目,采用pom方式配置主项目和其他需要引用的项目。同时可结合spring3.0的新特性web fragment。
从现实出发,特别是对于管理不到位,程序员整体素质不是那么高的开发团队,采用这种方式未必能发挥其优势和功效,反而会成为制约前进的一种方式。
2.Gradle
对于gradle我是相当喜欢和推崇。但推崇不能盲目,和Maven一样拥有中央仓库且支持多种仓库方式。
同样站在开发团队管理和日常开发效率、舒适度、方便程度角度出发,我建议采用gradle的maven中央仓库来拆解传统jar包全在lib文件夹里的方式,是比较合理且无需太大的代价。此处的代价即人力成本、管理成本、学习成本等。
3.spring 3.0 fragment
Spring3.0的几个特性,确实让人无不欣喜若狂。而其中的web fragment对java面向对象模块化开发更是给了当头一棒,立刻让人醍醐灌顶。
有人说其实java面向对象没有什么模块化开发的概念,但是java底层类库又何尝不是一种模块化开发的思想呢。
如果不用gradle、maven、fragment构建项目,也未尝不可。因为我们用来千里之外,直取上将首级的杀人工具eclipse的Deployment Assembly在一档程度上可以实现主项目引用其他项目,以模块化的思想进行调用和开发。
但有了gradle,我们可以以极小的代价去除我们长久以来的老大难:lib中的jar太多太多。多的有些让人暴躁如雷,甚至同样是log4j,却出现了不同的版本。无意中想起一首歌,“神啊,救救我吧”。
有了fragment,我们可以更加彻底的实现模块化,不仅仅分割java代码实现后台服务层组件的低耦合,前台的页面也可以实现组件化。
4.Svn
从第一次用svn到现在,即便是将项目转移到了git上。我依然认为svn是个不错的工具。尽管有人列举出git的种种有点而将svn贬低的一无是处。诸如git可以实现分支管理,快速回滚等等优势。
很多转向git的开发团队说出的最多的原因,可能是git可以实现版本的迭代控制、分支管理,功能特别强大。其实我想说,svn在团队管理好的情况下也可以实现类似的功能。也许工作了稍微大了些,也许需要的代价比git大了写。但是这并不能掩盖svn也是个不错的工具的事实。
那重点来了,我为什么现在将项目转移到git。其实原因很简单,我没用过git,我想要尝试新的东西,同时git 的分制管理、版本迭代的天生优势也是我迫切急需的。
5.Git
Git的分支管理、版本迭代已经被大众耳熟能详了。好处就不再赘述了,我给git打99分。剩下的一分是怕他骄傲。哈哈。
大家可以登陆廖雪峰的网站,了解了解git。
对Maven、gradle、svn、spring 3.0 fragment、git的想法的更多相关文章
- ssh框架整合---- spring 4.0 + struts 2.3.16 + maven ss整合超简单实例
一 . 需求 学了这么久的ssh,一直都是别人整合好的框架去写代码,自己实际动手时才发现框架配置真是很坑爹,一不小心就踏错,真是纸上得来终觉浅! 本文将记录整合struts + spring的过程 , ...
- 使用spring 4.0 + maven 构建超简单的web项目
一.需求 使用spring去管理web项目,是目前非常流行的一种思路,本文将介绍使用maven+spring 4.0.2 来构建一个简单的web项目. 二.实现 1.新建一个maven项目,如下图所示 ...
- Myeclipse下使用Maven搭建spring boot2.0项目
现在需要搭建spring boot框架,并实现一个HelloWorld的项目,让程序真正运行起来. 一.在pom.xml中引入spring-boot-start-parent,spring官方的叫st ...
- Spring Framework5.0 学习(1)—— 用Gradle构建一个Java Project
1.0 安装Gradle,参考之前文章<Gradle入门实战(Windows版)> 2.0 使用gradle 快速生成一个Java project gradle init --type ...
- spring boot 2.0(一)权威发布spring boot2.0
Spring Boot2.0.0.RELEASE正式发布,在发布Spring Boot2.0的时候还出现一个小插曲,将Spring Boot2.0同步到Maven仓库的时候出现了错误,然后Spring ...
- [JSP]Maven+SSM框架(Spring+SpringMVC+MyBatis) - Hello World
来源:http://blog.csdn.net/zhshulin/article/details/37956105?utm_source=tuicool&utm_medium=referral ...
- 用Gradle构建Spring Boot项目
相比起Maven的XML配置方式,Gradle提供了一套简明的DSL用于构建Java项目,使我们就像编写程序一样编写项目构建脚本.本文将从无到有创建一个用Gradle构建的Spring Boot项目, ...
- 基于Maven + SSM (Spring、SpringMVC、Mybatis)构建一个简单的测试项目
最近在公司实习期间的培训交流中有机会接触到SSM,然后自己花费1周的时间投入学习.谈不上深刻理解其中原理,所以没有涉及理论知识,只是浅层次的学习如何使用,在此将学习过程记录整理出来,一方面自己备用:另 ...
- java进阶之-Maven,svn,git,maven合拼多个项目
git的使用介绍(写很容易懂得哦) maven合拼多个项目(写得很好哦) MAVEN作用:统一开发规范与工具:统一管理jar包 1.下载MAVEN 下载绿色版的面安装 2.环境配置 eclipse想 ...
随机推荐
- NodeJs之log4js
log4js log4js是一个管理,记录日志的工具. 其实与morgan的作用类似. 安装 npm install -g log4js log4js的6个日志级别 分别是:trace(蓝色).deb ...
- 札记:android手势识别,MotionEvent
摘要 本文是手势识别输入事件处理的完整学习记录.内容包括输入事件InputEvent响应方式,触摸事件MotionEvent的概念和使用,触摸事件的动作分类.多点触摸.根据案例和API分析了触摸手势T ...
- 拨开迷雾,找回自我:DDD 应对具体业务场景,Domain Model 到底如何设计?
写在前面 除了博文内容之外,和 netfocus 兄的讨论,也可以让你学到很多(至少我是这样),不要错过哦. 阅读目录: 迷雾森林 找回自我 开源地址 后记 毫无疑问,领域驱动设计的核心是领域模型,领 ...
- ABP文档 - 目录
ABP框架 概览 介绍 多层结构 模块系统 启动配置 多租户 集成OWIN 共同结构 依赖注入 会话 缓存 日志 设置管理 时间 领域层 实体 值对象(新) 仓储 领域服务 工作单元 领域事件(Eve ...
- Android学习路线总结,绝对干货
title: Android学习路线总结,绝对干货 tags: Android学习路线,Android学习资料,怎么学习android grammar_cjkRuby: true --- 一.前言 不 ...
- PHP与JAVA构造函数的区别
早期的PHP是没有面向对象功能的,但是随着PHP发展,从PHP4开始,也加入了面向对象.PHP的面向对象语法是从JAVA演化而来,很多地方类似,但是又发展出自己的特色.以构造函数来说,PHP4中与类同 ...
- CSS 3学习——边框
在CSS 3中可以设置边框圆角.边框阴影和边框图像,分别通过border-radius.border-image和box-shadow属性设置. 边框圆角 border-radius属性是以下4个属性 ...
- continue break 区别
在循环中有两种循环方式 continue , break continue 只是跳出本次循环, 不在继续往下走, 还是开始下一次循环 break 将会跳出整个循环, 此循环将会被终止 count = ...
- [转载]SQL Server 2008 R2安装时选择的是windows身份验证,未选择混合身份验证的解决办法
安装过程中,SQL Server 数据库引擎设置为 Windows 身份验证模式或 SQL Server 和 Windows 身份验证模式.本文介绍如何在安装后更改安全模式. 如果在安装过程中选择&q ...
- 【干货分享】流程DEMO-加班与调休
流程名: 加班.调休 业务描述: 加班: 工作日加班可以申请调休,也可以申请支付加班费.原则上都应申请调休:周末加班原则上申请调休:法定节假日加班支付加班费. 加班申请以半小时为单位. 当月加班不能 ...