·ChinaUnix首页 ·论坛 ·博客 
Linux首页 | Linux新闻 | Linux文档 | Linux论坛 | Linux下载 | Linux博客 | Linux搜索
新手入门 | 安装启动 | 管理员指南 | 开发手册 | 桌面应用 | 程序开发 | 数据库 | 网络技术| CentOS | Fedora | MySQL | Apache | Ubuntu | Gentoo| OSCON08
  Linux时代 >> 新闻
 
Java在桌面Linux上会成为占统治地位的语言吗?
来源: Linux论坛  日期: 2008.05.08 09:27 (共有条评论) 我要评论
 
由于Java已基于GPL开放了源代码,因为就算是最严格遵守纯正自由软件协议的软件也可以把Java打包进去。而事实上,确实有相当多的人已在这么做了。以前在开发中竭力避开Java语言的GPL的忠实拥趸,现在则开始把Java做为开源世界的优秀技术,努力让它融入进去。

  除了为Java取得GPL许可,Sun公司的Swing团队在Java 6中,还在力图使Linux桌面的外观看上去更美观。关于这样做的效果,我们不妨比较两幅截图。一幅取自真正的Linux GNOME桌面,另一幅则是利用Swing制作的。事实上,你将看难看出这两者的区别。Swing现在大量采用了GNOME正在应用的色彩和设计风格。虽然Swing还不是Linux平台上开发者的首选,但它确实没有其他Linux上的Java工具的弱点。

  Java基于GPL的开源确实来得不是时候,但幸好微软在这时发布了他们的Vista。当Windows桌面的开发者面对着难用而且安全性存在缺陷C或C++,他们纷纷转向了Visual Basic。但在Vista上,微软倾向于所有的桌面应用利用.Net管理代码,这一策略收到了奇效。但在Linux桌面上,开发者仍在延用C或C++语言,这样开发者就不得不面对令人棘手的安全问题和复杂的内存分配问题。很显然,Linux桌面的开发者也需要一场类似的转变,并且我们不得不说,这已是一场迟到的转变。而当Linux桌面的开发者着手类似于Windows平台的转变时,他们会发现,他们面临的只有两个选择;其中之一是由Novell所支持的Mono,另一个就是Java。

  对我来说,更倾向于选择Java出于以下几方面的原因。首先,Java的发展时间比Mono长得多。尽管Mono成长迅速,但Java 早在此之前已成为了一个稳定、成熟的平台。其次,Java包含了许多大量的开源工具和库文件。再次,Java拥有许多大型开发社区,并且在 SourceForge上的开源项目大多数采用了Java做为开发语言。在FreshMeat.net的情况也大致此,采用Java开发的项目达到了 5383个,而采用C#的只有284个。此外,Mono还存在一个发展瓶颈,这就是它的更新必须要滞后于.Net平台。而Java则是基于GPL发布的,随时可以保持更新。在协议方面,Mono同样存在一个陷阱,因为它的类库是基于MIT协议发布的,因此软件的开发者或所有者不能名正言顺地为利用到库的修正申请专利。

  如果你对我的观点持有异议,就还是请你原谅我对Java语言的偏爱吧。但我还是认为以上的观点还是有客观依据的,并且说明了Java将成为Linux桌面应用开发首选语言的主要原因。在开源平台上利用Java却有点名不正言不顺的日子再也不会来了。

  还有一点,Java与Linux将是一种互相促进的关系。桌面Linux希望在整个桌面市场上占有更大的市场份额,而Java能提高一个更高效、更安全、更容易排错的开发平台,并且利用这一平台,开发出的应用同样能跑在Windows上面。这不仅会促进Linux达成它的目标,还会最大可能地保护开发者的利益。从这个角度看,Java与桌面Linux可以说是天生的一对,地造的一双。

来源:IT专家网
  发表评论 查看评论(共有条评论)
 
 


最新资讯更多>> 
· 开发者发行版:Debian Live 5...
· 再谈 Ubuntu 8.04 Hardy LTS 软..
· 加拿大魁北克省政府被控无视自..
· Mozilla 85%资金来自谷歌 将再..
· 保障Linux系统桌面安全的九个小..
· 开源编译器GCC 4.3.2发布
· Ubuntu发布最新版安全更新 以修..
· 比苹果的操作系统更加的豪华Ub..
· 坏运连连 红帽RHEL自带Perl再爆..
· 点评番茄花园事件
论坛热点更多>> 
· 突然发现了初恋女友的下落。..
· ubuntu 上网设置问题 郑州广..
· 『有奖征集』ChinaUnix论坛L..
· 团长老婆多大?
· 一直打喷嚏
· 看看你是不是带错了!!!!!!!!!!zt
· 这有大学肄业的没?说说原因吧。
· sudo的问题。棘手
· 看到一个大二的孩子说把GCC和..
· MIPS资料合集
文档更新更多>> 
· traceroute命令和tcpdump命令
· Linux磁盘管理指令集(二)
· Linux磁盘管理指令集(一)
· 给笔记本电脑装Linux系统
· set uid ,set gid,sticky bit的三..
· 文件结构体struct file(Linux 2...
· rpm包的安装、删除、效验、查询
· git-svn 简介
· 基础_tar.gz,tar.bz2
· 使用yum 代替up2date 自动更新升..
 
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 友情链接 | 免费注册

Copyright © 2001-2008 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们