写点什么

MountainWest RubyConf 2009 视频

  • 2009-04-08
  • 本文字数:1288 字

    阅读完需:约 4 分钟

3 月 13 日至 14 日在盐湖城举办了 2009 年的 MountainWest RubyConf ,在 Confreaks 上可以找到此次会议的所有演讲;我们选择了一些有意思的演讲,帮助你大致了解这个会议以及会议的一些要点。

Rails 的伟大重构

Yehuda Katz 讨论了将会成为合并到 Rails 3 中的 Merb。

第一个主题是 ORM 不可知论和 ActionORM,后者是一个其他 ORM 接口的抽象,使得用户更加方便简单地替换掉 ActiveRecord(3:00)。

Merb 的发展前景(11:10)和从 Rails 学习到的新特性(Controller#call,Router#call)将会在 Rails 3 中得到保留,这样是为了让 Rails 和 Merb 足够相似化,以使得容易进行迁移。

在 17:50,Yehuda 将会详细阐述一些正在开发的重构特性:回调的清理和加速,通过剖析发现瓶颈;在 ActionPack 中删除老旧和混乱的代码(21:52)。使用类似于 ActionDispatch 的工具,将代码划分到新的架构中(24:00)。

Merb 1 有三种 API(public,private 和 plug-in,28:25),Rails 同样也会加入 plug-in API,但是具体规格还没有决定。

Rack::Bug(30:55),由 DJango Debug Toolbar 带来的激动人性的特性,使得调试和导入代码更加容易。

最后(33:53),他们希望 JRuby 和 Ruby 1.9 确保能够运行 Rails 3。

DSL 的设计和构建

Jeremy McAnally 从创建 DSLs 的理由开始,对 DSLs 做了一个介绍。通过大量的例子,他阐述了外部(8:22)和内部 DSLs(10:05)的区别。

如果你已经了解了一些 DSLs 的基础知识,你可以直接跳过关于 DSLs 设计决策的章节(16:32),学习如何为当前语言寻找到最关键的术语。

演讲的剩余部分主要关于 DSLs 的不同实现模式(19:11),例如方法链接或者方法缺失的使用。

最后他介绍了 DSLs 的测试(32:40)。

Rubinius

看过了一个 Rubinius(垃圾收集器,FFI)最新进展的快速简介,你也许需要花费 5 分钟看看 Brian Ford 是怎么说的。

Rails 的可用性

演讲的开始进行了一番激励,然后介绍了 Rails 的可用性。此次演讲的主要部分包括 7 种可用性原则,并且举出大量的现实世界中的例子和给予开发者大量的建议。

  • 创建结构(4:50)
  • 使用标准(7:10)
  • 有远见(8:01)
  • 减少阻碍(10:00)
  • 增加可供性(11:53)
  • 给予回馈(15:08)
  • 简化(17:18)

在 Adam Dunford(21:30)的演讲之后,Jason Edwards 从一个新奇的简单结构的 Rails 应用程序开始,介绍了如何通过以上的 7 个原则,在数次迭代重构中使得此程序可用性更加丰富。

Vertebra

Engine Yard 的 Kirk Haines 解释了他们管理容错服务的架构,Vertebra 是如何组成的。他从基础底层开始介绍了:基于 XAMPP 的协议(2:54)和 Ejabberd 服务器(5:15)。

一些云中的代理程序(5:55)将会在你的机器上运行,提供在 Herault(7:30)注册的特定服务。这些服务能够被客户端代理程序从 Herault 中检索到(9:30)。Herault 同样可以处理验证过程(10:06)。

如果你有一些代理程序提供同样的功能,你可以使用 Scope(11:56)来控制请求和操作的分配。

在这个介绍之后,Haines 阐述了构建 Vertebra 所基于的库和架构,以及他们所遇到的问题:XMPP4EM(14:05),Loudmouth(14:28),EventMachine::Deferrable(15:23)。

查看英文原文: MountainWest RubyConf 2009 Videos

2009-04-08 08:481258
用户头像

发布了 90 篇内容, 共 34.4 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

Web 身份验证:Cookie 与 令牌

devpoint

Cookie 8月日更

爱你的人,会管着你。而不是惯着你。

石云升

娱乐圈 8月日更 刑法

Java中的JVM是如何实现多线程的?

程序员阿杜

Java JVM 多线程 8月日更

docker个人理解与安装

小鲍侃java

8月日更

异常机制的概述

程序员阿杜

Java 8月日更

Python 数值中的下划线是怎么回事?

Python猫

Python

01-架构的定义

Lane

带你全面了解 Git 系列 02 - 常用 Git 技巧

淼💦 淼

git GitHub

菜鸡学习python

Augus

8月日更

【Flutter 专题】131 图解 AnimatedList 动画列表

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

如何做分库分表,常见方案汇总

架构精进之路

MySQL 分库分表 8月日更

中大型组织 DevOps 成熟度模型设计

Phodal

DevOps thoughtworks phodal

🏆【Java技术之旅】教你如何使用异步神器CompletableFuture

洛神灬殇

Java 异步编程 8月日更 CompetableFuture

Numpy 常用数据结构和清理函数

若尘

Numpy 数据清洗 Python编程 8月日更

架构师实战营 模块九作业(设计电商秒杀系统)

代廉洁

架构实战营

八月未央,早睡早起

escray

读书笔记 8月日更

Java 代理模式

gin

Java 代理 Proxy

gopher成长之路(二):听万俊峰老师演讲有感

非晓为骁

学习 个人成长 gopher

Vue进阶(幺柒幺):前端用户体验提升(五)Flex实现弹性布局

No Silver Bullet

Vue Flex 8月日更

kubernetes/k8s CRI 分析 - 容器运行时接口分析

良凯尔

Kubernetes 源码分析 Kubernetes Plugin #Kubernetes# cri-o

十大排序算法--冒泡排序

Ayue、

排序算法 8月日更

Spring 源码解析 -- SpringWeb过滤器Filter解析

Java spring 源码阅读

使用PSI(Pressure Stall Information)监控服务器资源

mazhen

Linux DevOps Linux Kenel linux运维

架构实战营-毕业总结

大可

01 设计模式之单例模式

陈皮的JavaLib

设计模式 单例模式 8月日更

互相讨厌的奥运与气候

脑极体

Vue进阶(幺捌零):JS 向 Vue 传值

No Silver Bullet

Vue 8月日更

恐惧和自我偏见 -- 成长的最大障碍

俞凡

认知

渣男已经预订大碗牢饭,“科技渣男”怎么还在疯狂套路?

白洞计划

Cobra 快速入门 - 专为命令行程序而生

xcbeyond

cobra Go 语言 8月日更

架构训练营模块 2 作业 - 学生信息管理系统的架构文档 - 江哲

江哲

MountainWest RubyConf 2009视频_Ruby_Mirko Stocker_InfoQ精选文章