和 Eclipse 並肩十年後,我終於「投敵」IDEA 了
使用了 Eclipse 10 年之後,我終於投向了 IDEA……
最近,改用了 IDEA,同事都說我投敵了。當然,這些同事都是和我一樣的“老”程式設計師。不說畢業生,公司裡的 90 後基本電腦都不會安裝 Eclipse。
一、Eclipse 的三足鼎立時期
開始我寫 Java 程式,用的並不是 Eclipse,而是用的一款叫做 JBuilder 的工具。當時使用這個工具的時候,我已經覺得非常好用了,因為在此之前,我記得好像只是用個簡單的文字工具來編輯。後來才發現,那些喜歡宣揚文字編輯器才能精通 Java 的“高手”真的有點不敢恭維,至少於我而言,一個好的工具太重要了。
並沒有過了多久,我發現一款叫做 Eclipse 的工具,而且身邊用的人還越來越多,於是我決定試一試。嘗試的結果就是我發現它實在是太好用了,介面變得更漂亮之餘,裡面的功能感覺就是為程式設計師量身定做的一樣,最激動人心的功能是他竟然支援源源不斷的外掛,而且這個外掛還可以自己來編寫。
Eclipse 2001 年由 IBM 創立,2003 年就成立了基金會,可惜國內在那個時代總歸要慢一步,而我則更落後——直到 07、08 年才開始真正使用。《程式設計師》在 2006 年還出了一期專題——Eclipse 風暴。
那時,Eclipse、JBuilder、NetBean 三足鼎立的局面已經基本形成了。
二、Eclipse 稱霸
再後來出現了更加厲害的 MyEclipse,它集成了所有常用外掛,只要你一鍵安裝完就啥都有了,通過它你基本上可以開發出 Java 的任何東西(雖然它不是免費的)。
慢慢地,JBuilder 已經沒什麼人再使用了;至於 NetBean,不知道是不因為處於國內還是我圈子太窄,身邊用的人總是很少,倒是在國外翻譯的技術書裡經常和 Eclipse 一同出現。
重構的流行,讓 Eclipse 更受青睞。熊節在《重構》譯本里推薦 Eclipse,後來我親眼看了他使用 Eclipse 純鍵盤(基本不用滑鼠)飛快地重構程式碼,有點傻了眼。後來背誦快捷鍵成了我的一項課題。
在接下來接近 10 年的日子裡,就是它陪著我度過了漫長又有意思的程式設計生涯。雖然經常有人爭論用簡單版的 Eclipse 好還是用豐富的 MyEclipse 好,用豐富版的經常會嘲笑用簡單的,什麼都沒有,什麼外掛都得重新來一遍,用簡單版的又會鄙視使用豐富版的,什麼外掛都不會安裝。我曾經見過有一個同事,使用時對一切都滾瓜爛熟——每一個外掛在資料夾下叫什麼名字、應該刪除哪些檔案、應該放在什麼地方、應該增加哪些配置、怎麼安裝怎麼解除安裝都倒背如流,隨後我也慢慢學會了這招。再後來外掛安裝,已經不需要這麼麻煩了,只需要在市場上搜索再點選一下安裝就可以了。但這些功能的改進並沒有令其免除使用者群慢慢轉移的危機……
三、Intellij IDEA 橫空出世
其實很久之前我就聽說 IDEA 非常好用,說只要使用過後就不會在使用 Eclipse 了。還說 JetBrains 這家公司怎麼這麼懂 Java 程式設計師。但是,我實在找不到什麼改變的理由,所以一直沒有嘗試使用。況且我還需要開發 C++、Python 這些語言,Eclipse 都有完善相應的版本外掛支援。
其實在這段過程中,我也曾不斷詢問已經轉向 IDEA 的同事,想知道它究竟特別/好在哪裡,但沒有一個同事能夠清晰地回答我這個問題。大部分同事只是說就是很好用,你如果細細地問好在哪兒,他卻說不出來。
還有一些同事確實列舉了一些他認為更為好用的功能,但我聽完之後會告訴他,其實這些功能 Eclipse 也有。還有一個同事更搞笑,用了兩個月之後表示非常好用,然後我叫他把字型調大一些讓我看看,他竟然說不知道怎麼調——這些經歷實在讓我想不出什麼要改變的理由。
但是契機出現在不久前的一次公司組織的培訓,這幾位培訓不約而同的是都使用 IDEA 來培訓。其實,工具的不同並對培訓知識的吸收並沒有太大影響,但我實在忍受不了我明明花了一個小時聽培訓,但是隻聽了 55 分鐘的知識,剩餘 5 分鐘關於工具的使用技巧也應該吸收過來。再加之早就聽說 Robert C Martin 也許已從 Eclipse 轉向了這個工具,我終於決定要改變一下了。
改變第一天的安裝過程非常順利,官網提供免費版和試用版,我當然毫不猶豫地選擇試用版,至於 30 天以後,咱們心照不宣——再說。安裝過後當然是黑糊糊的一個介面,上面的所有按鈕實在是非常陌生,我使用了 10 年的那些快捷鍵發現全部不好使了,我甚至連怎麼匯入一個現有的工程都不會了。
我有點受不了了,我受不了的不是對新知識的學習與掌握,而是效率迅速降低 20 倍,甚至一百倍。沒辦法,一個一個問題百度吧。 大概過去了半天到一天,神奇的事情發生了,我竟然不再想繼續用 Eclipse 了,甚至產生了一種如果沒有 IDEA 一切會更麻煩的感覺。於是接下來的四天裡,我開始越來越順暢地編寫起了我的程式碼。
四、新手上路
對於只是使用了五天的我來說,我無論說什麼其實都只是一個新手的廢話,但我還是喜歡總結一下:
Eclipse 和 IDEA 哪個更好?
個人覺得 IDEA 確實比 Eclipse 要更好,但是它的好處並不主要是多了哪些功能,從功能的多少數量上來說,他們倆其實是差不多,IDEA 更優秀的關鍵點不過在於它在細節上更為人性化,做得更優秀而已。
比如配置 Tomcat,我竟然不用百度,自己嘗試點點,就成功跑起來了,那一刻感覺它像是真的懂我的心一樣。
開始使用的一些注意事項
如果你是剛開始程式設計,那就沒什麼關係,但是像我一樣是用了 Eclipse 很多年的老程式設計師,那麼快捷鍵一定會是一個障礙,但是 IDEA 已經做了很人性化的設定,預設的快捷鍵可以一鍵改成 Eclipse 的快捷鍵,但是我嘗試後發現,雖然確實改變了大部分,但並不是百分之百,所以我放棄了。
還有就是對工程和模組要理解好,以前的 Eclipse 都是做工程的概念並沒有模組的概念,所以你可以把很多的工程都匯入進去,但是 IDEA 完全不一樣,它只能匯入一個工程,如果你要再匯入另外一個工程,必須新開一個介面,當然你不用擔心耗費記憶體的問題,已經優化好了。但是在一個工程裡面你可以匯入多個模組,其實這更適合我們平常的開發,因為 Maven 就是模組化的配置。
Tomcat 的設定也非常人性化,通過勾選 Tomcat 例項,就可以一個 Tomcat 多個工程使用了。當然,埠要不同,才能同時啟動。
三個很常用的設定按鈕:
-
Preperences
-
Project structure
-
Run configuration
常用的快捷鍵(Mac):
-
cmd+shift+f 全project或模組等查詢某個字串
-
cmd+shift+o 查詢檔案
-
cmd+0 查詢類
-
cmd+f 本檔案中查詢字串
-
cmd+x 刪除一行
-
cmd+c 選中該行並且複製
-
alt+enter 自動提示錯誤修復
-
ctrl+alt+h 顯示呼叫該方法的方法
-
cmd+7 顯示該類的全部方法
-
cmd+alt+l 整理程式碼格式
-
ctrl+alt+o 整理import
-
shift+f6 重構rename
……
還有很多,基本都和 Eclipse 不同,但是我必須一個個“尋找”回來。
我喜歡的特色功能
-
IDEA 預設下面顯示了 teminal,很好用,現在我很少用 Mac 自帶的終端(雖然 Eclipse 找找也有,但實在不好用)
-
右手邊有個資料庫連線,我現在也很少用 Navicat 和 MySQL Workbench 了
-
同樣右邊的 Maven 也很好用,不像 Eclipse 要右鍵,而且預設的還不齊全
JetBrains 確實是偉大的公司,後來我寫 JS,也用了它的 WebStorm;寫 Python 也用了它的 PyCharm 而不是 Eclipse 的 PyDev 了。
雖然斷斷續續又用了一段時間之後,我發現它並沒有想象中完美:
-
偶爾有些卡,畢竟太多東西放記憶體,而且也出現過閃退;
-
快捷鍵實在還有些記不住,有個快捷鍵要按四個鍵太難記了。有些個別功能感覺還是有點不如 Eclipse 方便,比如改字符集(也可能只是我不熟悉),斷點除錯也還不習慣;
-
也有很多功能真的要把 Eclipse 徹底忘記,比如重構 rename,IDEA 竟然預設把同名的都 rename 掉。我重構個我自己寫的類的 get 方法,它把 map.get 的 get 也 rename 掉了,真的有點無語。不過習慣就好,總比漏了一些 rename 自己慢慢改好。
再見,Eclipse。
原文:https://www.cnblogs.com/ouyida3/p/9901312.html
本文授權轉載自噢咦嗒的部落格,作者Danni3,版權歸其所有。
【完】
熱 文 推 薦
☞ 下一次 IT 變革:邊緣計算(Edge computing)