導航:首頁 > 編程語言 > java重構工具

java重構工具

發布時間:2022-12-12 12:22:28

㈠ IntelliJ IDEA怎麼開發

IDEA 全稱 IntelliJ IDEA,是java語言開發的集成環境,IntelliJ在業界被公認為最好的java開發工具之一,尤其在智能代碼助手、代碼自動提示、重構、J2EE支持、Ant、JUnit、CVS整合、代碼審查、 創新的GUI設計等方面的功能可以說是超常的。
IDEA是JetBrains公司的產品,這家公司總部位於捷克共和國的首都布拉格,開發人員以嚴謹著稱的東歐程序員為主。
2001年1月發布IntelliJ IDEA 1.0版本,同年七月發布2.0,接下來基本每年發布一個版本(2003除外),當然每年對各個版本都是一些升級。3.0版本之後,IDEA屢獲大獎,其中又以2003年的贏得的「Jolt Proctivity Award」,「 JavaWorld Editors』s Choice Award」為標志,從而奠定了IDEA的IDE中的地位。目前版本為9.0,2010年4月23日發布,更新版本為9.0.2。IDEA的宗旨:「Develop with pleasure」。
IDEA的優越
最突出的功能自然是調試(Debug),可以對Java代碼,JavaScript,JQuery,Ajax等技術進行調試。
其他編輯功能拋開不看,這點遠勝Eclipse。
首先查看Map類型的對象,如果實現類採用的是哈希映射,則會自動過濾空的Entry實例。 不像Eclipse,只能在默認的toString()方法中尋找你所要的key。
其次,需要動態Evaluate一個表達式的值,比如我得到了一個類的實例,但是並不知曉它的API,可以通過Code Completion點出它所支持的方法,這點Eclipse無法比擬。
最後,在多線程調試的情況下,Log on console的功能可以幫你檢查多線程執行的情況。
前面已經說過了IDEA所提倡的是智能編碼,是減少程序員的工作,那麼IDEA具體又有哪些值得推崇呢?總結以下25點,希望能有個比較全面的介紹。
1. 智能的選取。在很多時候我們要選取某個方法,或某個循環或想一步一步從一個變數到整個類慢慢擴充著選取,IDEA就提供這種基於語法的選擇,在默認設置中Ctrl+w,可以實現選取范圍的不斷擴充,這種方式在重構的時候尤其顯得方便。
2. 豐富的導航模式。IDEA提供了豐富的導航查看模式,例如ctrl+e顯示最近打開過的文件,ctrl+n顯示你希望顯示的類名查找框
(該框同樣有智能補充功能,當你輸入字母後IDEA將顯示所有候選類名)。在最基本的project試圖中,你還可以選擇多種的試圖方式。
3. 歷史記錄功能。不用通過版本管理伺服器,單純的IDEA就可以查看任何工程中文件的歷史記錄,但版本恢復時你可以很容易的將其恢復。
4. JUnit的完美支持。
5. 對重構的優越支持。IDEA是所有IDE中最早支持重構的,其優秀的重構能力一直是其主要賣點之一。
6. 編碼輔助。java規范中提倡的tostring(),hashcode(),equals(),以及所有的get/set方法,你可以不用進行任何的輸入就可以實現代碼的自動生成,從而把你從無聊的基本方法編碼中解放出來。
7. 靈活的排版功能。基本所有的IDE都有重排版功能,但僅有IDEA的是人性的,因為她支持排版模式的定製,你可以根據不同的項目要求採用不同的排版方式。

㈡ java中什麼是代碼重構,什麼時候需要代碼重構

代碼重構(英語:Code refactoring)重構就是在不改變軟體系統外部行為的前提下,改善它的內部結構。
軟體重構需要藉助工具完成,重構工具能夠修改代碼同時修改所有引用該代碼的地方。在極限編程的方法學中,重構需要單元測試來支持。
java重構:指程序員對已有程序在盡量不改變介面的前提下,進行重新編寫代碼的工作,一般有以下幾方面:
1、去除已知bug。
2、提高程序運行效率。
3、增加新的功能。
重構舉例:(簡化代碼、提升效率)

重構前:
if(list != null && list.size() > 0){
for(int i = 0; i < list.size(); i++){
//skip...
}
}

重構後

if(list != null){

for(int i = 0, len = list.size(); i < len; i++){
//skip...
}
}

