程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 用Eclipse輕松地進行Ruby開發

用Eclipse輕松地進行Ruby開發

編輯:關於JAVA

RDT 現在是 Aptana RadRails,但是仍然為 Ruby 開發人員提供功能強大的 IDE

大約三年前,developerWorks 發布了 “使用 Eclipse 的 Ruby Development Tools 插件”,該文章 介紹了在 Eclipse 的 Ruby Development Tools (RDT) 插件中提供的一些特性,當時為 V0.5。在本文中 ,我們將重新審視該工具。現在,RDT 被稱為 Aptana RadRails 並且可以作為 Aptana Studio 或者 Eclipse 的插件獲得。本文將介紹該插件的一些新特性。

Ruby Development Tools (RDT) 插件的名稱及查找代碼的位置已經發生變化,但是基本函數和許可條 款在本質上保留不變。如果您不熟悉在 Eclipse 上開發 Ruby 應用程序的概念,請先閱讀 Neal Ford 撰 寫的標題為 “使用 Eclipse 的 Ruby Development Tools 插件” 的文章,了解如何創建 Ruby 文件、 如何自定義 Ruby 編輯器、如何設置調試器和從 Eclipse 運行 Ruby,以及從 Eclipse 開始測試。在本 文中,我們將以 Ford 撰寫的文章為基礎上並查看:

代碼折疊 — 可以針對類和方法啟用折疊。

大綱視圖 — 更詳細地查看大綱視圖,並了解如何使用該視圖。

RI 視圖 — 從 RDT 視圖使用 Ruby 的 Interactive 文檔實用程序。

任務標記 — 在 Ruby 注釋中為可配置關鍵字(如 TODO、FIXME)創建任務。

Ruby 浏覽器 — RDT 中的新特性,允許輕松地查看和浏覽項目中可用的所有 Ruby 資源。

編輯器改進 — 自動完成方括號、圓括號和單/雙引號;以及更優秀的代碼幫助功能。

入門

RDT 現在稱為 Aptana RadRails V1.0.3,可以在 Aptana.com 獲得。要下載新版本或者更新 Eclipse 插件,請按照 Aptana 的 RadRails 說明 操作,Eclipse 用戶應該十分熟悉這些說明。注意,如果以前 沒有把 Aptana 插件安裝到 Eclipse 工作空間中,則應當按照 把 Aptana 插入現有 Eclipse 配置 的 Aptana 說明進行操作。在安裝期間,還需要查閱 Aptana 的 RadRails 文檔 了解特定於 OS 的問題的解 決方法。

代碼折疊

Eclipse 等幾乎所有集成開發環境(Integrated Development Environment,IDE)都支持代碼折疊的 概念。代碼折疊允許在處理源代碼文件的某些內容時折疊其他部分的源代碼。這將允許在一個窗口內管理 大量的代碼,不會顧此失彼。要在 RadRails 中啟用或禁用代碼折疊,只需確保位於 Ruby 透視圖中並且 選擇 Window > Preferences。Preferences 窗口應當會彈出。向下滾動到左側窗格,直至找到 Ruby 插件選項並用 Ruby > Editor > Folding 展開它。您應當會看到類似圖 1 的內容。

圖 1. Eclipse 窗口首選項允許自定義 Eclipse 透視圖的界面外觀和特性集

確保選中 Enable folding when opening a new editor 並選擇 OK。

在 “使用 Eclipse 的 Ruby Development Tools 插件” 中,我們創建了 Ruby 項目。如果尚未這樣 做,請創建一個項目。如果不希望參考該文章,清單 1 顯示了相關代碼。創建一個由清單 1 中所示代碼 組成的 Ruby 文件。還需要名為 hr.rb 的 Ruby 類。

清單 1. hr.rb

class Employee
 def initialize(name, salary, hire_year)
 @name = name
 @salary = salary
 @hire_year = hire_year
end
 def to_s
  "Name is #(@name), salary is #(@salary), " +
  "hire year is #(@hire_year)"
 end
 
 def raise_salary_by(perc)
  @salary += (@salary * 0.10)
 end
end
class Manager < Employee
 def initialize(name, salary, hire_year, asst)
 super(name, salary, hire_year)
 @asst = asst
