- 浏览: 460194 次
- 性别:
- 来自: 济南
文章分类
- 全部博客 (470)
- 前言 (1)
- 【sys】centos6.2 (51)
- 【sys】shell (8)
- 【sys】yum (1)
- software (6)
- 【tec】ruby (16)
- 【tec】rails (35)
- 【tec】rails路由 (2)
- 【tec】rails部署 (10)
- 【tec】rails优化 (6)
- 【tec】rails测试 (11)
- 【tec】php (45)
- 【tec】android (1)
- 【tec】ios (125)
- 【data】mysql (11)
- web (6)
- 【life】文学与提升 (2)
- life (36)
- 【life】怀念 (1)
- 【web】nginx (5)
- 【web】网络与安全 (4)
- 工作随笔 (1)
- 【software】svn (5)
- 【script】jquery (10)
- powerEdge (2)
- 杂七杂八 (5)
- 【sys】ubuntu (9)
- 【sys】windows (4)
- 【tec】java (1)
- 【tec】html (3)
- 【tec】c++ (38)
- 【tec】汇编 (1)
- 【data】数据库 (1)
- 【exchange 】学术交流 (1)
- 【tec】域名空间 (1)
- 【tec】编程先知 (1)
- 【tec】网站建设 (7)
- 【sys】mac (24)
- 【sys】seo (1)
- 【tec】wp (1)
- 【software】git (4)
最新评论
-
fireDragonpzy:
呵呵 貌似我网站上的有更新 你从那里看看 这个博客维护的不及时 ...
牛人经典语录 -
Peppermintchz:
还真这么2过啊!!好怀念啊
牛人经典语录 -
fireDragonpzy:
chenhong53 写道你好,我想问一下,能不能给一组精灵数 ...
cocos2d-x事件触发的优先级 -
chenhong53:
你好,我想问一下,能不能给一组精灵数组中的精灵添加触屏优先级, ...
cocos2d-x事件触发的优先级 -
fireDragonpzy:
dreamstar1020 写道谢谢庞兄指点,写的很详细,谢谢 ...
致:上海郑兄(虚拟主机-web服务器搭建)
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用到的脚本,也即常用的工具程序比如:generate test: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) 全局变量:要用 ”$” 开头,其余的规则和局部变量一致 如: $global 5) 常量:一般首字母大写,但建议全部大写,以多个单词命名,则单词与单词之间用 ’_’ 连接 如:PDF_KEK 6) 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)源程序中关系较为紧密的代码应尽可能相邻。
发表评论
-
Ruby on Rails 性能优化工具
2012-05-15 08:43 740http://www.oschina.net/news/269 ... -
网页中 pdf查看
2012-05-06 16:24 844centos:仿百科--http://www.centos.b ... -
rails走验证和不走验证方法汇总
2012-05-06 16:13 731走validation的方法: create ... -
ruby调用win32ole打开文件
2012-05-03 20:58 840http://www.iteye.com/topic/1168 ... -
nginx + rails 防盗链
2012-04-16 11:12 737iteye:http://ywencn.iteye.com/b ... -
rails invalid date
2012-04-15 10:54 802迁移数据库或者是跑网站的时候出现:invalid date ... -
ror技巧--空判断
2012-03-30 13:23 853取某个对象的一个属性,先判断对象是否为nil,不是nil就返回 ... -
rails 数据库配置
2012-03-26 10:43 1031驱动配置: Gemfile:gem 'mysql2', '0 ... -
spork+rspec-rails
2012-03-19 14:19 800http://www.rubyinside.com/how-t ... -
libmysqlclient.so.18错误
2012-03-17 13:08 2584设置libmysqlclient的软链,防止编译其它依赖Mys ... -
rails测试工具--rspec
2012-03-09 11:26 886http://article.yeeyan.org/view/ ... -
rails命令大全
2012-03-09 10:54 9131、创建一个Rails应用程序 $ rails app_na ... -
rails命名约定
2012-03-02 15:49 757rails命名约定 -
Rails中的link_to方法注意点
2012-02-21 19:53 739http://www.blogjava.net/pengpen ... -
ror异步传输
2012-02-21 19:34 800$.ajax({ type : "POST& ... -
rails base 之数据库---c u d
2012-02-20 14:07 830C 1 create @tempcourse = Tempco ... -
watir安装(含devkit安装)
2012-02-16 15:26 1083到 http://rubyinstaller.org/dow ... -
rails文件上传下载和删除
2012-02-16 14:07 882http://blog.csdn.net/xuchao111/ ... -
rails base 之 logger
2012-02-16 09:06 771http://www.cnblogs.com/orez88/a ... -
YAML
2012-02-15 10:02 870http://corelib.rubyonrails.org/ ...
相关推荐
Rails API 是一个专门为构建应用程序接口(API)设计的Ruby on Rails框架版本。它专注于提供一套轻量级的工具,使得开发者能够快速、高效地创建RESTful API服务。Rails API的目的是为了提高性能,并减小API服务器与...
《享洗自助洗衣系统Rails代码规范详解》 在软件开发过程中,代码规范是提高代码质量、增强团队协作效率的关键因素。针对北京交通大学享洗自助洗衣系统的开发,项目负责人王子杰制定了详尽的Ruby on Rails(简称...
- **Rack**:Rack是Ruby Web应用的一个接口规范,Rails基于Rack实现了自己的请求处理流程。 - **ActionDispatch**:ActionDispatch是Rails中处理HTTP请求的核心模块,负责解析请求并将请求分发到合适的控制器方法。 ...
- **约定优于配置**:几乎不需要配置文件,预定义的目录结构和命名规范减少了代码量,简化了维护工作。 - **最佳实践**:采用MVC(Model-View-Controller)架构模式,分离业务逻辑、数据管理和界面展示。 #### 六、...
10. **Rails最佳实践**:学习社区公认的编码规范和最佳实践,提升代码质量和可维护性。 这份Rails学习资料很可能是为了覆盖以上这些知识点,帮助你快速搭建并理解Rails应用。通过阅读文档、实践示例代码和利用辅助...
- **Rails风格指南:** 特别针对Rails框架提供了详细的编码规范。 2. **代码覆盖率:** 使用工具如 `simplecov` 和 `coveralls.io` 来监测代码覆盖率,确保测试覆盖足够的业务逻辑,这对于重构至关重要。 - **...
Rails项目包含了许多默认文件和目录,这些文件和目录遵循特定的命名和组织规范。例如,Rails中的控制器文件通常位于app/controllers目录下,且文件名需以Controller结尾,类名则遵循小写和下划线命名约定。例如,...
12. **Rails最佳实践**:学习并遵循Rails社区推崇的最佳实践,如命名规范、代码结构和风格,以提高代码可读性和维护性。 当你解压"Rails_Full_Version"并开始开发时,可以参考这些知识点逐步构建和定制你的后台管理...
3. **表单元素**:提供多种表单控件,如输入框、下拉框、日期选择器等,以及表单验证机制,使得用户输入更加规范。 4. **多语言支持**:InspiniaAdmin支持多语言,方便构建跨国或跨地区的项目,适应全球化需求。 5...
Avocado与您的Rails规范挂钩,并生成一个包含有用信息的JSON文件。 它将JSON文件发送到可配置的URL,您可以在其中进行任何所需的操作,例如您的移动团队的Display API文档。 默认情况下,Avocado在Avocado::Engine...
8. **最佳实践**:提供在Java环境中使用JRuby和Rails的最佳实践,指导开发者遵循最佳的设计和编码规范。 通过学习这本教程,读者将能够熟练地在Java项目中运用JRuby和Rails,实现更高效的开发流程,并充分利用两者...
HW2:RAILS简介-向鱼R添加功能 在本作业中,您将向现有的简单Rails应用程序添加功能,并将结果公开部署在Heroku云托管服务上。 我们将针对您所部署的版本运行实时集成测试。 一般建议:这项作业涉及以各种方式修改...
首先,JRuby是一个开源的、符合Ruby语言规范的实现,由Java编写。它为开发者提供了在Java平台上使用Ruby语法和库的能力,同时也支持与Java类库的无缝集成。这使得JRuby成为混合Java和Ruby开发的利器,尤其是在需要高...
规范 单元(模型)测试 集成(请求)测试 用水豚进行E2E(系统)测试 以上所有的TDD Ruby一般 可能是一些前端类型的工作 入门 先决条件 确保安装了以下最新版本: 这就是您需要将代码下拉到计算机上并将更改提交...
Rails最佳实践是提升代码质量和可维护性的关键,下面将详细介绍一些重要的Rails开发规范和技巧。 1. **DRY (Don't Repeat Yourself)**:DRY原则是Rails的核心哲学之一,提倡避免重复的代码。通过创建模块化、可重用...
此外,Rails 3 引入了插件系统的重大升级,转变为Gemfile和Bundler的使用,使得依赖管理更为规范和方便。开发人员可以通过一个统一的Gemfile来声明项目的所有依赖,并通过Bundler自动安装和管理这些gem,确保了环境...
2. **restful-authentication.gemspec**:这是gem规范文件,包含了插件的基本信息,如版本号、依赖项等,用于安装和管理插件。 3. **.gitignore**:列出在Git版本控制系统中应忽略的文件和目录,避免将不必要的文件...
他讨论了如何贡献代码,遵循项目规范,参与社区讨论,以及如何处理版本控制和代码审查过程。这对于希望参与开源社区并为 Ruby on Rails 项目做出贡献的开发者来说,是极其宝贵的信息。 ##### 4. 设计模式在 Ruby 中...
3. **RESTful架构支持**:Rails 3继承了对RESTful架构的支持,使Web应用的设计更加规范和一致。 4. **强大的数据库抽象层**:Active Record模式提供了一种灵活的方式来处理数据库操作,简化了数据访问代码。 5. **...