论坛首页 Java企业应用论坛

Lombok简化Java代码 - code for fun

浏览 33432 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-08-28  
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296
0 请登录后投票
   发表时间:2011-08-28  
key232323 写道
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296


这个跑题跑的...
我有尝试Groovy, 一个新项目用的就是Grails, 原有项目集成Groovy要成本,有引入的时间我早把活干完了.
集成Groovy有我知道的有3中方式,
1. 编译后引用, Groovy->compile to -> *.class 然后java应用, 这个问题有循环引用的问题
2. 用BSF直接以脚本的方式引用Groovy
3. 依赖Spring, GroovyBean 添加到Spring配置文件中.

在你的blog没看到groovy相关主题, 不知道你是否有实践. 对这个有兴趣讨论的话可以单开主题讨论.




0 请登录后投票
   发表时间:2011-08-28  
witcheryne 写道
key232323 写道
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296


这个跑题跑的...
我有尝试Groovy, 一个新项目用的就是Grails, 原有项目集成Groovy要成本,有引入的时间我早把活干完了.
集成Groovy有我知道的有3中方式,
1. 编译后引用, Groovy->compile to -> *.class 然后java应用, 这个问题有循环引用的问题
2. 用BSF直接以脚本的方式引用Groovy
3. 依赖Spring, GroovyBean 添加到Spring配置文件中.

在你的blog没看到groovy相关主题, 不知道你是否有实践. 对这个有兴趣讨论的话可以单开主题讨论.






sorry 跑题了——其实你后面两种都是我说的第二中而已。。。
我实践应该比较多了,用groovy写代码写了快三年了。
在groovy的世界里,很多框架都是浮云了,包括grails。。。(准备挨砖头,呵呵)
回头再讨论。
0 请登录后投票
   发表时间:2011-08-29  
key232323 写道
witcheryne 写道
key232323 写道
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296


这个跑题跑的...
我有尝试Groovy, 一个新项目用的就是Grails, 原有项目集成Groovy要成本,有引入的时间我早把活干完了.
集成Groovy有我知道的有3中方式,
1. 编译后引用, Groovy->compile to -> *.class 然后java应用, 这个问题有循环引用的问题
2. 用BSF直接以脚本的方式引用Groovy
3. 依赖Spring, GroovyBean 添加到Spring配置文件中.

在你的blog没看到groovy相关主题, 不知道你是否有实践. 对这个有兴趣讨论的话可以单开主题讨论.






sorry 跑题了——其实你后面两种都是我说的第二中而已。。。
我实践应该比较多了,用groovy写代码写了快三年了。
在groovy的世界里,很多框架都是浮云了,包括grails。。。(准备挨砖头,呵呵)
回头再讨论。

期待你的主题, 这里就不谈论Groovy了.
Lombok跟Groovy做事方法不太一样..

P.S: 你推荐的资源不错, 都是中文资源好理解
0 请登录后投票
   发表时间:2011-08-29  
key232323 写道
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296


3天就搞定……
嗯,人与人的区别就在此,哈哈
1 请登录后投票
   发表时间:2011-08-29  
KimHo 写道


3天就搞定……
嗯,人与人的区别就在此,哈哈


大哥,我夸张了——因为我也是从铁杆纯Javaer走出来的,只是因为很多Javaer遇到问题,寻求解决方式总是限制在一个圈圈中,所以我就夸大了这种说法,无非就是说学习曲线很平滑,大家不妨花点时间研究下Groovy。
0 请登录后投票
   发表时间:2011-09-02  
witcheryne 写道
jackra 写道
没看出哪好-_-||

特点是,简单,易用...

我最常用的是@Data 和 @Log4j 这两个注解. 省不少事.

@Data
@Log4j
@XmlRootElement(name="user")
@XmlAccessorType(XmlAccessType.FIELD)
public class User {
	
	private String id = null;
	private String name = null;
	private String password = null;

	private String workCode = null;
	
	private String telephone = null;
	private String email = null;
	
	public User() {
		
	}
	
	/**
	 * create user from DyeResourceTools.jar
	 * @param userInfo
	 * @return
	 */
	public static User fromUserInfo(UserInfo userInfo) {
		if(userInfo == null) {
			log.warn("occur a null userInfo parameter on creating user.");
			return null;
		}
		
		User user = new User();
		
		user.setId(userInfo.getStrUserId());
		user.setName(userInfo.getStrName());
		
		user.setWorkCode(userInfo.getStrWorkCode());
		
		user.setTelephone(userInfo.getStrTelephone());
		user.setEmail(userInfo.getStrEmailAddress());
		
		return user;
	}
}


这代码看起来多清爽

是很清爽,是不是会因为你一个人用这样的代码让整个团队也去用这样的代码呢?
0 请登录后投票
   发表时间:2011-09-02  
KimHo 写道
key232323 写道
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296


3天就搞定……
嗯,人与人的区别就在此,哈哈

2天就行,只要你熟悉java,没什么难的。
0 请登录后投票
   发表时间:2011-09-02  
key232323 写道
witcheryne 写道
曾经de迷茫 写道
直接 Groovy 吧


这个问题提的很好, 我也有考虑.
以前我一直像把Groovy/JRuby引入已有项目.. Groovy中集合了Ruby/Python这些脚本语言的语法优势,让人耳目一新.
有做过尝试,使用Groovy还是需要一定的上手时间,项目紧了,估计会扔一边了.

Lombok 和 Groovy对比的问题, 值得研究. Groovy是从语法出发,将java脚本化, Lombok更关注代码片段, 将各种最佳实践用注解来代替.

Spring/Hibernate用注解代替配置. Lombok用注解代替部分代码.



groovy引入到项目,还有什么额外的工作不成?

两种方式,一种直接groovy代码,编译成class再部署,开发方式一点变化都没有。

令一种用groovy源文件,用classloader去defineClass然后load,继续以前的开发方式。

至于快速从javaer 到 javaer * 30% + groovyer * 70%,

如果你java基础ok,3天,分别看3个文档,就ok了——

分别是
groovy-manning.groovy.in.action.2007.pdf
groovy-userguide.pdf
http://blog.csdn.net/hivon/article/details/4256296

groovy我关注过一阵子,但是我对他的性能实在是看不过去,你把他生成的class反编译回去,看着蛋疼,估计java7后有所改善。
0 请登录后投票
   发表时间:2011-09-02  
qiuboboy 写道

groovy我关注过一阵子,但是我对他的性能实在是看不过去,你把他生成的class反编译回去,看着蛋疼,估计java7后有所改善。


这一点不假——

不过编译过的class进行缓存后,也不过是多执行了一些method invoke方法而已,方法栈多出的数量级比spring框架bean的调用少多了——而且性能一般不在这儿,你可以用这样的代码做测试:

currentSec

loadClass()
newInstance()
invokeMethod(obj, 'testMethod')

endSec

其中
testMethod是用Sql批处理向数据库插入100条数据,分页查询出来100条,

你同样用java写这个testMethod(顺便看看jdbc和ibatis或spring jdbctemplate的性能差距)

在并发,用jmeter的junit做并发测试,你就会看到性能到底有差多少了——我一会儿再把这个写一遍跑个试试。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics