background image

.NET 和 J2EE 该相互学习什么

[前言] 写这篇 Post 源于我既做过.NET 开发又做过 J2EE 开发的经历。在这样的转变过程

中,我对单一平台开发所带来的思维局限性有了很多清晰却零散的想法。在看了振河兄的页

面间传递变量的方法及使用范围的讨论之后,我更能体会到在不同的平台进行开发,思维

方式会是如此之不同,原来那些零散的想法也随之不断在脑海中涌现,让我有了写下这篇

Post 的冲动。其实我一直都在宣扬一种观点:技术之间是相通的,精于触类旁通,善于联想

是我们程序员应有的优势。我们在专注

.NET 技术的时候,不妨在工作间隙休息的时候看

.NET 外面的世界。

        提到.NET 和 J2EE,一般都会想到它们之间兵戎相见,水火不容的关系,毕竟两

者都在努力地去虏获程序员的青睐,占领更多的市场份额。我无意去鼓吹

.NET 是如何如何

之强大,

J2EE 是如何如何的成熟,也无意去探究 NHibernate,Spring.NET 等等 Project 的起

源,只想从一个程序员的角度去看待两者在互相竞争的过程当中到底相互借鉴了什么,同

时探讨一下同时了解两个领域知识的必要性。好,让我们言归正传。

        还记得 2003 年初,我到了 DELL 公司实习,所承担的工作任务就是建立一个 Web 

Application 供多个有密切联系的部门使用,以提高部门间的协作程度。在选择用什么技术来

做这个

Web Application 的时候,我放弃了比较熟悉的 ASP,进而选择了 ASP.NET。正是做

这个

Project,我跟 ASP.NET 乃至.NET 结下了不解之缘。当时第一次接触到 ASP.NET,第一

个 感 觉 就 是 , 它 比

ASP 好 多 了 , 再 也 不 用 像 写 ASP 那 样 在 HTML 嵌 套 着 一 堆 堆 的

Scriptlet,动态内容的呈现都包含在一个个方法中,如 Page.OnInit()和 Page.OnLoad()等等,

这些方法让我看到

Client 端 JS 方法的影子。在开发 ASP.NET 页面的过程中,我需要做的就

是在页面中引入不同的

Web Control 或者是 HTML Control,这些 Controls 与 HTML 标签是

何等的类似,除了它有

ASP 的 prefix 和那时看起来如 Magic 一般的 runat="server"。这样的

相似性让熟悉

HTML 和 JS 的我很快掌握了 ASP.NET 的基本应用,而我也以极高的效率完

成了公司分配给我的任务,尽管我对诸如

Request、Response、Session 和 Application 这样的