何時著手重構(Refactoring)
新官上任三把火,開始一個全新??、腳不停蹄、加班加點,一支聲勢浩大的千軍萬"碼"夾裹著程序員激情和扣擊鍵盤的鳴金奮力前行,勢如破竹,攻城掠地,直指"黃龍府"。
開發經理是這支浩浩湯湯代碼隊伍的統帥,他負責這支隊伍的命運,當齊桓公站在山頂上看到管仲訓練的隊伍整齊劃一地前進時,他感嘆說"我有這樣一支軍隊哪裡還怕沒有勝利呢?"。但很遺憾,你手中的這支隊伍原本只是散兵游勇,在前進中招兵買馬,不斷壯大,所以隊伍變形在所難免。當開發經理發覺隊伍變形時,也許就是克制住攻克前方山頭的誘惑,停下腳步整頓隊伍的時候了。
Kent Beck提出了"代碼壞味道"的說法,和我們所提出的"隊伍變形"是同樣的意思,隊伍變形的信號是什麼呢?以下列述的代碼症狀就是"隊伍變形"的強烈信號:
·代碼中存在重復的代碼
中國有118 家整車生產企業,數量幾乎等於美、日、歐所有汽車廠家數之和,但是全國的年產量卻不及一個外國大汽車公司的產量。重復建設只會導致效率的低效和資源的浪費。
程序代碼更是不能搞重復建設,如果同一個類中有相同的代碼塊,請把它提煉成類的一個獨立方法,如果不同類中具有相同的代碼,請把它提煉成一個新類,永遠不要重復代碼。
·過大的類和過長的方法
過大的類往往是類抽象不合理的結果,類抽象不合理將降低了代碼的復用率。方法是類王國中的諸侯國,諸侯國太大勢必動搖中央集權。過長的方法由於包含的邏輯過於復雜,錯誤機率將直線上升,而可讀性則直線下降,類的健壯性很容易被打破。當看到一個過長的方法時,需要想辦法將其劃分為多個小方法,以便於分而治之。
·牽一毛而需要動全身的修改
當你發現修改一個小功能,或增加一個小功能時,就引發一次代碼地震,也許是你的設計抽象度不夠理想,功能代碼太過分散所引起的。
·類之間需要過多的通訊
A類需要調用B類的過多方法訪問B的內部數據,在關繫上這兩個類顯得有點狎昵,可能這兩個類本應該在一起,而不應該分家。
·過度耦合的信息鏈
"計算機是這樣一門科學,它相信可以通過添加一個中間層解決任何問題",所以往往中間層會被過多地追加到程序中。如果你在代碼中看到需要獲取一個信息,需要一個類的方法調用另一個類的方法,層層掛接,就象輸油管一樣節節相連。這往往是因為銜接層太多造成的,需要查看就否有可移除的中間層,或是否可以提供更直接的調用方法。
·各立山頭幹革命
如果你發現有兩個類或兩個方法雖然命名不同但卻擁有相似或相同的功能,你會發現往往是因為開發團隊協調不夠造成的。筆者曾經寫了一個頗好用的字元串處理類,但因為沒有及時通告團隊其他人員,後來發現項目中居然有三個字元串處理類。革命資源是珍貴的,我們不應各立山頭幹革命。
·不完美的設計
在筆者剛完成的一個比對報警項目中,曾安排阿朱開發報警模塊,即通過Socket向指定的簡訊平台、語音平台及客戶端報警器插件發送報警報文信息,阿朱出色地完成了這項任務。後來用戶又提出了實時比對的需求,即要求第三方系統以報文形式向比對報警系統發送請求,比對報警系統接收並響應這個請求。這又需要用到Socket報文通訊,由於原來的設計沒有將報文通訊模塊獨立出來,所以無法復用阿朱開發的代碼。後來我及時調整了這個設計,新增了一個報文收發模塊,使系統所有的對外通訊都復用這個模塊,系統的整體設計也顯得更加合理。
每個系統都或多或少存在不完美的設計,剛開始可能注意不到,到後來才會慢慢凸顯出來,此時唯有勇於更改才是最好的出路。
·缺少必要的注釋
雖然許多軟體工程的書籍常提醒程序員需要防止過多注釋,但這個擔心好象並沒有什麼必要。往往程序員更感興趣的是功能實現而非代碼注釋,因為前者更能帶來成就感,所以代碼注釋往往不是過多而是過少,過於簡單。人的記憶曲線下降的坡度是陡得嚇人的,當過了一段時間後再回頭補注釋時,很容易發生"提筆忘字,愈言且止"的情形。
曾在網上看到過微軟的代碼注釋,其詳盡程度讓人嘆為觀止,也從中體悟到了微軟成功的一個經驗。

