为什么80%的码农都做不了架构师?>>>   

在编程武林中,Java派成立较久底子雄厚,虽然掌门人Sun已经老态龙钟,镇山之技的Java语言已经被后进的新秀.NET派的C#压得喘不过气来,甚至有时候Sun老大还得跑到.NET派潜伏学艺。但是百足之虫,死而不僵,一众Java派的拥趸们自认虽然Java渐渐技不如人,但是Java派成立日久,从Java演化过来的七十二门绝技绝非武林暴发户.NET派所能比拟,其中几大支派如apache,springsource各有绝技,而衍生出的帮会、黑社会等等更是不计其数,.NET派望尘莫及。

然而江湖传言有不世神功叫北冥神功,“北冥有鱼,其名为鲲,鲲之大,不知其几千里也……”,能够容纳几千里的大鱼必定是非常广阔的海洋,因而北冥神功正是寓含了广大恢宏之意,也体现了神功的威力。“可以吸取他人的内力以供己用,是迅速提升功力的捷径。内力既厚,天下武功无不为我所用,犹如北冥,大舟小舟无不载,大鱼小鱼无不容。”

.NET派的几位高人闭关苦练,竟然悟出北冥神功,此神功后曰:IKVM.NET.

江湖后辈小子Ray Linn偶习此神功,得心得一二,不敢自珍,特此记之,以壮大我.NET门派,千秋万代,一统江湖。

那日Ray偶来到apache支派,却看到Apache弟子们各施绝技,好不热闹. Ray对Apache绝技手痒已久,想来得习IKVM.NET已有时日,斗胆上前叫阵。迎战者哪Apache派中的小弟子,江湖人称:commons.collection.

二人拳脚来去,Ray却懒得与之多动手脚,随即默念真言:

ikvmc -assembly:commons -target:library -version:1.0.0.0 commons-collections-3.2.1.jar

collection陡然萎靡在地,想是一身内功尽被Ray所吸去,Apache派人等尽皆失色,“我等苦练十余载,内力尽为汝一夕取去”,莫敢上前。

Ray回转.NET派,试练collection的神功,借助IKVM.OpenJDK.Core之神器,神功即成,试演如下:

using System;using org.apache.commons.collections;
using org.apache.commons.collections.functors;namespace MyLib
{class Program{static void Main(string[] args){String name = "Tim";Predicate nameJohn = new EqualPredicate( "John" );Predicate nameTim = new EqualPredicate( "Tim" );Predicate instanceString = new InstanceofPredicate(typeof(String) );Predicate instanceDouble = new InstanceofPredicate(typeof(Double));Console.Out.WriteLine( "Is Name John?: " + nameJohn.evaluate( name ) );Console.Out.WriteLine("Is Name Tim?: " + nameTim.evaluate(name));Console.Out.WriteLine( "Is this a String?: " + instanceString.evaluate( name ) );Console.Out.WriteLine( "Is this a Double?: " + instanceDouble.evaluate( name ) );}}
}

相较原有神功:

import org.apache.commons.collection.Predicate;
import org.apache.commons.collection.functors.*;
String name = "Tim";
Predicate nameJohn = new EqualPredicate( "John" );
Predicate nameTim = new EqualPredicate( "Tim" );
Predicate instanceString = new InstanceofPredicate( String.class );
Predicate instanceDouble = new InstanceofPredicate( Double.class );
// Testing all predicates for "Tim"
System.out.println( "Is Name John?: " + nameJohn.evaluate( name ) );
System.out.println( "Is Name Tim?: " + nameTim.evaluate( name ) );
System.out.println( "Is this a String?: " + instanceString.evaluate( name ) );
System.out.println( "Is this a Double?: " + instanceDouble.evaluate( name ) );

竟然绝无二致。

偌大Java江湖,从此为我.NET所用,哇哈哈。

作者: ray_linn 
声明: 本文系JavaEye网站发布的原创文章,未经作者书面许可,严禁任何网站转载本文,否则必将追究法律责任!

已有 48 人发表回复,猛击->>这里<<-参与讨论

JavaEye推荐

  • 上海:天会皓闻诚聘CTO技术总监
  • 上海:天会皓闻诚聘资深Java架构师
  • 北京:手机之家网站诚聘PHP程序员
  • 成都:月薪5千到1万招聘Java开发工程师
  • 上海:高薪诚聘Python开发人员

转载于:https://my.oschina.net/soar/blog/2516

