中文(繁体)
中文(简体)
中文(繁体)
한국어
日本語
English
Português
Español
Русский
العربية
Indonesia
Deutsch
Français
ภาษาไทย
網站地圖大全
最新更新
首頁
源碼下載
編程相關
建站資源
網頁設計教程
網絡編程教程
首頁
>
書籍教程
>
編程開髮
Ruby on Rails實踐
編程開髮
暫無資源
網友koalant寫的入門教材.(請登陸後下載)
介紹了Ruby語言,Rails的安裝和一個簡單的例子.對初學者很有用.強烈推薦!
如果你作為一個Java 程式設計師從事j2ee開發的話,你一定會使用到眾多應用程式框架。沒有任何一個語言會象java 語言社群那樣活躍,任何一種新的程式理念都會很快在網路上出現相應的開源實作。對應最常用的網站開發模式MVC,每一層都會有很多框架,Struts, Tapestry 屬於控制器層(C), Velocity 框架屬於視圖層(V), 你使用的資料持久層可能是Hibernate, iBatis, OJB , 或是JDO 的眾多開源實作中的任何一個,例如JPOX 。但是你的選擇太多,未必是件好事,並不是任何人都能採用正確的框架來做正確的事。如果你的開發平台是.net, 那你也許會避免這種情況,通常你只要安裝一個Visual Studio .net 作為開發工具,然後安裝一個MSDN 來查找資料就可以了。對於程式開發人員來說,這是非常兩難的事情。我自己很喜歡Java ,無論是學習還是實踐,它的確都提供了很多給我們。但是為什麼我覺得.net 那樣「一站式」解決方案在很多時候是正確的呢?
身為一個Java 程式設計師,我覺得Java一些比較明顯的問題,首先是Java 太複雜,其次Java 太面向程式設計師了,而不是面向使用者。相對C++ 來說, Java 已經很簡單了。現在Java 程式設計師數量如此多就說明了這一點。但是正如有人曾經說過的那樣,“在linux 上,你很容易區分出誰是高手”,在Java 領域中就不那麼容易了。我就經常發現身邊的同事還在犯很低級的概念性錯誤,他們甚至在無法準確地區分什麼是接口,抽象類和Servlet的情況下仍然可以從事多年的j2ee 開發。但為什麼又說Java 複雜呢,因為它完成一件事情,需要太多不同的技術來實現了。這樣對於那些概念不很清楚的程式設計師來說,你如何保證他們做出正確的選擇呢?而眾多框架中有沒有多少提供「一站式」服務的。最近冒頭的Spring 框架提供的服務在眾多的框架中算是最多的了,但是它又有個新問題,就是它還是太面向程式設計師了,而不是使用者。為什麼這麼說呢?框架本來就是面對程式設計師的,這不對嗎? Spring 雖然提供了眾多選擇(但是還是不夠多,它本身沒有ORM ),但它沒有提供簡單的使用方式,所以我們只能說它是面向程式設計師的。絕大多數java框架都存在這個問題,就是學習曲線比較高。我覺得學習曲線的高低是區分一個框架是否是面向程式設計師還是使用者的關鍵,我想這主要表現在框架的易用性。其實框架最終的使用者還是程式設計師,之所以用「使用者」和「程式設計師」來區分,是因為一些面向「程式設計師」的框架比較難以使用,雖然提供了大量的基礎設施和零件,但還是要求程式設計師自己來組裝。而面向「用戶」的框架就簡單一些,用戶只要按照說明書來使用就可以了。為什麼Ruby on rails 會在Java 社群引發轟動,我想原因就在於此,它提供了一個「一站式」面向使用者的簡單易用的框架,這是java 框架所缺乏的。為什麼Ruby on rails 能做到這一點,難道java 本身做不到嗎? 事實是眾多Java 框架的設計者不會這麼做,可能是他們的思維已經限制在如何用模式設計一個好的框架上了,而沒有在框架的易用性上做更多文章。使用過Spring 的人就知道它的xml 設定檔會漸漸的膨脹,雖然我們很容易將其分解為更多的小設定檔來解決這個問題。但在使用xml 設定檔上,它沿襲了Java 程式設計的習慣性概念:「Java 是最好的程式語言,XML 是最好的描述資料的語言,兩者的結合是最完美的。如果一個應用程式不使用xml 來描述,那麼它就不是好的java 應用」。
但ruby on raiils 就是在這點上和眾多java 框架區分開來,才達到了框架易用性上的一次突破。這個想法貫穿了Rails 設計的始終:習慣約定優於配置。 舉個例子,通常我們寫java web 應用程序,都會按照MVC 來給對應類別做區分,我個人喜歡將Controller 類別放在web目錄中,將View 類別放在view 目錄中,將model 類別放在domain 目錄中。但是不同的人有不同的設置,不同的命名,如何讓框架知道這些不同的目錄呢, java 框架的解決之道,只能是透過xml 設定檔讓它了解這些資訊。而rails 的解決方式就是: 目錄結構我來定義,你只要在我定義好的目錄中放東西就可以了。 這也就是為什麼rails 中很少有設定檔(但不是沒有)的一個重要原因。雖然思想很簡單,但是它帶來的好處就是,Rails 的開發效率是java 開發的10 倍(這是rails 的fans 宣稱的,不過我相信這點,相信看完這篇文章你也一定會的) 。那麼光這點就能讓rails 開發比採用java 更快了嗎?不完全是這樣,因為這還得益於rails 的另一個設計理念:更少的程式碼。 並不是任何語言都能那麼宣稱的,rails 實現這一點完全得益於它的設計語言Ruby 。使用Ruby 你的確能用很少的語言寫很多的功能,這是其他語言所無法實現的。 想要掌握Rails,你一定要了解Ruby。 曾經有人說:Zope (著名的python web 框架)是python 的killer 級應用,python 是zope 的秘密武器。 我想這句話用在描述rails 和ruby 的關係再適合不過了。
展開
附加信息
版本
類型
編程開髮
更新時間
2009-06-02
大小
602KB
相關應用
Ruby's Vitten Party遊戲
2024-07-01
Ruby on Rails電子商務程式開發
2009-06-02
Ruby的陷阱
2009-06-02
Ruby初級教程
2009-06-02
Ruby 語言入門教學
2009-06-02
Ruby way Ruby 程式設計師第二版
2009-06-02
爲您推薦
chat.petals.dev
其他源碼
1.0.0
GPT Prompt Templates
其他源碼
1.0.0
GPTyped
其他源碼
GPTyped 1.0.5
Delphi組件參考大全
編程開髮
Weblogic管理員手冊
編程開髮
使用 Rails 2nd 進行敏捷 Web 開發
編程開髮
Google Dorks
其他源碼
1.0
shepherd
其他源碼
v6.1.6-react-shepherd: Prepare Release (#3063)
mongo express
其他源碼
v1.1.0-rc-3
相關資訊
全部
java獲取手機已安裝APK的簽名摘要
2025-08-18
asp從緩存讀數據實例
2025-08-14
在HTML5 Canvas中放入圖片和保存為圖片的方法
2025-08-24
js下將阿拉伯數字每三位一逗號分隔(如:15000000轉化為15,000,000)
2025-08-22
Java8時間日期庫中的常用使用示例
2025-08-18
ASP Request對象的使用
2025-08-13