网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Java的多线程-实现多线程及线程的.
.下一代WEB开发模式Tapestry简介.
.企业版JavaBean讨论.
.免费的开源应用服务器 JBoss 基础.
.经典:从追MM谈Java的23种设计模.
.IBM 易捷产品免费讲座 (张江).
.Web 服务代理组件创建 JSF Web 服.
.网友共享:JAVA语言中的几个常见错.
.使用MIDP2.0开发游戏(3)添加背景.
.Sun力推JDS数据库计划 开拓数据库.
.Java Applet编程技巧.
.JBuilder2005创建开发文档之编写.
.sub 方法.
.junit的开发(eclipse插件开发系列.
.对等计算实践:P2P遇上SSL.
.Java咖啡馆(10):情人节的Applet.
.windows定时关机程序.
.JSP/Servlet/JSF-Java异常框架设.
.一个新的Berkeley DB .
.基于Nokia S40的猜数字游戏之二.

有感“Java is not platform-independent, it is the platform”

发表日期:2008-1-5


       有感"Java is not platform-independent, it is the platform"

   国内的朋友对开发工具都有超乎想像的热情。
   每每连上开发类的站点,要么Delphi Vs VC,要么Java Vs C#。正巧,今天读到Bjarne的名句,深有感慨,不由就此说上几句。

   这是Bjarne对Java所说的那"一句"话:"Java is not platform-independent, it is the platform。"是的,它并非平台无关,它"就是"平台。
   原来如此.....以提倡跨平台起家的Java,又如何跨过自身的平台?借用明斯基拷问人工智能本质时的那句话:"用一把手钳,能拆开它自身吗?"

   现在的虚拟机还是非常简单的。仅仅提供了基础功能的抽象,可以安装运行在各个操作系统之上。但竞争的加剧也会让它的尺寸也再次加"巨"的,那时的虚拟机的复杂性又如何?它,会不会又是新一层的操作系统?
   .net起来了,Java起来了,那IBM呢?那CA呢?难道他们不想拥有搞自已的虚拟机?难道这个领域就不会有自已的Linus?是否又会出现千帆共竞的状况?
   我们不要打破了操作系统间的隔阂,又人为造出虚拟机的疆界!!!

   以其现代的编程思想,Java赢得了大量的推崇者。对,我知道你很推崇Java,但你不得不承认,要拥有跨平的互操作性,不仅仅是技术就可以解决的问题。
   要害在于规范。
   但,Sun在此问题上的态度并不让人满足。那种枉图将标准控制在自已手里以赢取商业利益的作法,实在是太过短视的。假如微软放弃标准控制权的.Net的中间代码、C#等标准得以通过....

   对我这样一个普通开发者而言,.net平台同Java平台最大的不同,就在于Java虚拟机是可以向下跨操作系统平台的,而.net的framWord是可以向上跨语言平台的。
   那么,从市场的角度来看,会发生什么呢?
   结论很简单,Sun必须放弃控制标准的企图!
   假如Sun仍执迷不悟,则.net成为标准的可能性将大为增力。接下来的,当然就是第三方厂商在各个操作系统上的移置。当然,也可能是微软自已,那要取决于它是否仍持以操作系统为中心的市场策略了。我想,这绝不是Sun所希望看到的结局。
   假如Sun放弃了对Java控制,则自法律角度来说,Java也将是可以生成.net的中间代码了(以微软一惯的卑鄙手段,它一定会这样做的)。而JVM,假如不开放对其它开发语言的前端,继续这许多编程的人力、物力资源,它靠什么来同.net竞争呢?
   假设都Sun能选择正确的市场策略,则JVM和.net都将是持多语言,接下来是什么?

    不再有语言之争,只有两个平台的framework之争!!!

    那么,在这些个平台上,我们将使用什么语言作开发呢?当然,原生语言是最好的选择,在.net上用C#,在JVM上用Java,那跨平台会不会是有最好的开发语言?那在第三方第四方的虚拟机平台上用什么?
    "XML",好多高声的喊叫。对,XML现在是跨平台的唯一希望了。但请不要忘记,XML全称是Extensible Markup Language,仅仅是一种标记语言。
     几个月前我同朋友有一场争论,核心焦点就在于XML是否图灵完备。在我个人看来,XSL即为其提供了完备的图灵机能力,让其有能力表达任一程序设计语言表达的语意。但一定没有人认为,XSL能实际运用于独立程序设计中,究竟,理论同实做仍有巨大的差别。
     假如XML只能用做粘合剂,那我们的问题仍在面前:跨平台会不会是有最好的开发语言?

     我的答案是否定的,没有对每个人每个目的都最佳的语言。其实对我来说,这个问题的答案就是C++,因为我熟悉它,喜爱它。你会有你的答案,也许是Perl,也许是Java。
     在将来,在XML超级粘合剂的支持下,选择语言的最大理由,也许只是个人的喜好而已。


上一篇:有关Applet无法在IE中显示问题的解答! 人气:968
下一篇:邮件例程 人气:446
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