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

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

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

    小螞蟻  
    風雨過后才見彩虹
    公告

    • —————————————
      李麗君
      軟件測試工作者
      廣東籍貫的海南人
      北京生活12年
      目前在深圳

      郵箱:
      llj2003hbdd@163.com
      —————————————
      說明:本Blog中的內容均為本人原創或轉載,本人依法保留Blog內原創文章的所有權利,如需轉載,請注明作者及出處。未經許可,不得將本Blog內文章用于任何盈利性用途。
      —————————————
    日歷
    <2012年11月>
    28293031123
    45678910
    11121314151617
    18192021222324
    2526272829301
    2345678

    導航

    常用鏈接

    留言簿(174)

    隨筆分類(189)

    0--感興趣的網站

    1--國內測試網站

    2--測試同行的blog

    3--開發好友的blog

    最新評論

     

    編寫背景:
          Klobo離職已經3周了,接手自動化缺貨監控報告工具也3周了,有一部分功能用到了ruby on rails,業務部門提出了個新需求,以后每天都要抽一些時間來學習學習才能搞定這個工具的維護,同時為以后自己搭建自動化測試工具框架做準備。今天就從最基礎的開始。

    本文資料來源:http://zh.wikipedia.org/wiki/Ruby_on_Rails

    簡介
        Ruby on Rails 是一個可以使你開發,部署,維護 web 應用程序變得簡單的框架。
        Ruby on Rails,簡稱Rails,是一個使用Ruby語言寫的開源Web應用框架,它是嚴格按照MVC結構開發的。它努力使自身保持簡單,來使實際的應用開發時的代碼更少,使用最少的配置。
        Ruby on Rails是一種結合Ruby語言與Rails平臺的一種網頁編程語言,Ruby語言以自然、簡潔、快速著稱,全面支持面向對象程序設計,而Rails則是Ruby廣泛應用方式之一,在Rails平臺上設計出一套獨特的MVC開發架構,采取模型(Model)、外觀(View)、控制器(Controller)分離的開發方式,不但減少了開發中的問題,更簡化了許多繁復的動作。
        Rails的設計原則包括“不做重復的事”(Don't Repeat Yourself)和“慣例優于設置”(Convention Over Configuration)。

    來歷
        Ruby的作者于1993年2月24日開始編寫Ruby,直至1995年12月才正式公開發布于fj(新聞組)。之所以稱為Ruby,是因為Perl的發音與6月的誕生石pearl(珍珠)相同,因此Ruby以7月的誕生石ruby(紅寶石)命名。
        2004年7月,Rails的創始人大衛•海納梅爾•韓森從37signals公司的項目管理工具Basecamp里面分離出Ruby on Rails,并且以開源方式發布。
        Rails在發布以后的短短的時間內就迅速獲得很多開發人員歡迎,大衛認為這歸功于Rails設計為opinionated software。Rails當中有很多規矩從一開始就按照David的意見制定好了,所以在Rails上開發應用程序時,開發人員可以專注于應用程序自 身的設計,省卻那些花在了解及配置基礎框架上面的時間。這也正是Rails很重要的精神“約定優于配置”,開發人員遵照Rails本身的慣例便可以省卻配置組態檔的時間;此外,Rails雖然強調慣例的重要及便利性,但針對不同的需求,Rails也提供修改的空間讓開發人員可以進行自定義的組態。

    運作模式
        Rails框架是以固定的命名習慣來自動判斷整個架構,默認下會將網址分析成http://domain-name/ControllerName /ActionName/Attribute/ 然后運行目標Controller中的Action,并取出指定的View(視圖)回傳給瀏覽器顯示。面對數據庫則以Model(模塊)的形式,借由Active Record作為與數據庫之間的傳輸接口。

    Rails的MVC架構
        Ruby on Rails的模型-視圖-控制器架構由以下各部分組成:
        模型
              模型包含著應用的狀態,狀態可能是臨時的也可能是長久性保存在數據庫中的。需要注意的是模型不僅包含數據,而且包含數據代表的邏輯。在Rails中,模型通常是由一些代表關系數據庫中RDBMS表的類組成的。
              在RoR中,模型類是通過Active Record模式進行處理的。一般來說,程序員要做的是繼承ActiveRecord類,同時程序會自動計算出要使用哪個RDBMS表,這個表有哪些列。表與表之間的關系通過簡單的命令來指明。
        控制器
               控制器將用戶界面和數據模型關聯起來,并充當協調運作的角色。它接收各種用戶操作,更新數據模型,并用合適的view展示結果給用戶。像他的名字一樣,可以說應用的主要控制中心就是各個控制器。
        視圖
               View負責根據Model中的數據顯示用戶界面。作為web應用,Rails里的View通常是生成整個或者部分網頁。當然可以是XML或者甚至是JavaScript代碼。表現為使用內嵌Ruby的HTML/XML/JavaScript模板。

        Rails的組成模塊
    Rails使用如下Gems
    actionmailer (1.3.2)
        Service layer for easy email delivery and testing.
    actionpack (1.13.2)
        Web-flow and rendering framework putting the VC in MVC.
    actionwebservice (1.2.2)
        Web service support for Action Pack.
    activerecord (1.15.2)
        Implements the ActiveRecord pattern for ORM.
    activesupport (1.4.1)
        Support and utility classes used by the Rails framework.
    rails (1.2.2)
        Web-application framework with template engine, control-flow layer, and ORM.
    模型:Active Record
    ActiveRecord實現了Rails的對象關系映射。
    控制器和視圖:ActionPack
    ActionController是Rails中的控制器,提供各種方法供用戶操作使用。
    ActionView是Rails中的視圖,負責展現用戶界面。
    常用實用工具:ActiveSupport
    ActiveSupport包提供一些工具和支持代碼。
    處理郵件:ActionMailer
    ActionMailer用來發送和接收email。
    Web服務:ActionWebService
    ActionWebService來提供SOAP和XML-RPC支持。需要注意的是,Rails趨向使用更加簡單明了的REST方式web服務而不再提倡SOAP格式的web服務。ActionWebServices在未來的版本里面會逐步淡出。
    網絡資源:ActionResource
    用REST對Web服務提供了優秀的支持。這種風格的Web服務使用指定的資源。

    Rails中的AJAX
    AJAX(異步JavaScript與XML)是一種異步傳輸接口,可以借由瀏覽器使用JavaScript和XML來處理傳輸請求,而將Web服務器作為后臺來處理,這樣無須載入額外的網頁。Rails自帶有Prototype包 來實現這個技術。Ajax已經和Ruby on Rails結合在了一起成為了一個新的系統叫做“Ajax on Rails”。Rails提供一些助手工具來更方便地實現AJAX應用。 Rails提供了一些Helper,可以在服務器一端用純Ruby語言生成給瀏覽器用的JavaScript代碼,從而讓Rails的開發者不需掌握 JavaScript就可以簡單方便的開發出AJAX的應用。

    Rails和Web服務
    稍早的版本的Rails中提供了ActionWebService作為開發XML-RPC和SOAP的web服務的基礎。但是最近的Rails 1.2更加傾向于是用REST方式的web服務,而ActionWebService在Rails 2.0中作為plugin而不再是rails核心的一部分。

    Web服務器支持
    對于開發和測試來說,一個很輕量的WEBrick網頁服務器已經被包含在了Ruby中,常被用來作為應用服務器。而對于生產應用,常推薦使用帶FastCGI的Apache或者Lighttpd,但任何支持CGI或者FastCGI的網頁服務器都可以使用。在Apache上,mod_ruby也可以考慮用來提高性能。

    數據庫支持
    使用Rails的架構開發網絡應用一般都使用數據庫,所以推薦使用一個關系數據庫系統來進行數據存儲,若不能運行一個關系數據庫服務器,Rails也支持SQLite庫。很多關系數據庫系統都支持,包括MySQL、PostgreSQL、SQLite、IBM DB2、Oracle和SQL Server。

    系統要求
    • Ruby語言
    • Web服務器,如Apache、lighttpd等。
    • FastCGI,或者Mongrel為了提高效率
    • 數據庫和驅動程序

    集成開發環境

          開發用的IDE有:Eclipse , IntelliJ, Aptana。

    類似的框架
    • CakePHP
    • Django
    • TurboGears
    • CodeIgniter

    posted on 2012-11-07 11:37 lijun 閱讀(721) 評論(0)  編輯  收藏 所屬分類: 軟件自動化測試
     
    Copyright © lijun Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 菠萝菠萝蜜在线免费视频| 国产午夜免费秋霞影院| 老司机精品免费视频| 亚洲欧洲日韩极速播放| 色噜噜综合亚洲av中文无码| 亚洲伊人成无码综合网 | 国产亚洲情侣一区二区无| 成年男女免费视频网站| 免费看h片的网站| 国产精品免费大片| baoyu122.永久免费视频| 永久免费观看黄网站| 国产av无码专区亚洲av毛片搜| 亚洲 欧洲 日韩 综合在线| 亚洲福利一区二区| 久久久无码精品亚洲日韩蜜臀浪潮 | 久久激情亚洲精品无码?V| 国产一级高清视频免费看| 成人超污免费网站在线看| 野花高清在线观看免费3中文| 久久久久av无码免费网| 无码精品人妻一区二区三区免费看| 一级全免费视频播放| 国产偷国产偷亚洲高清在线| 亚洲国产无线乱码在线观看| 亚洲综合久久精品无码色欲| 色婷五月综激情亚洲综合| 色在线亚洲视频www| 亚洲字幕AV一区二区三区四区| 色在线亚洲视频www| 亚洲日产乱码一二三区别| 亚洲精品无码久久| 性色av极品无码专区亚洲| 欧美激情综合亚洲一二区| 国产亚洲精品免费| 成年网在线观看免费观看网址| 国产成人无码精品久久久久免费| 日本精品久久久久久久久免费 | 免费国产精品视频| 亚洲国产综合人成综合网站| 亚洲男人的天堂在线va拉文|