Linux环境下Java开发 Linux和Windows比较
在我刚开篇写这一系列随笔的时候,就有人问:在Linux下进行Java开发究竟有什么优势,如果都是一样安装JDK、安装Eclipse,那和Windows下开发有什么区别?这个问题问得很尖锐,的确,我们似乎根本没有必要把我们的工作从Windows中转移到Linux中来。
在Linux系统中进行开发,和在Windows中进行开发相比较起来,即有优点,也有缺点。下面是我的一些意见,欢迎大家讨论。
先来说说优势:
1、由Linux系统的本质决定的:
Linux的本质有三点,一是开源,二是免费,三是和Unix是一个体系。大家都知道,重要的应用几乎都是运行在Unix服务器上面的,这是因为Unix天生就是为服务器设计的操作系统,他的安全、高效是不用质疑的,后来为了向桌面发展,出现了X Windows,当然,我们可以选择在启动系统的时候不启动X Windows,抛去图形界面的包袱,系统当然可以跑得更快。而Windows操作系统天生是为桌面设计的,后来为了向服务器发展,出现了NT系列。当然,现在NT系列的服务器已经很成熟了,足以和Unix服务器竞争了。但是,它不是免费的,不仅不免费,而且卖得很贵。所以,选择Unix/Linux作为服务器操作系统,是可以为企业节约很多成本的。
本来,Java一设计出来就是可以跨系统运行的,我们完全可以在Windows系统下面进行开发,然后让程序运行在Linux系统下。但是,毕竟他们还是有少量的差别,比如文件路径。所以,我们在Linux系统下构建我们的系统,可以保证最大的兼容性。
2、有程序员的性格决定的:
程序员有一个性格,那就是喜欢不断接触新的东西,我们称之为黑客文化,或者说是玩家文化。在Linux系统中,你可以毫不费力的得到很多好东西,包括好的软件、好的代码、好的思想、好的经验。如果你喜欢系统编程,Linux自带gcc;如果你喜欢动态语言,Linux自带Python、Perl、Ruby;如果你要创建网络应用,Linux自带httpd、Sendmail等一系列网络软件;如果你要管理项目,Linux自带CVS、Subversion、AutoMake。总而言之,只要你感兴趣,Linux让你这一辈子都不会感到枯燥。
我在使用过Linux的命令行界面后,就再也不想去点击鼠标了,我觉得双手不离开键盘,做起事情来会更快。