程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> Linux環境下Java開發 Linux和Windows比較

Linux環境下Java開發 Linux和Windows比較

編輯:JAVA編程入門知識
 

在我剛開篇寫這一系列隨筆的時候,就有人問:在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的命令行界面後,就再也不想去點擊鼠標了,我覺得雙手不離開鍵盤,做起事情來會更快。

Linux系統本身就有很多的選擇,可以選擇老牌的Red Hat,也可以選擇新秀的Ubuntu,或者Suse也行,社區版的Fedora也可以,當然,也可以選擇像我這樣的國產貨,支持SUN的朋友們當然也可以去使用Sun公司的Solaris,反正現在也開源了,不要錢了。我要說的就是,Red Hat的確是把它的丑堅持到底了,說它界面丑的不止我一個。對於國產貨,我覺得大家不應該有太多的指責,別人已經解決了最重要的中文字體和Qt庫的問題,已經給我們提供了一個很好的基礎,開發應用軟件應該是我們每個程序員的事,開發不出好的應用軟件,我們應該扪心自問,而不是罵別個操作系統廠商。

3、由市場決定的:

很簡單,懂Linux的程序員比不懂Linux更貴。不用多說了。

再來說說劣勢:

1、Windows門檻低,早就有人說過,Unix/Linux系統產生的是對程序員有利的價值,而Windows產生的是對非程序員有利的價值。我們程序員有時候也是非程序員,我們也需要聽歌、看碟、炒股票、打網絡游戲,這個時候,Windows就比Linux俏多了。界面的美觀是一個方面,應用軟件豐富又是一個方面,雖然SuSe的界面已經做得超過XP了,但是你安一個游戲都要./configure、make、make install半天,還不一定成功,自然是不如Windows爽了。

2、美工和網頁設計師離不開Windows,就拿我自己來說,最喜歡的網頁設計工具依然是Dreamweaver,雖然在Eclipse環境下,依靠HTMLEditor插件的文本著色和自動提示,我依然可以很快速的編寫HTML和CSS,但是找不到一款正宗的可視化網頁設計工具依然不爽。對於喜歡Photoshop的朋友,當然是非Windows不可了。

3、軟件的測試不僅要考慮到FireFox浏覽器,也要考慮到IE浏覽器,因此,無論如何,也少不了一台Windows。

總體來說,我們並不需要將所有的工作都搬到Linux平台中,在一個局域網中,只需要一台Linux就足夠了,其余的都可以是Windows,Linux服務器主要用來運行Subversion,用來進行每日構建和自動化測試,而Windows則主要是用來開發,當然,也要作為客戶端進行一部分的測試工作。

歡迎大家提出不同意見。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved