lambdaj - Project Hosting on Google Code.
看過好幾個 LINQ like closure solution on Java 的 syntax
用 lambdaj 的實現的 "Hello World" 也可以說是最簡單和和 Programmer Friendly
Java 相比 C# 係實現 LINQ / closure 最大問題係原自 Language Syntax
在不改變 Java Language 本身嘅情況下, 最多都只係類似 lambdaj 那種 很多很多 (((會眼花) 好易打錯(的多層 static method lambdaj)) 寫法
而且大量利用 Proxy 和 static method 的情況下, 程式的可讀性會出現問題
C# 有 delegate (a.k.a function pointer), 而且 delegate 都是 strong typed 的, 有很多都可以利用它來簡化
C# 甚至加入近幾狂亂的 Expression 去簡化往日很多由 programmer 的好多手工作業 (雖然我唔知道除左 LINQ 重有咩地方會想去用 Expression....PF? WF?)
C# 加入了 Extension Method 去修正先後次序的可讀性問題
我最近在 C# 實作了動態 ExpressionTree Builder ........對把這種功能整合到 Syntax 和 Compiler 有很深的體會, 那真的簡單很多很多很多
C# 3.0 很美, 但 Visual Studio 卻.....唉~~~ 都是 Eclipse 的錯.........寫不到 C#
Java 7, 依目前我所知的, 是跟不上 C#
沒有留言:
發佈留言