摘要:
本系列文章译自Venkat Subramaniam的Functional Programming in Java第四节:进化而非革命我们用不着转向别的语言,就能享受函数式编程带来的好处;需要改变的只是使用Java的一些方式。C++,Java,C#这些语言都支持命令式和面向对象的编程。不过现在它们都开始投入函数式编程的怀抱里了。我们刚才已经看到了这两种风格的代码,并讨论了函数式编程能带来的好处。现在我们来看下它的一些关键概念和例子来帮助我们学习这种新的风格。Java语言的开发团队花费了大量的时间和精力把函数式编程的能力添加到了Java语言和JDK里。要享受它带来的好处,我们得先介绍几个新的概念。 阅读全文
posted @ 2014-03-13 23:49
spidercoco
阅读(519)
评论(0)
推荐(0)
摘要:
听到ThreadSafe这个东西我的第一反应就是, ”天啊,又出了一个静态代码分析工具”。在内部开发中引入了像PMD或者FindBugs这类的工具,又花了不少时间优化成零警告后,我感觉已经不再需要其它的工具了。不过我真的错了。ThreadSafe这个工具跟别的代码分析工具一样,但有一点不同,它更专注于Java开发中一个非常重要的领域——并发。Contemplate的小伙伴们太给力了,他们注意到了需要有这么个工具,能快速定位到代码中可能存在的并发,多线程相关的问题。这个工具有两种使用方法——Eclipse插件或者Sonar插件。我用了下它的Eclipse插件去分析了inspectIT的源码,我们 阅读全文
posted @ 2014-03-13 21:29
spidercoco
阅读(881)
评论(0)
推荐(0)
摘要:
更多精彩文章请移步:Java译站 如果你用过反射并且执行过getDeclaredMethods方法的话,你可能会感到很惊讶。你会发现很多源代码里没有的方法。或许你也看过到这些方法的一些修饰符,并且发现里面有的方法是volatile的。顺便说一句,Java面试里如果问到“什么是volatile方法?”,你可能会出一身冷汗。正确的答案应该是方法不能是volatile的。同时getDeclaredMethods或者getMethods返回的一些方法,Modifier.isVolatile(method.getModifiers())的返回值是true。 immutator项目的一些用户遇到过这样.. 阅读全文
posted @ 2014-03-13 11:27
spidercoco
阅读(480)
评论(0)
推荐(0)
摘要:
每当你打开的Linux虚拟主机的时候,通常是为了完成工作。但是,一台普通的Linux主机上,有成千上万的开发者开发的软件,你能保证他们都是这么正经的? Linux的软件有加一些有趣的彩蛋的传统。本文主要是介绍一些有趣的命令和选项,让你的生活更多彩一些。这些并非全是彩蛋,不过我相信你多少会喜欢它们的。 文本编辑器 vim和Douglas Adams 熟悉Douglas Adams(也就是The Hitchhiker's Guide to the Galaxy一书的作者)的人,vim编辑器有个帮忙选项会让你赞不绝口。 如果你还没装vim。在Ubuntu/Debian,你可以这样:sudo 阅读全文
posted @ 2014-03-13 11:26
spidercoco
阅读(2374)
评论(0)
推荐(0)
摘要:
本系列文章译自Venkat Subramaniam的Functional Programming in Java 未完待续,后续文章请继续关注deepinmind。 第一章 你好,lambda表达式! 第一节Java的编码风格正面临着翻天覆地的变化。我们每天的工作将会变成更简单方便,更富表现力。Java这种新的编程方式早在数十年前就已经出现在别的编程语言里面了。这些新特性引入Java后,我们可以写出更简洁,优雅,表达性更强,错误更少的代码。我们可以用更少的代码来实现各种策略和设计模式。在本书中我们将通过日常编程中的一些例子来探索函数式风格的编程。在使用这种全新的优雅的方式进行设计编码之前,.. 阅读全文
posted @ 2014-03-13 00:31
spidercoco
阅读(13873)
评论(0)
推荐(0)
摘要:
本系列文章译自Venkat Subramaniam的Functional Programming in Java译者注:本篇会有点无聊,希望你不要睡着了。第一章 你好,lambda表达式!第二节:函数式编程的最大收获函数式风格的代码有更高的信噪比;写的代码更少了,但每一行或者每个表达式做的却更多了。比命令式编程相比,函数式编程让我们获益良多: 避免了对变量的显式的修改或赋值,这些通常是BUG的根源,并导致代码很难并行化。在命令行编程中我们在循环体内不停的对totalOfDiscountedPrices变量赋值。在函数式风格里,代码不再出现显式的修改操作。变量修改的越少,代码的BUG就越少... 阅读全文
posted @ 2014-03-13 00:30
spidercoco
阅读(2235)
评论(0)
推荐(1)
浙公网安备 33010602011771号