end
 def to_s
  super + ",\tAssistan info: #{@asst}"
 end
 
 def raise_salary_by(perc)
  perc += 2007 - @hire_year
  super(perc)
 end
end

在 Eclipse 中查看該類時,您應當會看到類似圖 2 中所示的一連串減號。這些減號每一個都代表一 個折疊點。選擇減號可以折疊位於該點的代碼。嘗試選擇 hr.rb 的 Employee 類中的所有方法的折疊點 。

圖 2. RDT 支持在 Ruby 中進行代碼折疊

如果選擇 Employee 類的所有方法的折疊點,則應當會看到類似圖 3 所示的內容。

圖 3. 折疊 Employee 類中的方法

正如您所見,使用代碼折疊可以管理和控制工作環境,讓您可以將精力主要放在感興趣的代碼上。如 果返回到 Preferences 屏幕並查看 Ruby 代碼折疊設置,則還會注意到您可以選擇在最初打開文件時使 用 RDT 折疊注釋、方法或內部類。很多人發現這是一種快速查看類基本結構的方法,而不會被大量代碼 分心。不過,正如您將在下一節中看到的那樣,還有更簡單的方法可以獲得代碼概覽。

大綱視圖

在 “使用 Eclipse 的 Ruby Development Tools 插件” 中,提到了大綱視圖是一種 浏覽 Ruby 源文件元素的方法。大綱視圖還允許快速查看類、內部類、方法、變量等的樹型表示。如果出 於某種原因您沒有在 Ruby 透視圖中看到大綱視圖,可以轉到 Window > Show View > Outline 輕 松地打開它,這將打開代碼的可停靠式(dockable)大綱視圖。對於 hr.rb 文件,在大綱完全展開時, 您應當會看到類似圖 4 中所示的內容。

圖 4. 大綱視圖展示了 hr.rb 文件的展開的樹型表示

每一個 符號和符號顏色都有或明顯或不明顯的特定含義。如果不是這樣,您可以轉到 Window > Preferences 並選擇 Ruby > Appearance > Members Sort Order 輕松地找到這些含義的信息,這將提供大綱視 圖的線索,並讓您調整和排列大綱視圖符號的表示順序。您應當會看到類似圖 5 中所示的內容。

圖 5. 成員排序順序

代碼大綱視圖是幫 助您了解如何構造代碼的強大工具。但是當您忘記一個函數或者類的用途時該怎樣做?在下一節中,將了 解如何從 Eclipse 訪問 Ruby 文檔。

Ruby Interactive 視圖

除非擁有大量內存,否則很 容易忘記 Ruby 提供的一些類、方法和模塊。Ruby 提供了文檔以及 Ruby Interactive (RI),後者是一 個交互式文檔閱讀器,讓您可以快速地在 Ruby 文檔中搜索和查找信息。要將 RI 與 Eclipse 結合使用 ,需要轉到 Window > Preferences 並選擇 Ruby > RI/rdoc 來配置 RadRails 插件以訪問它。在 這裡,您將看到兩個字段:RDoc path 和 Ri path。每個字段都期望獲得 rdoc 和 ri 腳本的完整路徑, 如果 Ruby 安裝位於驅動器 C 中,將分別是類似 C:\ruby\bin\rdoc 和 C:\ruby\bin\ri 的內容,如下 所示 (Mac OS X 和 Linux® 用戶需要相應地調整路徑)。輸入正確路徑並選擇 OK。

圖 6. 設置 Ruby Interactive 文檔閱讀器

完成此操作後,您 應當能夠在 Eclipse Ruby 透視圖的下半部分中看到 RI 選項卡。如果由於某種原因而沒有看到該選項卡 ,只需轉到 Window > Show View 並選擇 RI,然後選擇該選項卡並在輸入字段中鍵入 Array。RI 將 嘗試查找匹配的搜索內容,也可以簡單地滾動浏覽可用選項並單擊一個條目。對於 Array,您應當會看到 類似圖 7 所示的內容。

圖 7. 在 RI 中查詢 Array 類的示例輸出

RI 視圖非常有用, 它允許您關注並且保持在開發環境內,而不必切換到 Web 浏覽器或者其他應用程序中查看文檔。可是有 時,您會遇到當時剛好無法解決或沒有時間處理的問題。開發人員時常在代碼中留下注釋,但是這些注釋 很容易遺忘。在下一小節中,我們將查看如何使用任務標記來標記要繼續處理的條目。

