• Ruby on Rails开发Web应用的基本概念


    Web应用架构

    C/S架构

    Web应用从最初就採用C/S架构。Server负责监听client请求,提供资源,Client向server发起请求并渲染页面。

    两者通过TCP/IP协议栈之上的HTTP协议通信。

    多层架构

    在Web 2.0时代。随着交互性的要求。这个架构变得更为复杂。Server须要提供更复杂的服务。Client也要完毕很多其它的交互任务,涌现出非常多新的提供更快更好服务的技术。

    对应的,C/S架构须要以一种更复杂的方式来组织,即多层架构。
    多层架构中的每一层负责提供一个特定的功能。与其它层通过良好的接口进行交互,易于升级维护。原始的C/S架构能够视作Server、Client两层。

    3层架构

    典型的3层架构为表示层,逻辑层,数据层

    • 表示层由浏览器负责渲染
    • 逻辑层由server端操纵数据。并发往表示层
    • 数据层负责存储数据。

    6层架构

    假设进一步切割,就得到6层架构。例如以下图


    • 表示层分为Client层和表示逻辑层
      • Client层负责渲染展示页面
      • 表示逻辑层为Server依据脚本生成网页
    • 逻辑层分为商业逻辑层和数据訪问层
      • 事务逻辑层表征事务逻辑和流程
      • 数据訪问层负责存取数据,发往事务逻辑层
    • 服务端通常有网络层负责网络

    Ruby on Rails

    Ruby on Rails是一个基于Ruby开发的构建Web应用的开源框架或者开源库,Twitter、Hulu、Github、Iteye等公司都採用了rails
    框架。

    组件

    Ruby on Rails包含一系列组件

    • Rake:相似于make,能够用来改动、迁移数据库
    • WEBrick:一个Rails内置的HTTPserver,能够使用rails server命令启动,速度较慢,适合完毕开发阶段的測试
    • SQLite:最简单的数据库。相同仅仅适合开发阶段的測试
    • Rack Middleware:中间件,用于server软件和应用之间的交互

    缺点

    • 不适合海量服务,Twitter已经由ROR转向Scala
    • 它是一个框架,隐藏了太多细节

    MVC架构

    Model表示数据,View使用数据渲染页面,而Controller是媒介。View和Model的严格分离保留了重用性。


    使用Rails创建应用时会自己主动依照MVC架构生成相关代码。包含:

    • 表示Model的一个类,数据库中会建立对应的表
    • 一个Controller,对应的URL解析和数据库中的操作会一一对应好
    • View包含一系列html文件用来渲染页面

    Active Record

    Active Record机制使object-relational mapping (ORM)变得可行。在Ruby中以ActiveRecord模块的形式出现。ORM映射机制为:

    • class - table
    • object - record(表的一行)
    • attribute - record value(表的一列)

    ActiveRecord模块提供下面功能:

    • 与数据库建立连接
    • 表的创建
    • ORM映射
    • 使用object完毕CRUD操作(Create、Read、Update、Delete)

     

    转载请注明作者:Focustc。博客地址为http://blog.csdn.net/caozhk。原文链接为点击打开
  • 相关阅读:
    第六课 课程重点(仿站及常见代码用法)
    第七课 课程重点(js、声明变量、数据类型)
    html作业及答案
    【实用代码】选项卡切换——带标题底纹样式
    CSS 样式表(小结)
    各大常用浏览器兼容性代码
    【小练习】“表格”制作及答案
    第一周综合练习
    第五课 课程重点(z-index、overflow、浏览器兼容性)
    当前单元测试主流工具
  • 原文地址:https://www.cnblogs.com/llguanli/p/8516640.html
Copyright © 2020-2023  润新知