1. 程式人生 > >為何放棄Eclipse,選擇IntelliJ IDEA,看完終於明白了

為何放棄Eclipse,選擇IntelliJ IDEA,看完終於明白了

如果你初次用idea,毫無目的的度娘如何使用IDEA     浪費的將會是大量的時間。推薦可以看此套視訊學習(下載地址:https://pan.baidu.com/s/1gfeX3hD)
好進入正題!!


當你堅持用一週用IDEA後,你會真正的愛上它,哪怕前幾天是痛苦的熬過來,到最後你也會真正的明白為什麼我會讓你選擇它!!!




1 愛恨交加卻難以割捨的Eclipse


這真的是一個非常艱難的決定,我在大學那會就開始用Eclipse,一轉眼都10來年了,基本Eclipse中我可能會用到的快捷鍵我都是下意識的就能按出來。記得第一次使用的時候,驚訝的發現竟然有介面精美、功能強大、執行流暢於一身的IDE,感覺就是夢幻般的存在。特別是Eclipse(日蝕)和Sun這個名稱的關係,想想都忍俊不禁。


幾年前有朋友推薦試用過IntelliJ,第一反應就是常用的快捷鍵都找不到了,改成eclipse適配快捷鍵還有很多常用的不一樣。最終沒玩多久就放棄了。


但是Eclipse又是這麼多年來一直讓我愛恨交加的IDE,稍有些複雜的框架就會出現N多不相容的情況,但最終促使我下決心去找個更好用的IDE就是有時候真的不知道為什麼同樣的配置方式在不同機器卻不一定都會生效。我可不想每次為了同事配置機器耗費幾十分鐘,最終還只能是機率性成功。


其實,在一般常用的開發中,Eclipse真的還是最容易學習上手的。但是Eclipse的程式碼層面設計真心不夠好,以至於新版本釋出後與舊版本外掛居然還可能有相容性問題。如果你沒有被Eclipse的問題所困擾,其實完全可以繼續使用。除非你看了下文,想法有所改變...


2 讓開發更高效的IntelliJ IDEA


在用了一個月之後,漸漸發現他的強大之處,而且所有機器的配置都用一個配置手冊搞定了,無一例外。我終於可以只丟一個文件給新員工自己去操作了,省下來好多時間可以喝茶寫部落格。


2.1 更好的專案管理方式


2.1.1 project & modules


剛切換過來原本還挺困惑的,之前一直聽說只能一次開啟一個工程,而我這邊工程都是分模組化的,需要10多個工程組合在一起才能正常工作。後來發現,這裡的Project是類似於eclipse中的workspace,而Module是類似於eclipse中的project。這裡可不僅僅是名稱簡單更改了一下,IntelliJ中的Project真的是一個工程,有統一的Global Library,也可以正確的相互依賴,把原來為了方便開發的模組整合到一起進行管理。AWESOME!


2.1.2 超級方便的GIT專案管理


如果上一條你還沒理解,這裡有個最直觀的例子,就是這麼多工程每個都是一個獨立的Git project(因為不同工程會有不同許可權),做完一個功能都會有N個需要提交的module。之前總是會出現忘記提交某個模組的事情,但是現在的更新和提交就是對這個project下的所有module。就衝這點,就不得不換它了,不知道省下多少時間。


2.2 告別總是與預期不一致的配置


2.2.1 不一樣但更清晰的Settings目錄


該是IDE配置的東西都在Settings這裡能找到,工程的配置也在Project Settings裡面。為數不多的目錄分層很清晰,現在反而奇怪為什麼Eclipse的配置目錄看起來那麼暈。


2.2.2 告別總是改不掉的tab


Eclipse中真的是用盡渾身解數,配置了N處把tab改成4 spaces,但是你會發現在總有地方還是不生效。但是IntelliJ會完全按照你配置的預期來,而且預設就是4 spaces,只有SQL預設是2個。


2.2.3 預設的深色主題


終於能把整個介面快速改成酷酷的深色了,但是我最後還是上網去下了個配色感覺更好看,相容性也很好。Eclipse只能把寫程式碼的那一個視窗變成深色,還經常有顏色顯示的BUG。。。


2.3 更高的開發效率


2.3.1 程式碼的自動生成以及ZenCoding支援


其實這個Eclipse裡面也有,但是確實沒他智慧。舉個例子,就是它能生成某個類的測試類,還能正確的放到test相應的目錄下。


另外,ZenCoding支援非常好,寫html非常方便,tab就是快速補全,和原生整合的一樣。


2.3.2 對JS、CSS以及外掛更好的支援


Eclipse裡面基本對這兩個支援度差到無法直視,因為我Web寫的少,所以忍到現在。其他同事都是用其他IDE去寫Web,用eclipse啟動一下web server。現在只用這一個就行了。


2.3.3 更好的除錯


對於這點,只能說是碉堡了,甩了Eclipse幾條街。


執行過的行,可以立刻在程式碼介面提示相關的值,也不用一個Debug介面跳來跳去,而且還能在IDE中除錯JS,程式碼和介面的自動重新整理同步等等。我到現在也不知道為什麼在Eclipse中有時候改了程式碼,有時候會熱部署,有時候就是直接重啟server,還有時候不手動重啟都不生效。。。


2.3.4 快捷鍵


有更多更好用的快捷鍵,也有很多好用的新功能,自己去翻翻~


3 IntelliJ的坑


這個IDE也不是啥都好,在最初一週的試用評估階段,也是一堆坑趟過來的。不得不吐槽一下!


Maven的功能整合度一般:和eclipse的管理介面比差不少,特別是新增配置只能修改XML,檢視依賴需要到另外一個介面。


煩人的多層目錄:如果你使用Maven,就會發現居然在Project模式下,需要逐一開啟src/main/java這三層目錄才能看到java檔案,為什麼不能一起開啟。如果用Package模式,你會發現除了在classpath中的檔案,什麼都看不到,包括你WebContent下的,還要再開一個Web檢視。


超小的預設記憶體,記憶體溢位崩潰不提示:啟動記憶體一樣要和Eclipse那樣修改配置檔案,但是崩潰了就直接介面消失,找了一圈才發現自帶的JRE下有個崩潰日誌,發現記憶體居然不夠,最後加到1.5G才能穩定執行。


社群版的功能太弱,商業版收費不低:除非你只寫最基本的Java程式碼,涉及Web開發等真的沒有商業版,這個IDE也不怎麼好用。


git的push:我真心不知道為什麼不放到alt+~的選單或者右上角VCS控制中,藏那麼深,只能用ctrl+shift+k去開啟介面。


console多且分散:這個不是不好,它把不同的輸出放到不用的Console中,非常清晰,但是剛開始使用,你會發現你不確定會輸出到哪裡,在哪裡能看到。只能說學習成本高了一點。


Tool Buttons預設沒開啟:這個為什麼不開啟,雖然左下角有個圖示可以點開,但是你確定第一次使用看不到這些Buttion,使用者能找到相應的地方?!


4 總結


如果你只是想找個IDE來學習Java,那麼Eclipse會很快讓你進入狀態。


如果你是想找個能提升開發效率的IDE,那麼IntelliJ是非常值得嘗試的。


最後說一句,Java自己也是讓人愛恨交加,脫離了IDE,這門語言還是讓人用的麼?!


再次配上此IDEA視訊教程  讓你少走彎路,讓你少花時間 :
(下載地址:https://pan.baidu.com/s/1gfeX3hD)