㈢ 學習JAVA要安裝哪些軟體

1. IDEA
Java編程軟體業界最好的Java開發工具之一,支持常見的智能補全、語法提示、代碼高亮等基本功能。除此之外,還支持代碼審查、代碼重構、CSV整合、JUnit、GUI設計等高級功能,集成了Maven和Gradle構建工具,項目管理更加方便,因此使用的公司和個人非常多。
2. Eclipse
早期Java開發中使用非常廣泛,免費、開源、跨平台,插件擴展豐富,自動補全、語法提示和檢查等基本功能都能很好支持。在編寫、查錯、編譯、幫助等各方面非常不錯,對於Java編程來說是很好的選擇。
3. MyEclipse
在Eclipse基礎上發展而來的一個企業級Java開發環境,主要應用於Java、Java
EE以及移動應用的開發,基本功能和Eclipse差不多,具備完備的編碼、調試、測試和發布功能,完整支持Struts,Spring,Hibernate,Servlet,JSP等主流Java開發技術,在Java開發中使用的人也比較多。
4. VS Code
一個免費、開源、跨平台的代碼編輯器,運行速度快、佔用內存少,嚴格意義上說不是一個Java
IDE環境,但是配置好本地JDK路徑後,也可以當做一個不錯的Java開發軟體來使用,自動補全、代碼高亮、語法檢查、Git等功能都非常不錯,插件擴展豐富,生態環境良好。

㈣ 搞Java的LJ是什麼軟體

Intellij IDEA是業界公認的為最好的java開發工具之一。
簡稱IDEA ,是java語言開發的集成環境。IntelliJ在業界被公認,尤其在智能代碼助手、代碼自動提示、重構、J2EE支持、各類版本工具(git、svn、github等)、JUnit、CVS整合、代碼分析、 創新的GUI設計等方面的功能可以說是超常的。
IDEA優點IntelliJ IDEA工具在有些方面比較優秀,
IDEA提倡只能編程節省程序員工作量,有很多特色功能如編碼輔助JavaScript自動補全功能、html頁面編寫代碼功能,靈活排版功能等,相對於Eclipse的IDE工具實用很多。

㈤ 最好用的 JavaScript IDE 或編輯器是哪個

1.NetBeans
NetBeans是一款用Java編寫的開源IDE,是IDR解決方案最喜歡使用的Java IDE編輯器之一。
NetBeans IDE既可用於Java開發,也支持其他語言,特別是PHP、C/C ++,和HTML5。

2.Eclipse
Eclipse是一款主要用Java編寫的免費java ide。
Eclipse在Eclipse公共協議下可用,並且適用於Windows、Mac OS X和Linux。

3.IntelliJ IDEA Community Edition
IntelliJ IDEA Community Edition(社區版)是一款免費的Java IDE(集成開發環境),主要用於Android應用開發、Scala、Groovy、Java SE和Java編程。它設計輕巧,並提供如JUnit測試、TestNG、調試、代碼檢查、代碼完成、支持多元重構、Maven構建工具、ant、可視化GUI構建器和XML和Java代碼編輯器等有用的功能。

㈥ Idea是什麼意思

IDEA 全稱 IntelliJ IDEA,是java編程語言開發的集成環境。

IntelliJ在業界被公認為最好的java開發工具,尤其在智能代碼助手、代碼自動提示、重構、JavaEE支持、各類版本工具(git、svn等)、JUnit、CVS整合、代碼分析、 創新的GUI設計等方面的功能可以說是超常的。

IDEA是JetBrains公司的產品,這家公司總部位於捷克共和國的首都布拉格,開發人員以嚴謹著稱的東歐程序員為主。它的旗艦版本還支持HTML,CSS,PHP,MySQL,Python等。免費版只支持Java,Kotlin等少數語言。

總結:

盡管IDEA還有些不足,但作為一個超過10年生命力還如此強勁的IDEA,得到如此的美譽並不簡單。更何況IDEA的很多實際功能的確走在時代的前列,至於其存在的問題我們不如包容點,畢竟有些問題在現在的硬體基礎上根本就不能算是問題。

