日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

<button id="g610e"><kbd id="g610e"><video id="g610e"></video></kbd></button>
<dfn id="g610e"><em id="g610e"><optgroup id="g610e"></optgroup></em></dfn>
<button id="g610e"><kbd id="g610e"><video id="g610e"></video></kbd></button><li id="g610e"><nobr id="g610e"><optgroup id="g610e"></optgroup></nobr></li>
    <button id="g610e"><small id="g610e"><abbr id="g610e"></abbr></small></button>
  • RELATEED CONSULTING
    相關(guān)咨詢
    選擇下列產(chǎn)品馬上在線溝通
    服務(wù)時(shí)間:8:30-17:00
    你可能遇到了下面的問(wèn)題
    關(guān)閉右側(cè)工具欄

    新聞中心

    這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
    幾種實(shí)用型RubyWeb開(kāi)發(fā)框架介紹

    大家在通過(guò)對(duì)Ruby的學(xué)習(xí)后,都知道,Ruby on Rails是一款性能非常優(yōu)越的Ruby Web開(kāi)發(fā)框架。但是其他的Ruby Web開(kāi)發(fā)框架又有多少人知道一二呢?#t#

    成都創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、南康網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站定制開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為南康等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

    Rails盡人皆知,有人甚至可能聽(tīng)說(shuō)過(guò)Merb和Camping,但是否有人知道Nitro、Ramaze、Sinatra、IOWA或者Cerise?本文對(duì)這些框架進(jìn)行一個(gè)快速瀏覽,并試圖解讀他們?yōu)闃I(yè)內(nèi)人士欣賞(或忽視)的原因。

    之前我們討論過(guò)Merb,這也許是完成度最高的Rails替代者。Merb項(xiàng)目的活躍程度非常高,并且在一些情況下得到了實(shí)際使用。可以說(shuō)它是與Rails最為接近的Ruby Web開(kāi)發(fā)框架。

    Camping將自己定義為一個(gè)代碼量保持在4k字節(jié)大小以下的Web開(kāi)發(fā)框架。這個(gè)項(xiàng)目已創(chuàng)建了22個(gè)月,并由whytheluckystiff維護(hù)。一個(gè)完整的web應(yīng)用可以在單一文件中定義,同時(shí)遵循MVC框架(這使得web應(yīng)用以后更易于移植到Rails之上)。Camping使用ActiveRecord作為ORM解決方案;模板系統(tǒng)使用Markaby。Camping的開(kāi)發(fā)一直以穩(wěn)定的步伐向前推進(jìn)。

    Nitro是一個(gè)有三年歷史的“Web 2.0”框架。在一段時(shí)間銷聲匿跡之后,開(kāi)發(fā)者George K. Moschovitis又開(kāi)始活躍起來(lái)。Nitro應(yīng)用的服務(wù)器端以Ruby寫(xiě)成,客戶端以Javascript開(kāi)發(fā)。Urubatan最近對(duì)其進(jìn)行了評(píng)價(jià)。與Rails注重按照習(xí)慣編程相反,Nitro更加靈活。Nitro支持開(kāi)發(fā)基于Model-View-Controller的應(yīng)用,同時(shí)支持非MVC、php風(fēng)格的應(yīng)用開(kāi)發(fā)。Nitro使用xhtml文件,并定制的Ruby標(biāo)簽作為模板系統(tǒng)。

    Nitro還使用了它自己的持久層,名為Og(ObjectGraph)。Og允許arbitrary Ruby對(duì)象的序列化。在attr_accessor中標(biāo)記為Object(或Array或Hash)之后,引擎會(huì)序列化對(duì)象的YAML轉(zhuǎn)儲(chǔ)堆。Og同時(shí)支持任意對(duì)象圖。Og提供自動(dòng)化數(shù)據(jù)庫(kù)進(jìn)化功能:當(dāng)Ruby類變更后,Og會(huì)進(jìn)行自動(dòng)檢測(cè),同時(shí)改變對(duì)應(yīng)的數(shù)據(jù)庫(kù)。有些人總是會(huì)忘掉ActiveRecord的Migration功能。

    Ramaze是一個(gè)存在了6個(gè)月的輕量級(jí)Ruby Web開(kāi)發(fā)框架。它在構(gòu)建時(shí)基于下列廣為人知的Ruby Web開(kāi)發(fā)框架原則:

    ◆KISS原則(Keep It Super Simple)

    ◆POLS原則(最小驚訝原則:Principle Of Least Surprise)

    ◆模塊化設(shè)計(jì)

    ◆最小化依賴

    ◆文檔

    ◆開(kāi)放式開(kāi)發(fā)

    ◆BDD開(kāi)發(fā)/實(shí)例

    Ramaze是MVC Web開(kāi)發(fā)框架,使用自己名為Ezamar的模板系統(tǒng)。但是你同樣可以使用Markaby、HAML、Liquid或ERB來(lái)替代Ezamar。Ramaze不提供默認(rèn)的ORM(對(duì)象-關(guān)系映射),你可以使用你自己的選擇:ActiveRecord、Og...它支持諸如Cache等高級(jí)使用,web應(yīng)用可以通過(guò)Mongrel或Evented Mongrel來(lái)搭建。你可以在Ramaze wiki上發(fā)現(xiàn)更多細(xì)節(jié)。

    Sinatra是一個(gè)剛開(kāi)發(fā)了一個(gè)月的DSL web開(kāi)發(fā)框架。Ron Evans對(duì)其進(jìn)行了簡(jiǎn)要評(píng)價(jià)。它與Rails的主要差別在于它不是基于Model-View-Controller模式的框架。Sinatra是基于最小化的DSL語(yǔ)法開(kāi)發(fā)的,它的小型基礎(chǔ)核心中不包括諸如ActiveRecord這樣的模塊。通過(guò)使用get/post action定義,Sinatra具備動(dòng)態(tài)路由定義功能。Ron指出,Sinatra不是為Robust web應(yīng)用開(kāi)發(fā)的,而是為了用來(lái)搭建小型的原型,其中的混合業(yè)務(wù)邏輯和展示層并不是問(wèn)題。

    那這樣做有什么好處呢?API實(shí)現(xiàn)、快速的最小化應(yīng)用以及那些不需要Rails中的功能 (比如ActiveRecord)的web應(yīng)用開(kāi)發(fā)。可以用來(lái)對(duì)面板最小應(yīng)用進(jìn)行控制,或者是widget。

    與其他框架相比,IOWA在近三年的時(shí)間里都不活躍。Cerise有一年的時(shí)間都沒(méi)有活躍,因此我們不會(huì)深入探討它們。

    像Rails一樣,Nitro有其自己的完整核心,其他Ruby Web開(kāi)發(fā)框架試圖越小越好,并允許用戶自由使用他們喜歡的ORM、模板系統(tǒng)等等。即使這些框架可能缺乏文檔,甚至有些框架不具備這么多的功能、流行程度、對(duì)Rails的使用等,它們?nèi)匀恢档靡豢础?br />  


    文章題目:幾種實(shí)用型RubyWeb開(kāi)發(fā)框架介紹
    URL鏈接:http://www.5511xx.com/article/cdeocei.html