任務標記

Eclipse 和 RadRails 插件中最有用的視圖之一是 Tasks 視圖。可以使用 Tasks 視圖作為您自 己或者基於項目的 to-do 列表,這將允許您用諸如 ToDo、FixMe、Optimize 之類的條目標記代碼。您可 以通過轉到 Window > Preferences,然後轉到 Ruby > Task > Tags 來配置您自己的任務標記 。您應當會看到類似圖 8 所示的內容。

圖 8. 任務標記區域,使用該區域可以創建用於標記代碼 的新自定義標記

把標記添加到代碼中就可以使用該標記,例如 #ToDo: Implement give_bonus method。

嘗試在 Employee 類的 hr.rb 文件中添加該注釋並保存。現在在 Eclipse 視圖的下半部分中選 擇 Task 窗格,或者如果由於某種原因您沒有看到它,請轉到 Window > Show View > Task,然後 您應當會看到類似清單 2 所示的內容。

清單 2. 查看任務

Completed  Priority  Description  Resource  Path  Location  

Creation Time
       TODO: Implement give_bonus method hr.rb RubyTest  line 7 

1173676801984

在團隊開發環境中,能夠定義您自己的任務標記非常有用。任務標記允許團 隊定義與標記相關的特定類型的任務,這些任務會被其他開發人員看到,即使不查看包含任務的具體代碼 。這將允許團隊使用代碼本身進行溝通,而不一定要使用電子郵件或者易於丟失的其他溝通方式。在下一 小節中,我們將查看另一個透視圖,該透視圖允許快速浏覽項目和查找信息。

Ruby 浏覽器

此發行版的 RadRails 插件有許多新特性,包括 Ruby Browsing 視圖。要獲得此視圖,只需轉到 Window > Open Perspective > Ruby Browsing,您應當會看到類似圖 9 所示的內容。

該 透視圖包含 Ruby 元素的多個視圖。該項目將顯示工作空間中的所有項目。在 Types 視圖中,您將看到 項目中的所有類和類型,而在 Members 視圖中,您將看到從 Types 視圖中選擇的類的具體元素。雙擊條 目將使 RadRails 插件打開與該元素相關的文件並將焦點停留在該元素上。

圖 9. Ruby 浏覽視圖 示例

快速浏覽 Ruby 資源是另一種提高生產力的方法。在下一小節中,我們將查看 RadRails 插件中有助於 Ruby 開發的其他新增特性。

其他新增特性

Aptana RadRails 插件添加了對上一版插件的 幾項增強功能,包括代碼完成。例如,在 hr.rb 文件中的任意位置鍵入 E,然後按 Ctrl+Space 組合鍵 ,然後 RadRails 插件代碼完成功能將彈出一個類、模塊、全局變量、方法和變量的列表。最新版本的 RDT 還添加了新內容,例如更明顯地高亮顯示全局變量以及實例/類變量、啟用和禁用自動關閉(如字符 串)的功能、JRuby 支持、SQL 編輯器、更優秀的調試、方括號和圓括號以及其他內容。Aptana 的 RadRails Pro 版本甚至添加了更多功能,包括內置在 IDE 中的新 Ruby 分析程序支持。要了解 RadRails 插件新增功能的更多信息,請參閱 V1.0.2 變更記錄,這是撰寫本文時的當前版本。

通 過對 Aptana RadRails 進行重大改進,它真正顯示出自己的強大威力:開發 Ruby 應用程序的重要工具 。結合了其他 Eclipse 插件的 RadRails 可以提供一流的 IDE,其特性可以與幾乎所有其他商業產品相 媲美。

結束語

本文大概介紹了 Aptana RadRails 中的一些附加功能和改進。正如您所見 ,RadRails 插件為 Ruby 開發人員提供了一個功能強大的 IDE。然而更妙的是,Eclipse 不但提供了可 輕松使用 Ruby 的工具,並且該工具還可以使用其他語言。Eclipse 提供了一個普遍且通用的開發平台, 使用該平台可以提高效率,您只需關注語言本身,而無需在每次改變語言時學習新的 IDE。

本文配套源碼:http://www.bianceng.net/java/201212/778.htm

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved