- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
跨越边界: Streamlined,第 1 部分
用 Ajax、元编程和 Ruby on Rails 框架进行企业级搭建
Ruby on Rails 是一种基于 Ruby 编程语言的高效的 Web 开发环境。Streamlined 是基于 Ruby on Rails 的一个快速发展的开放源码框架。Streamlined 综合了 Ajax、元编程、代码生成以及 Ruby on Rails 的强大功能,把 Rails 的生产力带到了一个新层次。
我生平首次参加马拉松培训。马拉松培训最有趣的方面——实际上,也是惟一的方面——就是提高不断叠加所带来的影响。有时,我为了提高效率而进行专门为了改进身体条件而设计的长短跑。有时,在跑步过程中,我学习避免小的错误,避免重复多余的姿势(多余的姿势对单个步幅没有太大影响,但却会在整个 26.2 英里的跑步过程中浪费能量或伤害到我)。我每周都有提高,可每周之间的区别并不显著。但是一个训练计划周期过后,我会从最初只能跑 4 英里提高到能跑 26.2 英里。软件开发也与此类似。如果持续进行小的改进,消除多余的重复,您就会不断地累积提高,从而在今后的每个项目中都会做得更好。
在这篇包含两部分的文章中,我把重点放在 Ruby on Rails 搭建上,这是一个能够在早期开发阶段削减重复的 Rails 特性。第 1 部分介绍 Rails 搭建的限制和 Streamlined,Streamlined 是个代码生成器,它高效地应用了元编程技术来消除更高层次上的重复。第 2 部分将进一步深入 Streamlined 的元编程模型及其定制特性。
低级重复与高级重复
在整个 跨越边界 系列中,我介绍了通过降低重复和提高效率实现反复改进的语言和框架:
具备诸如 duck typing 这类特性的编程语言,通过使用更少的类型定义、减少纯粹为了支持编译器所需要的代码数,能够提高灵活性和减少重复。
框架试图通过处理核心任务(例如持久性或事务)来提高效率和消除重复,这样就不必为每个新的应用程序编写代码。
Ruby on Rails 通过利用公共规范消除重复配置,允许框架推断您的意图,而不是强迫您配置应用程序特性(例如应用程序中特定的数据库表名称和列名称)。
就像所有高效的语言和框架必须做的那样,这些措施都把重点放在每个步骤上,或低级重复上。但是一旦搭建了一个有效的基础,就可以把目标放得更高。Rails 的搭建特性试图通过公共应用程序类型(数据库支持的 Web 应用程序)消除重复。
削减赘负
Rails 所做的削减数量惊人。重复配置、代码中重新阐述的规范,以及其他框架中的无效理念,在这个框架中都消失了。但是仍然存在大量的重复。对于所有的框架来说都是如此。请记住,日本汽车制造商不是靠造一辆车就威胁了奔驰和宝马公司的,而是通过不懈的改进。如果您为了搭建传统 Web 应用程序而在框架中寻找改进,那么仍然会找到大量可以削减的内容。
多数数据库支持的 Web 应用程序,几乎要为系统中每个主要的表都提供执行 CRUD 操作(创建、读取、更新和删除)的用户界面。 搭建这些用户界面应当自动进行,而不应当重复。 Rails 通过 搭建开始消除这种重复,搭建是一个特性,可以根据数据库表集合的内容构建默认的 CRUD 界面。使用 Rails,只用几个简单步骤,就可以从头开始构建一个搭建完整的应用程序。如果一直跟随 跨越边界 系列,那么以前就看过这些步骤。这次,我再把这些步骤简要介绍一下:
输入 rails trails 生成编排山地摩托车赛道的 Rails 应用程序。
用选中的数据库引擎创建叫作 trails_development 的数据库,并修改 trails/config/database.yml,以反映选中的配置。
切换到 trails 目录,,生成模型和控制器:输入 ruby script/generate model Trail (如果在 UNIX 上运行,可以省略 ruby) 生成叫作 Trail 的模型,输入 script/generate controller Trails 生成叫作 TrailsController 的控制器。
把文件 db/migrate/001_create_trail.rb 编辑成清单 1 那样:
清单 1. 初始迁移
class CreateTrails ActiveRecord::Migration
def self.up
create_table :trails do |t|
t.column :name, :string
t.column :difficulty, :string
您可能关注的文档
最近下载
- 《城市社区居家适老化改造技术标准》.pdf VIP
- 《深度访谈专题》课件.ppt VIP
- 体育赛事大型马拉松活动品牌推广赞助方案【体育赛事】【品牌推广】【ppt策划活动方案】.pptx VIP
- 风电进场道路清障施工方案.docx VIP
- 7《植物和我们》(课件)2025科学三年级上册粤教粤科版.ppt
- 《临床静脉导管维护操作专家共识》解读PPT.pptx VIP
- 西江月.夜行黄沙道中课件.ppt VIP
- 2024-2025学年天津市河东区七年级(上)第一次月考数学试卷+答案解析.pdf VIP
- 2020 KDOQI 慢性肾脏病临床实践营养指南.docx VIP
- 《成本会计学》实训资料(中国人民大学出版社版)参考答案.pdf VIP
文档评论(0)