这是一个 J2EE 发展的历史。Java 为什么会这么热,这么流行。
其实很大一部分是因为 SUN 的 Open 精神.
我这里说的 Open 并不是指源代码开放那样的 Open.
我认为,实际上 SUN 最有价值的是它在行业里的领头人形像。
它以与行业里的企业合作,共同协商,一起解决问题而著名.
[*] 为什么各个服务器厂家的配置都不同?
这很简单。每个厂家都有自己的实现方式。我拿用得最多的 C 语言来做个
比方。 ANSI C 是一个标准,但是标准只是保证各种实现一致性的最基本条件。
但是标准绝对不会成为一个限制各厂家发展和创新的东西。
我们看到 VC 和 BC 以及 GCC 或者 CC(Solaris) 对 C 的编译选项都是不一样的
这就为厂家带来了商机。符合标准,产品就有很好的兼容性,这样才能被客户接受
。但是如果还有创新,就能在市场里占有先机,得到更好的利润.
不同的配置正是各个厂家在实现自己产品时采用不同策略的表现.
[*] 会造成人为的部署障碍吗?
你可能没有看过 EJB Specification,或者没有仔细看过。
SUN 的这份文档不是由 SUN 一家定出来的,而是行业里各种代表共同协商出来的
。你说的问题他们也看到了,他们提出了一个解决方案。这就是你在
Specification里看到的 Role. EJB Specification 定义了好几个角色。其中之一
就是 Deployer. 他就是负责系统部署的专家。按照 EJB Specification 的描述
这其实可以成为一个行业,对不同的服务器比较熟,专门负责将系统部署到各个不
同的服务器里。
[*] .NET 和 J2EE 的最大不同
.NET 和 J2EE 谁也不可能取代谁。为什么这样说,看看 .NET, 微软件强大的开
发阵营,让微软的产品变得非常易用。可以说,在桌面应用中,微软是最伟大的。
它让更多的人在不需要很多的计算机专业知识背景下都能使用计算机。
但是在服务器等高端市场,易用性却不是我们最关心的。我们关心的是性能。
是可控性,是开放的接口,应用的可移植...这些都不是微软能做到的。
我最大的感受来自于 NT. NT 很好用,很简单,但是当我们需要在上面做一些扩展
时,却发现很多业务做不了,微软的东西封装得太过份了! 于是我们又换成了结构 Open
的 Unix。结果很容易的就在上面完成各种业务.
J2EE 是从另一个角度进入市场的。J2EE 在商业角度的根本出发点,是"共赢"。
J2EE 并不是以一个产品去取代其它的产品,相反,它的角度是让更多的产品共存
。并且让共存的产品能更好的协同工作。
其实我们早就进入了一种标准为中心的技术时代。标准维护着更多人的利益以及行
业的共性,但是又不会约束人的创造性和产品的异性.
所以,Java 和 .NET 其实是在不同的领域里。谁更好,更强? 真的很难说。
微软会让一切继续简单下去,但是 Java 也会让行业继续共存下去.