<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Linux開發(fā)環(huán)境必備十大開發(fā)工具

          Linux開發(fā)環(huán)境必備十大開發(fā)工具

          作者: 時間:2017-06-06 來源:網(wǎng)絡(luò) 收藏
            是一個優(yōu)秀的,但是如果沒有好的作為武器,這個環(huán)境給你帶來的好處就會大打折扣。幸運(yùn)的是,有很多好用的和開源供你選擇,如果你是一個新手,你可能不知道有哪些工具可用。本文將介紹其中十個杰出的開源,它們將幫助你提升自己的開發(fā)效率。

            1、Bluefish

            Bluefish是進(jìn)行Web開發(fā)時最受歡迎的IDE之一。它能夠處理編程和標(biāo)記語言,但是該工具的重點用途在于創(chuàng)建動態(tài)和交互式網(wǎng)站。和許多 應(yīng)用程序一樣,Bluefish是一個輕量級工具,運(yùn)行速度非???,它所占據(jù)的資源只有同類工具的30%到40%。Bluefish可以一次打開多個文檔(最高可打開3500個文檔)。它包含項目支持、遠(yuǎn)程文件支持、搜索和替換(包括正則表達(dá)式),無限撤消/重做、多語言定制語法高亮、窗口反斜線文本和多編碼支持等功能。

            Bluefish最漂亮的功能之一是用戶定義工具欄Quickba,它可以讓你通過“右鍵點擊并選擇增加到 Quickbar”的方式來增加按鈕。你可以增加任意HTML工具欄按鈕到Quickbar上。Bluefish還有許多操作簡化工具,可以幫助你增加不同元素到你的代碼中。需要一個DHTML自動提交選擇框?簡單。從DHTML下拉列表中選擇“自動提交選擇框(Auto-submit Select Box )”,然后填充必要的條目,就可以增加該元素到你的代碼中。Bluefish有針對C、Apache、DHTML、DocBook、HTML、 PHP+HTML和SQL的智能向?qū)?。如果是手動開發(fā)自己的網(wǎng)站,你應(yīng)該選擇使用Bluefish這個工具。

            該工具主頁:http://bluefish.openoffice.nl/

            2、

            是一個免費的開源C和C++開發(fā)工具。它的安裝非常簡單(在Mandriva上使用urpmi anjuta命令),提供項目管理、應(yīng)用程序向?qū)?、交互式調(diào)試器、一個強(qiáng)大的源代碼編輯器(支持源瀏覽、代碼完成和語法高亮功能)。團(tuán)隊開發(fā)的這個強(qiáng)大IDE非常易于使用,而且可以滿足你的C和C++編程需求。

            Anjuta具有一個靈活而強(qiáng)大的用戶界面,讓你可以在布局界面中拖拽工具來安排圖形用戶界面,使其與你希望的設(shè)計最接近。而且每一個用戶配置的布局對一個項目來說是可以持續(xù)生存的(因此你可以為每一個項目使用不同的布局)。Anjuta還具有一個強(qiáng)大的插件系統(tǒng),通過它你可以選擇激活或關(guān)閉哪一個插件。而且與所有開源項目一樣,你可以為Anjuta開發(fā)滿足你自己需求的插件。在Anjuta應(yīng)用程序中最大的工具之一是項目管理器。這個工具幾乎可以打開任何基于automake/autoconf的項目。這個項目管理器不會增加任何基于Anjuta的信息到這個項目中,因此在Anjuta之外,你的項目同樣可以被維護(hù)和開發(fā)。

            該工具的主頁:http://anjuta.sourceforge.net/

            3、

            是一個GNOME桌面環(huán)境下用于開發(fā)GTK+的RAD(迅速應(yīng)用開發(fā))工具。它的界面與GIMP非常類似,可以被用戶進(jìn)行定制化,甚至可以被嵌入到Anjuta中。

            包含許多界面創(chuàng)建控件,諸如文本框、對話標(biāo)簽、數(shù)字輸入框和菜單等,讓你可以更快速的開發(fā)界面。界面設(shè)計以XML格式存儲,從而讓這些設(shè)計可以被輕松的應(yīng)用于外部工具中。

            安裝Glade的過程非常簡單。舉例來說,如果你使用Fedora操作系統(tǒng),你可以使用命令“yum install glade3”來啟動安裝。Glade不像Anjuta一樣具有一個強(qiáng)大的項目管理器,但是你可以在Glade中創(chuàng)建、編輯和保存項目。

          本文引用地址:http://www.ex-cimer.com/article/201706/349393.htm
            4、GCC

            GCC是一個GNU編譯器,支持C、C++、Objective-C、FORTRAN、Java和Ada等語言。盡管它是一個命令行工具,但卻非常強(qiáng)大。許多IDE都使用它作為前端工具。GCC實際上是一套工具。

            最常見的用途是作為C和C++代碼的編譯器。你可能會有疑問,一個工具如何編譯不同語言的代碼?非常簡單:對于C來說,你調(diào)用“gcc”命令,而對于 C++來說,你調(diào)用“g++”命令。兩個編譯器在同一套工具集中。而且g++是一個編譯器,而不僅僅是一個預(yù)處理器。它可以直接從源代碼創(chuàng)建目標(biāo)代碼,而無需使用一個中介首先從C++代碼創(chuàng)建C代碼。這樣可以創(chuàng)建更好的目標(biāo)代碼,而且讓你掌握更好的調(diào)試信息。

            該工具的主頁:http://gcc.gnu.org/

            5、Kdevelop

            Kdevelop創(chuàng)建于1998年,是一個非常易用的KDE桌面環(huán)境IDE。Kdevelop目前在GPL下發(fā)布,可以免費使用。

            它是基于插件的,因此你可以通過增加和移除插件,來創(chuàng)建最適合你需要的功能。Kdevelop還支持描述性檔案(profile)功能,因此不同設(shè)置的插件可以與特定項目關(guān)聯(lián)在一起。

            Kdevelop支持15種編程語言,對每一種語言有其特定的功能。Kdevelop還提供一個內(nèi)置調(diào)試器、版本控制系統(tǒng)(Subversion)、應(yīng)用程序向?qū)А⑽臋n查看器、代碼段工具(code snippets)、集成Doxygen、RADio工具、支持Ctags、代碼格式重定、QuickOpen支持和??看翱诤凸ぞ邫诘裙δ?。 Kdevelop最好的地方之一是,它替用戶完成了眾多底層的任務(wù)。不斷處理make、automake和configure操作是一件令人討厭的事情。任何好程序員應(yīng)該知道這些工具,Kdevelop包含了一個Automake管理器,簡化了它們的使用。該工具另一個好用的功能是,該編譯器的輸出窗口是彩色的,因此你可以很容易的立刻看到錯誤、警告和信息之間的區(qū)別。

            該工具的主頁:http://www.kdevelop.org/

            6、GDB

            嚴(yán)格來說,GDB算不上一個開發(fā)者工具,不過它是多數(shù)*NIX開發(fā)者必備的工具之一。GDB就是GNU 調(diào)試器。這個工具從命令行中啟動,讓開發(fā)者可以立即獲得來自另一個被執(zhí)行的程序的即時反饋。如果你要創(chuàng)建、完成和發(fā)布一個應(yīng)用程序,可能需要了解問題所在。為了幫助你發(fā)現(xiàn)這些問題,你可以從gdb工具中啟動這個程序,它將幫助你發(fā)現(xiàn)問題所在。通過GDB你可以完成如下任務(wù):

            ·按照影響應(yīng)用程序行為的指定參數(shù)、開關(guān)或輸入來啟動它;

            ·針對特定行為終止應(yīng)用程序執(zhí)行;

            ·當(dāng)你的應(yīng)用程序停止時檢查發(fā)生的事情;

            ·修改應(yīng)用程序,迅速進(jìn)行測試。

            在處理漏洞報告時,GDB也非常好用。

            該工具的主頁:http://www.gnu.org/software/gdb/


            7、KompoZer

            KompZer是一個易用的所見即所得(WYS/WYG)Web開發(fā)工具,其目標(biāo)用戶是希望創(chuàng)建一個專業(yè)Web站點,而又不想了解HTML的非技術(shù)用戶。

            KompoZer具有眾多亮點功能。其中最強(qiáng)大的一點就是可以通過一個URL打開、編輯和上傳一個網(wǎng)站。這個功能讓你可以無需編輯HTML就可以簡單的對網(wǎng)站進(jìn)行更新。當(dāng)然,前提是你必須具有網(wǎng)站的上傳權(quán)限。在使用其它網(wǎng)站作為模板時,這個功能也非常有用。

            你不能把KompoZer看作一個只適合初學(xué)者的工具。它是微軟FrontPage和Adobe Dreamweaver的免費開源替代產(chǎn)品。和其競爭產(chǎn)品一樣,KompoZer可以通過點擊一個標(biāo)簽就實現(xiàn)代碼編輯和預(yù)覽界面的切換。

            該工具的主頁:http://www.kompozer.net/

            8、Eclipse

            Eclipse是一個Java語言編寫的多語言支持的IDE,它具有一個豐富的插件系統(tǒng),讓你可以對其進(jìn)行功能擴(kuò)展。平均每月被下載的次數(shù)超過100萬次,Eclipse是當(dāng)今軟件開發(fā)領(lǐng)域最強(qiáng)大的工具之一。實際上,Eclipse是開源開發(fā)的事實標(biāo)準(zhǔn)。

            Eclipse最強(qiáng)大的地方或許在于其插件功能。在支持編程語言方面,Eclipse號稱擁有高達(dá)58個插件?;谶@個功能豐富的,Eclipse擁有一個巨大的開發(fā)者社區(qū),而且很多機(jī)構(gòu)都提供該IDE的培訓(xùn),甚至在有的大學(xué)里將其列為課程之一。

            該工具的主頁:http://www.eclipse.org/

            9、Make

            Make是一個Linux工具,可以自動判斷大型程序的哪一部分需要被編譯。一旦判斷出哪些需要被編譯后,它將運(yùn)行必要的命令來完成這個操作。當(dāng)從源代碼安裝應(yīng)用程序時,經(jīng)常會用到Make,因此開源應(yīng)用程序開發(fā)者應(yīng)該對Make工具有比較深入的了解,明白如何使用它。

            如果你計劃開發(fā)一個需要從源代碼安裝的應(yīng)用程序,你需要知道如何軟件一個makefile。這個makefile描述了你應(yīng)用程序中不同文件之間的關(guān)系,并且包含了需要拼合在一起的聲明。如果你熟悉應(yīng)用程序安裝的話,你會了解這個命令:./configure;make;make install。

            10、Quanta Plus

            與Kompozer類似,Quanta Plus也是一個HMTL開發(fā)工具。Quanta Plus支持所見即所得(WYSIWYG),也支持代碼處理,它支持HTML、XHTML、CSS、XML(以及基于XML的語言)和PHP。

            Quanta Plus的特色功能包括快速標(biāo)簽完成、項目管理、實時預(yù)覽、PHP調(diào)試器、CVS支持和子版本支持(需要插件支持)。相對來說,Kompozer的主要目標(biāo)用戶是那些非技術(shù)專業(yè)用戶,而Quanta Plus則是針對那些希望有一個好的所見即所得編輯器的技術(shù)型用戶。

            該工具的主頁:http://quanta.kdewebdev.org/




          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();