一直听说java世界里有个Groovy,但是一直没时间去了解它究竟是一个怎么样子的。我们现在的项目里放了很多开源包,而且项目中做流程的时候,规则就是用Groovy实现的。近来闲来无事,于是开始认真的看看Groory究竟有什么好的。其实最初我接触它是因为Grails这一个框架,这两个都是为了实现一个目的,java的敏捷开发,与java的无缝对接。在某些情况下,java需要半天处理的事情,Groovy只需要几分钟,是的,几分钟…剩下来的时间,程序员终于有时间泡妹子了,^_^…….技术宅的兄弟,赶紧来看看吧。
脚本语言,动态语言?难道是javascript一类的?好吧,它的确和javascript有一点像,但是它太强大了,远远超出了javascript能处理的事情。这里不和javascript做比较了,直接来和Java比较吧,看看Groovy能做什么。
Groovy 的网站( http://groovy.codehaus.org ) 给出了 groovy 的最好定义: groovy 是在 java平台上的、 具有象 Python , Ruby 和 Smalltalk 语言特性的灵活动态语言, groovy 保证了这些特性象 java 语法一样被 java 开发者使用。 而且学习Groovy对javaer来说,是很容易的一件事情。如果你还没有开始学Ruby,来吧,和我一起来Groovying一下…………而且附带一个Grails来媲美Ruby on rails。
1.Groovy可以兼容java。
是的,你可以用java语法来编写groovy,最后还可以生成class文件,直接用java调用。你会说,这有什么好的,不就是改了个后缀名么?呕,也许吧…但是它的亮点当然不是这个,它的亮点是你可以在Groovy里面直接用java语法混搭写,当然不是很推荐这样做的。
2.Groovy是动态的。
不需要java的反射,不需要冗长的代码,不需要各种try catch 异常,你就可以实现各种神奇的事情。Groovy的class可以这样新增一个方法,或者调用它。
//用闭包定义一个方法 var1为参数 ,->后面是执行语句(当然参数不是必须的)
def methodA={var1-> print "this is methodA"}
//用闭包定义一个方法 var1为参数 ,->后面是执行语句(当然参数不是必须的)
def methodB={var1-> print "this is methodB"}
String.metaClass.addMethodA=methodA; //将methodA绑定为成员方法。
String.metaClass.'static'.addMethodB=methodB; //将methodB绑定为静态方法
String s="str";
s.addMethodA('good'); //实例调用方法A
String.addMethodB('hello'); //静态类调用方法B
以上的代码将两个方法添加到了String class里面(天哪,final的String 也被攻破了),然后分别用实例对象调用addMethodA,静态类调用AddMethodB.
3.Groovy是一把瑞士军刀。
java是一把基础工具,等你需要的时候,你需要到处去找jar包,来填充自己的程序,而且你需要看API去弄懂各种使用。此外,java的编写实在是太冗长了,为了打印一个HelloWorld,你需要编写class, 写一个main函数。对于Groovy来说:print “hello world!”.这一句就足够了,这只是开始…
通过 groovy 你能快速的打开控制台, 通过输入如下代码来输出所有的文件名 ( 递归处理 ) :
groovy -e "new File('.').eachFileRecurse { println it }"
即使 java 有一个名称为 eachFileRecurse 的方法和一个 FileListener 的接口,你仍旧需要显示的创建一个类, 声明一个 main 方法, 保存源代码到一个文件中, 并且编译它, 然后你才能运行它, 基于比较, 我们来看看 java 做相同工作的代码, 我们假设存在单独的 eachFileRecurse 方法:
public class ListFiles { // JAVA !!
public static void main(String[] args) {
new java.io.File(".").eachFileRecurse( // 假设 java 存在该方法
new FileListener() {
public void onFile (File file) {
System.out.println(file.toString());
}
}
);
}
好吧,下载一本好书《Groovy in Action[文字版][中文].pdf》,现在开始学习Groovy吧。
② 《Node.js实战》pdf下载在线阅读,求百度网盘云资源
《Node.js实战》([美] Mike Cantelon)电子书网盘下载免费在线阅读
链接:
书名:Node.js实战
作者:[美] Mike Cantelon
译者:吴海星
豆瓣评分:8.1
出版社:人民邮电出版社
出版年份:2014-5
页数:356
内容简介:
服务器端JavaScript?没错。Node.js是一个JavaScript服务器,支持可伸缩的高性能Web应用。借助异步I/O,这个服务器可以同时做很多事情,能满足聊天、游戏和实时统计等应用的需求。并且既然是JavaScript,那你就可以全栈使用一种语言。
本书向读者展示了如何构建产品级应用,对关键概念的介绍清晰明了,贴近实际的例子,涵盖从安装到部署的各个环节,是一部讲解与实践并重的优秀着作。通过学习本书,读者将深入异步编程、数据存储、输出模板、读写文件系统,掌握创建TCP/IP服务器和命令行工具等非HTTP程序的技术。本书同样非常适合熟悉Rails、Django或PHP开发的读者阅读学习。
本书主要内容:
Node.js及其扩展的安装配置;
全面理解异步编程和事件循环;
学会开发微博、聊天和游戏等热门应用。
作者简介:
作者简介:
Mike Cantelon
Node.js核心框架贡献者、Node社区活跃分子、资深培训师和演讲人。
Marc Harter
Node.js核心框架贡献者。
T.J. Holowaychuk
参与开发了很多Node.js模块,包括流行的Express框架。
Nathan Rajlich
大名鼎鼎的TooTallNate,Node.js核心代码提交者。
译者简介:
吴海星
2001年毕业于南京理工大学。编程数载代码不过几十万,翻译几年码字不过几百万。项目不过十几个,带队不到五十人。年过而立,惴惴不安,愈加发奋,孜孜求学,愿凭绵薄之力,贡献于IT社区。
③ 《把时间当作朋友(第3版)》pdf下载在线阅读,求百度网盘云资源
《把时间当作朋友(第3版)》(李笑来)电子书网盘下载免费在线阅读
资源链接:
链接:
书名:把时间当作朋友(第3版)
作者:李笑来
豆瓣评分:8.4
出版社:电子工业出版社
出版年份:2013-10
页数:334
内容简介:为什么你总是觉得“没有时间了”?最节省时间的方式是学习,为什么你“砍柴”而不肯“磨刀”?基于过程的记录,为什么迥异于基于结果的记录?一个人对时间的精确感知能力真的能训练得像特异功能?都是平凡人,为什么若干年后已有天壤之别?时间这条船,为什么只送心智成熟的人去往梦想的彼岸?绝大多数的成功与智商没有任何关系,所有的失败都与且只与时间有关。当你把时间花在一个人身上的时候,相当于在他的身上倾注了你生命的一段,不管最终结果如何,反正,那个人、那件事都成了你生命的一部分——不管最后你是喜欢还是不喜欢。
这本书从心智成长的角度来谈自我积累。作者通过自己职业生涯中遇到的事例,告诉我们:如何打开心智,如何运用心智来和时间做朋友,从而开启人生的成功旅程。
未经许可,不得以任何方式复制或抄袭本书之部分或全部内容
作者简介:他说,他是个“脱离了低级趣味的人”。人们问,什么是“低级趣味”?他说:“忽悠人、 吹牛—这是天下最恶俗的低级趣味。”不知道他26岁那年都发生了什么,他只是说:“突然有一天想明白了,于是……就这样了。”
他说:“把时间当作朋友。”他真的就这么做了。时间仿佛真的是他的朋友。10多年的时间里,他做过很多事情:销售、教书、写书、开公司,现在做天使投资人……他精力旺盛,学习能力超凡,随便什么东西,只要需要,就去学,并且能学好。最近一次惊到别人,是他以40岁的“高龄”学习网络编程语言Ruby On Rails,然后,按朋友的说法是“于4个月后(2013年1月)顺产”了一个大受欢迎的网站knewone.com……
他崇尚逻辑,追求深入思考,认为这是一个知识可以轻松变现的时代—当然,前提是,那知识是正确的,那逻辑是严谨的,那思考是深入的。这不仅是他所想,他所说,更重要的是,他竟然可以做到用行动和结果证明这个论断。所谓知易行难,可最难的事情,他已经做完了。
他就是这样—一个难得的人,做着难得的事情,写出难得的书,与你分享难得的经验与思考。
④ 《ASP.NETMVCinAction》pdf下载在线阅读全文,求百度网盘云资源
《ASP.NET MVC in Action》(Jeffrey Palermo)电子书网盘下载免费在线阅读
链接: https://pan..com/s/1b_TundAEtrBhZNjLf9baMw
书名:ASP.NET MVC in Action
作者:Jeffrey Palermo
出版社:Manning Publications
出版年份:2009-09-10
页数:350
内容简介:
HIGHLIGHT An insider's perspective on the ASP.NET MVC framework, a highly-anticipated proct that forms the basis for the next version of ASP.NET. DESCRIPTION The MVC pattern is widely accepted as the best practice for web development and is at the core of Rails, Zend Framework, and other modern web dev tools. Microsoft's new ASP.NET MVC Framework offers a fully-supported way for developers to implement MVC in ASP.NET. ASP.NET MVC in Action is a comprehensive guide to MVC-based development for Microsoft ASP.NET developers. It offers a clearly-written introction both to the ASP.NET MVC Framework and to the MVC approach. The focus is on creating real, maintainable web applications, guiding readers from first-use through real-life scenarios. ASP.NET MVC in Action shows readers how to test each piece of an ASP.NET application using the principles of test-driven development. This book assumes that readers know how to build a standard ASP.NET application and presents most examples in C#. KEY POINTS Expert insider authors have been working with ASP.NET MVC since well before it was publicly announced Written for the working ASP.N ET developer Introces test driven development and Agile processes - which may be unfamiliar to Microsoft developers MARKET INFORMATION Microsoft's ASP.NET is one of the most popular web development tools available, but it is no longer on the leading edge of innovation. Rails, Django, Seaside, and other frameworks have challenged Microsoft to improve ASP.NET. ASP.NET MVC represents the first major step in ASP.NET in many years, and will be embraced rapidly by ASP.NET developers.
作者简介:
Jeffrey Palermo is a software management consultant and the CTO of Headspring Systems in Austin, TX. Jeffrey specializes in Agile coaching and helps companies double the proctivity of software teams. Jeffrey is an MCSD.Net, Microsoft MVP, Certified ScrumMaster, Austin .Net User Group leader, AgileAustin board member, and an INETA speaker and Membership Mentor. He is an ASP.NET expert and has been working with Microsoft on the MVC framework since the initial prototype in March, 2007.
Ben Scheirman is a Principal Consultant with Sogeti in Houston, Texas. He studied computer science at the University of Houston and is a Certified ScrumMaster and Microsoft Certified Solution Developer. He enjoys speaking and blogging about agile development topics in .NET. Read his blog online at http://www.flux88.com.
Jimmy Bogard is a senior consultant with Headspring Systems in Austin, TX. His focus is using .NET technologies together with Agile methodologies. Back in 2005, he drank the Agile punch and hasn't looked at a waterfall the same since.