12、Rails开发:从基础到布局优化

Rails开发:从基础到布局优化

1. Ruby与Rails基础

1.1 Block、Proc和Lambda

在普通的Rails代码中,虽然block很常见,但很少能看到procs或lambdas。不过在Rails的源代码里,由于经常使用高级编程技术,它们更为常见。block(或proc、lambda)的关键在于,它的工作方式类似于方法。即便没有看到方法定义,也可以使用block来计算一系列语句并获得结果。

1.2 Rails与更多关键字

之前接触了一些Ruby代码中的关键字和结构,这有助于提升阅读Ruby代码的能力。示例代码仅使用了Ruby API中的关键字,而Rails有自己的API,包含数百个类和方法。Rails API利用Ruby语言的语法和关键字来构建新的类,并创建特定于Rails且对构建Web应用程序有用的新关键字。

Ruby是一种通用语言,可用于任何场景;而Rails是一种领域特定语言(DSL),仅用于构建Web应用程序。Ruby易于扩展和调整,这使得它非常适合构建像Rails这样的DSL。例如,开发者可以重新定义类、向现有类添加额外的方法,并使用特殊的 method_missing 方法来处理之前未定义的方法调用,这被称为元编程。

当向Rails项目中添加gem时,会引入额外的关键字。一些强大的gem会为项目添加自己的DSL,如Cucumber gem提供了一种将用户故事转化为自动化测试的DSL。虽然添加Rails、额外的gem和DSL会增加复杂性,但它们都遵循Ruby语言的语法。随着对Ruby关键字和语言结构的熟悉,就能拆解复杂性并理解任何代码。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值