<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    www.baidu.com

    JavaCode--我愛你,芳兒

    JavaStudy--我愛你,芳兒

    Windows平臺(tái)的ruby IDE 點(diǎn)評(píng)

    在MacOS平臺(tái)幾乎沒有什么爭(zhēng)議性,大家都用TextMate。但是Windows平臺(tái)可供選擇和使用的IDE很多,卻各有各的長(zhǎng)處和短處。基于我用過的所有ruby IDE點(diǎn)評(píng)一下。windows平臺(tái)的RoR IDE主要分為兩類:一類是重量級(jí)的全功能IDE,例如Eclipse,Netbeans,IDEA和jedit,運(yùn)行起來很耗資源,功能比較齊全;另一類是輕量級(jí)的IDE,例如Komodo,RoRed,vim,emacs,E,下面一一點(diǎn)評(píng)之:

    一、重量級(jí)的IDE

    1、radrails - 當(dāng)前最值得推薦的IDE

    radrails是基于Eclipse的插件,當(dāng)前版本0.7.2。radrails繼承了Eclipse平臺(tái)的各種功能,尤其是CVS/SVN集成特別好,和其他ruby IDE相對(duì)比來說,radrails最主要的優(yōu)點(diǎn)在于bug很少,功能非常齊全。

    1) 相對(duì)于其他大多數(shù)RoR IDE各種各樣的bug,radrails在0.7.2版本的表現(xiàn)非常的穩(wěn)定。在我連續(xù)幾個(gè)月使用下來,基本沒有什么大的bug。

    2) 功能齊全,其他IDE或多或少功能都有缺失,但radrails功能非常齊全:內(nèi)置的server管理,generator,rake task,rdoc檢索,plugin安裝,規(guī)則表達(dá)式校驗(yàn),tail log,,console調(diào)試窗口,debug,代碼格式化,代碼和模板高亮,ruby代碼和rhtml模板的template自動(dòng)提示,單元測(cè)試支持,代碼和測(cè)試之間的跳轉(zhuǎn),代碼和模板之間的跳轉(zhuǎn)等等等無所不包。

    3) 中文支持非常好,UTF-8編碼支持也非常好。中文字體顯示也很漂亮,這一點(diǎn)對(duì)我們來說很重要。

    但是radrails也不是沒有缺點(diǎn),radrails的致命缺點(diǎn)是其RDT功能太弱智。

    1) 代碼的感知能力很差,連我敲一個(gè)def回車都不會(huì)自動(dòng)補(bǔ)齊end。而且也不能夠搜索ruby庫(kù)文件進(jìn)行語法樹分析,所以沒有智能提示功能。

    2) 沒有像Eclipse的JDT那樣的Ctrl+O來快速導(dǎo)航到某個(gè)方法的功能,這一點(diǎn)對(duì)我開發(fā)很重要,否則我就總是需要通過serch "def 方法名"才能快速找到要修改的方法,非常不方便,這是我非常垢病RDT的一個(gè)地方,也沒有F3快速導(dǎo)航到類定義文件的功能。

    RDT下一個(gè)版本0.9.0號(hào)稱在兩周以后就會(huì)發(fā)布(RDT快兩年沒有推出新版本了,實(shí)在是太遲鈍了),貌似對(duì)于腳本語言的AST解析能力大大增強(qiáng),如果真的是這樣,還是很值得期待的,預(yù)計(jì)RDT0.9.0發(fā)布幾周之后,radrails就會(huì)發(fā)布0.8版本。另外值得一提的是radrails得到了SAP的一些贊助和支持。

    2、Netbeans - 最值得期待的IDE

    Netbeans6.0M7提供了Generic Language Support Framework,一個(gè)很強(qiáng)大的腳本語言框架,在這個(gè)框架基礎(chǔ)上提供的ruby和ruby on rails支持表現(xiàn)非凡。可以對(duì)ruby語言和庫(kù)進(jìn)行良好的語法分析,從而提供智能化的代碼提示功能,讓ruby程序員也可以享受到敲一個(gè)“.”就能夠跳出來詳細(xì)提示的功能,真正有了寫Java程序的安全感。有些優(yōu)點(diǎn)確實(shí)很棒:

    1) 代碼感知能力超強(qiáng),不但系統(tǒng)庫(kù)的API,你自己項(xiàng)目的所有類API都可以根據(jù)上下文提示,有了寫Java程序那種安全感了,也不用跳轉(zhuǎn)來去找類定義文件了。

    2) 快捷的打開rails庫(kù)文件和ruby所有庫(kù)文件,類似在Eclipse里面打開依賴庫(kù)的源代碼和JDK的源代碼的功能,對(duì)于學(xué)習(xí)和熟悉ruby庫(kù)和rails非常非常有用。

    3) Ctrl+G可以快速定位類定位文件,類似Eclipse的F3的功能。

    目前netbeans這些功能領(lǐng)先所有的其他IDE,非常令人期待。但是netbeans也有些明顯的缺點(diǎn),有些東西用起來行為非常古怪,可能是因?yàn)閚etbeans6.0還是beta版本,bug太多的緣故,而且也不夠穩(wěn)定:

    1) 沒有類似Eclipse的Ctrl+Shift+R那樣的文件快速定位功能,要自己在項(xiàng)目樹里面一層層找,這個(gè)實(shí)在令人難以忍受。一個(gè)大項(xiàng)目動(dòng)不動(dòng)幾百個(gè)文件,不能快速定位,找起來太影響效率。其實(shí)netbeans提供了一個(gè)Ctrl+Alt+O的快捷定位,但是不起作用,搜索框總是空的,因此懷疑netbeans有這個(gè)功能,目前是bug導(dǎo)致出不來。

    2) 沒有在文件中快速定位某個(gè)方法的功能,這一點(diǎn)和radrails一樣令人失望。

    3) 在編輯器里面好多順手的代碼編輯的快捷功能都沒有,令人很苦惱,這一點(diǎn)顯然不如radrails那么方便。

    4) 對(duì)中文的支持不好

    5) 對(duì)yml文件沒有高亮功能

    6) 依賴JDK6.0,在JDK5.0上面跑很不流暢。

    總得來說,netbeans還是最值得期待的IDE,等到07年底,netbeans6.0正式發(fā)布,ruby插件支持更加成熟以后,我想我會(huì)轉(zhuǎn)移到netbeans上面來。另外非常重要的一點(diǎn):Sun公司從JDK6以后,致力于JVM平臺(tái)化發(fā)展道路,大力拓展腳本語言在JVM平臺(tái)的支持力度,而且Sun給予了JRuby官方支持,所以netbeans平臺(tái)的腳本框架和RoR支持是有足夠的商業(yè)推動(dòng)力的,前景應(yīng)該是最好的!

    3、IDEA - 觀望中

    貌似前段時(shí)間有人撰文推薦IDEA作為首選ruby IDE,我覺得他的理由很奇怪,其實(shí)IDEA目前不是好的選擇:其ruby代碼感知能力和智能提示能力明顯不如netbeans,其功能齊全程度又明顯不如radrails,而且最致命的是IDEA竟然不能對(duì)rhtml模板高亮和提示,那就宣布了IDEA的基本不可用,另外yml文件也不能高亮。其插件作者說下一版本會(huì)提供rhtml高亮和提示,所以我們對(duì)IDEA目前還持觀望態(tài)度。

    但I(xiàn)DEA也有一些明顯優(yōu)點(diǎn),例如IDEA就有對(duì)ruby類和ruby資源進(jìn)行快速定位的快捷鍵Ctrl+Alt+N和Alt+N,這明顯優(yōu)于radrails和netbeans,另外也有在當(dāng)前文件快速定位方法的快捷鍵,終于克服了我對(duì)radrails的最大怨氣。

    4、jedit - 貌似沒什么理由去用它了

    作為一個(gè)重量級(jí)IDE,卻定位在輕量級(jí)功能上,要安裝一大堆插件才能勉強(qiáng)把功能跑起來,沒什么理由去用它。

    二、輕量級(jí)IDE

    1、E - 最值得期待的輕量級(jí)IDE

    E現(xiàn)在確實(shí)有很多bug,很多功能缺失,例如:我非常在意的對(duì)文件進(jìn)行快速定位的快捷鍵和在當(dāng)前文件中快速定位方法的快捷鍵,目前E竟然不支持,但是TextMate可是有的;快速刪除當(dāng)前行在TextMate當(dāng)中是Command+L,但是E貌似沒有,諸如此類的功能缺失。所以E和TextMate還是有很大差距的。

    但是E確實(shí)在主要方面完全克隆了TextMate,所以這些小功能上面的缺失應(yīng)該只是時(shí)間問題。所以相信給E半年左右的時(shí)間,E會(huì)成為Windows平臺(tái)當(dāng)之無愧的TextMate。

    2、Komodo - 乏善可陳

    Komodo是個(gè)定位很傳統(tǒng)的腳本IDE,對(duì)于ruby沒有什么特別好的支持,有最基本的語法高亮和簡(jiǎn)單的代碼提示而已,以及一個(gè)簡(jiǎn)陋的項(xiàng)目樹,運(yùn)行速度還很緩慢,而且還是收費(fèi)的,實(shí)在不值得去用。

    3、RoRed - mini ruby IDE

    如果你真要去用Komodo,那我建議你改用RoRed,一個(gè)專門針對(duì)ruby on rails開發(fā)的簡(jiǎn)單編輯器,帶有ruby語法高亮,項(xiàng)目樹,功能簡(jiǎn)單,可能對(duì)某些偏愛UltraEdit/Editplus的人來說用RoRed已經(jīng)夠用了,速度也挺快的。

    4、vim/emacs - 不適合Windows平臺(tái)的ruby IDE

    vim以及emacs這些源于Unix平臺(tái)的IDE,我認(rèn)為不適合在Windows上面用。因?yàn)関im/emacs當(dāng)初被設(shè)計(jì)成為一個(gè)無鼠標(biāo)支持的編輯環(huán)境,全部依靠鍵盤命令驅(qū)動(dòng)。當(dāng)你在Windows下面使用的時(shí)候,這種習(xí)慣會(huì)被打破,從而覺得非常影響效率。

    例如在vim里面執(zhí)行一個(gè)generator,Unix上面會(huì)在vim窗口中開buffer顯示,執(zhí)行完畢敲一下回車就退出這個(gè)buffer了,很方便很快捷。但在Windows平臺(tái),竟然會(huì)彈出一個(gè)DOS窗口,而且把鍵盤焦點(diǎn)給轉(zhuǎn)移到這個(gè)DOS窗口上去了。這就迫使你不得不動(dòng)用鼠標(biāo)去選擇這個(gè)DOS窗口,然后關(guān)閉它,再把焦點(diǎn)定位回到vim上面來。這就喪失了vim最大的優(yōu)勢(shì)了,反而搞的很麻煩。

    當(dāng)然你可以用Alt+Tab鍵來切換窗口,不必動(dòng)用鼠標(biāo)。但遺憾的是Windows操作系統(tǒng)的窗口切換能力很差,一旦你的windows開的窗口多了,在窗口之間快捷切換是一件很麻煩的事情,還不如鼠標(biāo)來得快捷。這一點(diǎn)Windows比MacOS有很大的差距。MacOS上面進(jìn)行多窗口切換那才叫一個(gè)爽字呢!

    最后我認(rèn)為輕量級(jí)IDE在windows平臺(tái)的市場(chǎng)不會(huì)很大,即使E的功能能夠完善到TextMate的程度,也不會(huì)有radrails那么普及。主要還是和操作系統(tǒng)的支持有關(guān)系:

    在MacOS上面,你開一個(gè)Textmate窗口,一個(gè)瀏覽器窗口,一個(gè)tail log窗口,一個(gè)命令窗口啟動(dòng)關(guān)閉服務(wù)器,一個(gè)命令窗口進(jìn)行console調(diào)試,一個(gè)命令窗口執(zhí)行單元測(cè)試,還有一個(gè)命令窗口連接MySQL數(shù)據(jù)庫(kù)看數(shù)據(jù)。在這些窗口之間僅僅使用快捷鍵進(jìn)行來回切換是很方便很快捷的事情。

    但是Windows的窗口切換功能太弱了,一下開了七個(gè)窗口,你編程的時(shí)候來回切換的工作效率是很低的。所以在Windows上面要提高工作效率就會(huì)傾向于radrails這樣的IDE,把所有功能都集成進(jìn)來了,只要一個(gè)radrails窗口,一個(gè)瀏覽器窗口足矣了。這樣工作效率才高。

    最后值得一提的是,所有這些IDE的rhtml編輯功能還是不如textmate,一旦在html標(biāo)簽里面嵌入代碼段,就不能高亮了。而textmate是不會(huì)這樣的。



     

    芳兒寶貝.我愛你

    posted on 2007-12-11 15:28 wǒ愛伱--咾婆 閱讀(353) 評(píng)論(0)  編輯  收藏 所屬分類: Ruby Study

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    芳兒寶貝.我愛你


    黑客基地
    http://www.hackbase.com
    全球最大的黑客門戶網(wǎng)站


     最近在讀的書:

    常用鏈接

    留言簿(1)

    隨筆分類(37)

    JavaCode

    搜索

    積分與排名

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲VA中文字幕无码一二三区| 最近免费字幕中文大全视频 | 在线播放免费播放av片| 中文免费观看视频网站| 91福利视频免费| 最近中文字幕大全免费视频| 99视频在线看观免费| 久久一本岛在免费线观看2020 | 男人天堂2018亚洲男人天堂| 亚洲人成网男女大片在线播放| 亚洲国产精品成人精品小说| 亚洲jjzzjjzz在线观看| 亚洲AV男人的天堂在线观看| 亚洲熟妇无码一区二区三区导航| 亚洲精品无码专区在线播放| 亚洲乱码av中文一区二区| 最新亚洲人成无码网www电影| 羞羞漫画页面免费入口欢迎你| 特级毛片全部免费播放a一级| 成人午夜免费视频| 今天免费中文字幕视频| 久久永久免费人妻精品下载| 永久免费av无码不卡在线观看| 最近免费中文字幕大全视频| 国产男女猛烈无遮挡免费网站| 免费在线不卡视频| 亚洲精品美女久久777777| 亚洲综合一区二区国产精品| 亚洲不卡视频在线观看| 亚洲AV色无码乱码在线观看| 一级免费黄色毛片| 无码国产精品一区二区免费vr| 亚洲三级高清免费| 又粗又硬又大又爽免费视频播放| 久久亚洲精品无码播放| 老司机亚洲精品影院| 亚洲 日韩经典 中文字幕| 无忧传媒视频免费观看入口| 一个人免费视频在线观看www| 亚洲一区二区三区免费在线观看| 妞干网在线免费观看|