脫離Rails看Ruby:在搭上Rails潮流之前瞭解Ruby

來源:互聯網
上載者:User

簡介:Ruby on Rails 只是使 Ruby 非常強大的方面之一,就像 EJB 只是 Java企業平台的一部分一 樣。Andrew Glover 揭示了 Java 開發人員可以使用 Ruby 做什麼。

在開始這篇文章之前,我需 要澄清一些事情。首先,這不是一篇關於 Ruby on Rails 的文章。如果您希望瞭解 Rails,每周(甚至 每小時)都有相關的文章和 blog 出現,它們都對這個令人興奮的架構的眾多特性大加推崇;請參見 參 考資料 中的列表。其次,本文並不是想預言,Java 面對像 Ruby on Rails 這樣更好的 語言、工具和框 架會衰敗下去。所以本文並不涉及近來通常與 Ruby 最相關的主題。

別誤會 —— 我認為 Rails 是令人難以置信的!它的功能極其強大,已經明顯地改變了 Web 開發的 面貌和步調。我只想指出一點:Ruby 要比 Rails 功能豐富,尤其是從 Java 開發人員的視角來看。

Rails 的專長是 Web 網站開發;但是,我自己沒有構建過全新的 Web 網站。我所工作的大多數 Web 網站已經 使用 Struts、Tapestry 或其他技術構建起來了。在我利用 Ruby 時,基本上是將它作為一種 與 Java 平台銜接的開發實踐。所以在本文中,我將談談如果您主要是 Java 開發人員,那麼應該如何利 用 Ruby 進行開發。

感覺是如此不同

Ruby 的文法與 Java 語言的文法不同。首先,Ruby 沒有方括弧或分號,而且它使類型成為完全可選 的。有人可能會說 Ruby 的文法很簡潔,這正是它的意圖:這種語言使開發人員可以迅速編寫簡潔的代碼 。

如果用 Java 語言和 Ruby 分別定義同一個類,通過比較,就能夠看到這種簡潔性。我先給出用 Java 語言編寫的兩個類 —— Word 和 Definition(就像是詞典)。在圖 1 所示的簡單類圖中,可以看出這 兩個類有幾個關係(如果這種複雜性看起來不自然,請忍耐一下;這是有意義的!):

一個 Word 可以擁有一個同義字(Word 的執行個體)集合。

一個 Word 還擁有一個 Definition 集合。

一個 Definition 擁有一個對 Word 的彙總關聯。

圖 1. 具有單詞和定義的簡單詞典

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.