首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

rails轨范

2012-09-09 
rails规范Ruby on rails 开发规范(一)目录 结构的 一些约定目录结构如下├─app│├─controllers│└─applicatio

rails规范

Ruby on rails 开发规范(一)目录 结构的 一些约定目录结构如下├─app                          │  ├─controllers  │      └─application_controller.rb│  ├─helpers│      └─application_helper.rb│  ├─mailers│  ├─models│  ├─views│       ├─layouts│            └─application.html.erb├─config│  ├─environments│     └─development.rb│  └─production.rb│  └─test.rb│ ├─initalizers│  └─backtrace_silencers.rb│  └─inflections.rb│  └─mime_types.rb│  └─secret_token.rb│ └─session_store.rb│  ├─locales│ └─en.yml│  └─application.rb│  └─boot.rb│  └─database.yml│  └─environment.rb│  └─routes.rb├─db│  └─seeds.rb ├─doc│  └─README_FOR_APP├─lib│  ├─tasks│       └─.gitkeep├─log│ └─development.rb│    └─production.rb│    └─test.rb├─public│  ├─images│  ├─javascripts│  ├─stylesheets│  └─404.html│  └─422.html│  └─500.html│  └─favicon.ico│  └─index.html│  └─robots.txt├─script│  └─rails├─test│  ├─fixtures│  ├─functional│  ├─integration│  ├─performance│  ├─unit│  └─test_helper.rb├─tmp│  ├─cache│  ├─pids│  ├─sessions│  ├─sockets├─vendor│  ├─plugins│  └─.gitkeep└─.gitignore└─config.ru└─Gemfile└─Rakefile└─README     app:Model,View,Controller都在这个目录下,大部分的工作都在这里进行。其中admin为管理类文件config:数据库配置信息。db:存放数据库schema和migration信息doc:存放文档,RDoc自动生成的文档lib:存放在Model, View和Controller间共享的代码分包    为方便整理,不同功能的代码可放到其不同的子目录下.调用sub_dir下的my_lib_code.rb代码的方法为: require "sub_dir/my_lib_code"log:项目的日志信息,里面有development.log,production.log,server.log,test.log,我们在开发时的信息都写在development.log里,而测试时的log都写在test.log里。public:web服务器把这个目录作为应用程序的根目录,可以从Web访问的目录,如果我们在浏览器的地址栏里直接输入:http://localhost:3000/那么看到的就是这里的index.html页面。script:Rails用到的脚本,也即常用的工具程序比如:generatetest:Model测试,功能测试,测试用的数据等等。vendor:存放外来代码, 如外来插件, 也可用来放rails构架本身, 以使rails兼容不同版本需求的程序.tmp: 临时文件,如:cache注释1)## 注释内容#2)  =begin  =end(二)命名规范:(1)基本命名规则:1)局部变量和方法名(method):都是小写,若以多个单词命名,则单词与单词之间用 ”_” 连接, 在 Rails 中连文件名也是按照这个规则命名:如: user_username(局部变量)get_username(方法名), user_controller.rb    (文件名) 2)实例(Instance) 变量:(就是每个 Object Instance 都有的变量), 要用 ”@” 开头,其余的规则和局部变量一致如: @name, @created_at 3)类(Class) 变量:(就是每个 Object Instance 都会共用的变量), 要用 "@@" 开头,其余的规则和局部变量一致如: @@lookup_table, @@count 4)全局变量:要用 ”$” 开头,其余的规则和局部变量一致 如: $global5)常量:一般首字母大写,但建议全部大写,以多个单词命名,则单词与单词之间用 ’_’ 连接如:PDF_KEK6)Class 名字也是属于常量:但都是开头大写其他小写并且单词与单词之间直接相连如: AciveRecord, ApplicationController 7)模块与类:所有单词首字母大写,其余小写并且单词与单词之间直接相连如:ArticlesHelper(模块),AdminBaseController(类)8) 参数:都是小写,若以多个单词命名,则单词与单词之间用 ”_” 连接,使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字如:name(2)命名约定:1)控制器(controller)、助手(helper)、视图(views)一般使用复数,实体(model)使用单数,数据库表名使用实体名称的复数如:users_controller、users_helper、users、user、users(此顺序和上述表述一一对应)2)局部模板以下划线开始(三)编程规范:(1)编程规范:1)关键字之后留空格2) 逗号“,”、分号“;”后留空格,“,”、“;”向前紧跟,紧跟处不留空格3)sql语句 全部小写4)尽量避免一行的长度超过80个字符5)不允许把多个短语句写在一行中,即一行只写一条语句6)若函数或过程中的参数较长,则要进行适当的划分7)长表达式要在低优先级操作符处划分新行,操作符放在新行之首8)较长的语句、表达式等要分成多行书写9)相对独立的程序块与块之间加空行10)函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格(2)编程惯例:功能书写View 层 负责页面数据显示    尽可能的瘦和简单化    尽可能合理的情况下,不写入业务逻辑    尽量把条件逻辑放在控制层Controller层 负责业务逻辑 方法与变量要有必要的注释说明Model 层 负责单表数据处理与服务器端数据校验规则helpers层 负责页面表现逻辑(四)可读性  (1)避免使用不易理解的数字、字母,使用有意义的标识来替代。  (2)不要使用难懂的技巧性很高的语句。            (3)源程序中关系较为紧密的代码应尽可能相邻。

热点排行