此文是我之Mylyn初體驗,不搞大而全,而只把我覺得這個工具最爽、最KILLER的功能介紹出來。
再簡單還是要說下它的來歷,首先它是一個高度集成到ECLIPSE中的任務管理工具,正如Mylyn項目領隊所言:
這個新名字是向“髓磷脂”物質致敬,該物質通過使神經元更有效的傳導電流來促進你的思考。我們已經聽到使用者聲稱,Mylyn工具將他們的效率提高到了他們覺得正在以思考的速度編碼的地步。減少阻礙我們生產力的UI摩擦就是Mylyn項目全部的內容。
相信很多人都有過這樣的經驗,改一個東西可能就幾分鐘,但找到在哪改、會影響到什么地方,卻要花半小時。有了這個工具,讓我們在非常大的項目里,在文件和代碼的海洋里能馬上找到所要關注的部分。有的人說,我有CTRL+SHIFT+T,可是你能記住幾年前一個項目里的類名嗎?而查閱文字描述的任務卻要容易得多。
這個工具最有創意的地方是:
把任務列表與具體的代碼聯系到了一起。你只要激活一個任務,之相關的所有文件、函數將被突出的顯示在ECLIPSE界面的每個“角落”――Package Explorer,Open Type, Open Resource,Debug View……
(順提一句:我實在搞不懂為什么ECLIPSE會用最繁復的快捷鍵來打開這三個最常用的功能,所以,我將它們重新定義為了:Alt+P,Alt+T,Alt+R。用“Alt+字母”來激活菜單對我沒啥意義,和它沖突就沖突了。)
(再提一點:曾經有個最好的編輯器SourceInsight,它讓我感到最最最爽的功能就是可以直接“查找符號”,不管是類、函數、結構、宏全都可以通過關鍵字放到一起來模糊查找,可以一步就去到想要的函數或者定義。好像ECLIPSE沒有這個功能,只能按部就班先找到類,再Ctrl+O找方法?比較累。)
那么,Mylyn是如何做到任務與代碼的關聯呢?你唯一要做的就是,在完成一個編碼任務前,激活相應的任務!這樣,隨后你的編輯、訪問各種元素的操作都被Mylyn記錄,它會根據你的訪問頻率分析相關程度。當你的任務成百上千,或者你過一段時間再回頭來修改代碼時,只要激活相應的任務,它就會自動將相關的文件窗口打開,并在各種查找、顯示界面里根據當初的記錄突出顯示相應元素。
接著,來看幾個圖:
在Package Explorer中只顯示與激活任務相關的文件,并且訪問次數多或者修改過的文件以黑體顯示,其它全部隱藏,注意要把Package Explorer工具欄上的Focus On Active Task按鈕按下:
這種高亮顯示同樣會應用到函數級別:
如果打開窗口工具欄中 Mylyn 的 Automatically Fold Uninteresting Elements 按鈕,那么在編輯器中只有感興趣的元素被展開:
剩下的就是在Mylyn里創建任務了。
你可能想到了,它能與主流的任務管理工具集成:如BugZilla,JIRA等。當然,如果不用協作開發,你也可以只用它的本地任務數據庫。創建任務的界面就是為程序員量身定造,極其簡單:名字必不可少,關鍵是要想好任務會大概什么時候開始,或者它必須什么時間完成。如果再勤快點,可以在NOTES了寫兩句描述。
任務可以分類別顯示:
也可以按工作周、日期顯示:
Mylyn會根據任務狀態對它進行一些圖標或者字體上的修飾:
大概就是這么簡單,我覺得這個工具達到了讓我們少付出,今后卻受益良多的目的。它以極具性價比的方式提升了我們平時寫代碼和思考問題的體驗。
你可能會想把Mylyn工具產生的數據與代碼一起存放,放到SVN上。
這樣項目CHECKOUT出來,一打開就什么都有了。當然Mylyn有導出導入,但還是顯得繁瑣。
我們可以修改Mylyn的數據目錄到項目的目錄,這樣每天COMMIT代碼時,就順便把它的數據也提交了:
注意,可以把Backup選項天數改大,不然每天都會新生成一個文件需要COMMIT。
如果你想深入了解,就看這兩篇文章,第一篇介紹任務,第二篇介紹代碼上下文綁定。
posted on 2008-06-15 13:02
我愛佳娃 閱讀(45463)
評論(7) 編輯 收藏 所屬分類:
工具使用