當然,無論如何的誇它,都只是別人的體驗,若真想了解它,唯一的方法就是自己親自去體驗。

㈦ Java中為什麼老是說重構,重構到底是什麼意思

首先,重構這個概念,不是JAVA所特有的,而是軟體工程的一個概念。
主要是指改善現有的程序代碼,使其更方便、簡單的使用,提高可重用性、可維護性。

在面向對象C++\C#\JAVA等語言中,重構的概念一般是指對類進行重構,一般在現有類的某些功能方法不能滿足擴展需要,或者修復BUG時,就需要重構
重構是一個可迭代的過程,可以對一個功能重復重構,直到其滿足軟體的需求、維護和可擴展性
重構的方法比較多,一本書也說不完,一些概念性的內容見網路
http://ke..com/view/120901.htm

㈧ idea社區版和商業版的區別

idea社區版和商業版的區別:
1、名稱不同,idea商業版指的是IntelliJIDEAUltimate;idea社區版指的是IntelliJIDEACommunity。
2、功能不同,IDEA商業版是java語言開發的集成環境,IntelliJ在業界被公認為最好的java開發工具之一,主要功能為:智能代碼助手、代碼自動提示、重構、J2EE支持;idea社區版的主要功能為:Ant、JUnit、CVS整合、代碼審查、GUI設計。
3、收費不同,idea商業版需要付費使用;idea社區版,免費使用。
IDEA全稱IntelliJIDEA,是java編程語言開發的集成環境。IntelliJ在業界被公認為最好的java開發工具,尤其在智能代碼助手、代碼自動提示、重構、JavaEE支持、各類版本工具(git、svn等)、JUnit、CVS整合、代碼分析、創新的GUI設計等方面的功能可以說是超常的。
更多關於idea社區版和商業版的區別,進入:https://m.abcgonglue.com/ask/12a8dd1615835325.html?zd查看更多內容

㈨ Java程序員都需要學習什麼

據我所知java編程需要學習面向對象、基本語法、JSP、WebServer以及常用的Java開發工具和常用框架等知識。學習java編程可以使用JBuilder、IDEA、Eclipse等工具。

如果有C++等面向對象語言的開發經驗,可以簡單的翻看一下介紹JAVA的相關書籍就可以了。如果是新手就需要花時間好好研究一下Java的語法了

做JAVA程序員都少不了和JSP以及HTML打交道。因此,想成為JAVA程序員就不可避免的要熟悉JSP和HTML,最好能知道JSP的幾個內置對象,如Session,Request,Reponse,以及常用的JSP標簽,如include,userBean等。如果再熟悉一下JS和CSS就更好了,那會使得製作的頁面更友好。

熟悉了以上這些已經可以製作出來JSP頁面了,但是頁面總要跑起來才能看到它的效果,這就要求必須熟悉一種WebServer,比如:TOMCAT,RESIN等。要學會如何發布應用,如何利用WebServer的資料庫資源等。

想要創維一名優秀的Java程序員,建議找一家專業軟體培訓機構學習,我推建AAA軟體教育集團,AAA教育集團(隸屬於深圳市漫動者教育科技有限公司),成立於2007年,專業從事高端計算機職業教育工作,是國內知名的教育品牌。集團創立以來,依託先進的辦學理念,AAA培養出數萬名專業性、實戰型高端技術人才,被業界譽為「互聯網金領生產基地」。

㈩ idea為什麼不能同時存在兩個項目

每個窗口只對應一個項目,這樣的設計是為了讓開發者更加專注於當前打開的項目。
要改一下application context中的內容「/mmall」,否則後運行的項目會覆蓋前一個運行的項目,因為它們都會部署到tomcat中的webapps下的ROOT文件夾中。
IDEA全稱IntelliJ IDEA,是用於java語言開發的集成環境(也可用於其他語言),IntelliJ在業界被公認為最好的java開發工具之一,尤其在智能代碼助手、代碼自動提示、重構、J2EE支持、Ant、JUnit、CVS整合、代碼審查、 創新的GUI設計等方面的功能可以說是超常的。IDEA是JetBrains公司的產品,這家公司總部位於捷克共和國的首都布拉格,開發人員以嚴謹著稱的東歐程序員為主。

閱讀全文

與java重構工具相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:758
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:383
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:893
app轉賬是什麼 瀏覽:163