IKVM 编程武林之.NET派的北冥神功相关推荐

  1. 树莓派python编程小车_00-树莓派做的遥控小车 python

    堆图预警 一. 背景交代 楼主男,想入门it,现小白.收拾柜子,发现了尘封已久的树莓派小板板(raspberry pi 26 pin),近期又在学习python,闲着无聊,故研究一下,ssh连接竟然能 ...

  2. [.net 面向对象编程基础] (20) LINQ使用

    [.net 面向对象编程基础] (20)  LINQ使用 通过上节LINQ的基础知识的学习,我们可以开始使用LINQ来进行内存数据的查询了,我们上节说了LINQ的定义为:Language Integr ...

  3. 大疆推教育机器人已到第二代!机器人编程玩具的前世今生是怎样的?

    热点追踪 / 深度探讨 / 实地探访 / 商务合作 大疆作为一个无人机品牌,可能已经无人不知,无人不晓了吧.但是,你知道大疆已经涉足教育机器人领域了吗? 继去年大疆推出首款教育机器人机甲大师S1后,今 ...

  4. 2005年博客与web2.0十大最拽的武侠人物

    2005年,网络江湖被博客和web2.0炒得沸沸扬扬高潮迭起.在乱世当中,谁是武林中的主角?西门吹草今天就胡扯几段,评出2005年博客与web2.0十大最拽的武侠人物.究竟这些人是英雄还是小人,是善还 ...

  5. 。2005年博客与Web2.0 十大武侠人物

    2005年,网络江湖被博客和web2.0炒得沸沸扬扬高潮迭起.在乱世当中,谁是武林中的主角?西门吹草今天就胡扯几段,评出2005年博客与web2.0十大最拽的武侠人物.究竟这些人是英雄还是小人,是善还 ...

  6. Python成长之路【第九篇】:Python基础之面向对象

    一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程–>错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个人 ...

  7. (转)Python成长之路【第九篇】:Python基础之面向对象

    一.三大编程范式 正本清源一:有人说,函数式编程就是用函数编程-->错误1 编程范式即编程的方法论,标识一种编程风格 大家学习了基本的Python语法后,大家就可以写Python代码了,然后每个 ...

  8. C语言,RPG小游戏

    老九C语言教程最后的笑傲江湖. 算是在编程门槛外面的深呼吸热身练习,基本上都是老九的那一套. gamelib.h #ifndef GAMELIB_H_INCLUDED #define GAMELIB_ ...

  9. ASP.NET入门猜想

    ·天极开发者网络倾情奉献:http://dev.yesky.com/ ·策划:方舟 [023-86583043] 与老燕聊天会感到他比较激进,看他的文章却有与一个理性的人对话的感觉.这种激进和理性在老 ...

最新文章

  1. mysql 硬解析 软解析_ORACLE sql语句的硬解析与软解析(收藏)
  2. webuploader 怎么在react中_React 项目性能分析及优化
  3. Spring核心——Bean的依赖注入
  4. vue重启node_【ts】vue-typescript-admin类型any仍然报错
  5. irobot扫地机器人 电压_【专利技术分析报告】“iRobot扫地机器人”核心专利
  6. 【机器学习】一篇白话机器学习概念
  7. Spring MVC架构流程(请求处理流程)
  8. char un 数组printf_c语言中能不能用printf函数直接输出数组?如printf(%d,a[3][3]);
  9. 史上最全Git学习教程
  10. 【Jmeter篇】jmeter+Ant+Jenkins接口自动化测试集成之报告优化(三)
  11. c 表达式必须是可修改的左值_C++中的左值,右值,左值引用,右值引用
  12. OpenCV中的图像插值示例
  13. Python生态工具、文本处理和系统管理(虚拟)
  14. 亮剑:PHP,我的未来不是梦(6)
  15. mac下selenium+python环境搭建
  16. 关于asp.net导出Excel [zz]
  17. Python写个小游戏:看图猜成语(下)
  18. 8700K + z370 安装黑苹果 Mojave
  19. 笔耕不辍,无问西东——2018年终小结
  20. java工程师面试题大全100%公司笔试题你都能碰到几个

热门文章

  1. MongoDB中的分组
  2. 电脑开机后,就会自动运行chkdsk,我想取消chkdsk,怎么取消
  3. Javascript:原型模式类继承
  4. 关于网站地址解析到65.49.2.178的问题和解决方法
  5. Yahoo网站性能最佳体验的34条黄金守则
  6. vue.js:利用vue.js做一个抽奖小游戏
  7. 关于jstl.jar引用问题及解决方法
  8. [No000022]他们说:得诺贝尔奖到底有多难?
  9. 【转】jQuery中的bind(),live(),delegate(),on()事件绑定方式的区别
  10. jquery this 与javascript的this