20小时学会编程 互动版

框架选择

除了编程语言的选择之外,网络应用程序员对框架的选择也有自己独到的见解:代码程序库可以帮你更容易地完成大部分应用需要做的事。

大部分编程语言都包含大部分程序所需的常见程序库,但里面的专业工具非常少。这时就需要选择框架

Ruby现在有几个主要的网络应用开发框架,其中Ruby on RailsSinatra是最受欢迎的两个。

Ruby on Rails(经常缩写为Rails)是为Ruby开发的最早的主要网络应用框架之一。它由大卫·汉森于2004年创建,并很快成为最受欢迎的框架,曾经为37signals(一家私人控股的网络应用公司,汉森是合伙人)成功开发了几个口碑不错的应用。目前为止,数以千计的企业在使用由Rails开发出的大型关键业务的网络应用程序。

Rails非常依赖“生成器”,它是用单一命令创建大量样板代码的内置程式。样板代码可以根据程序员的不同要求做相应修正。有了Rails,程序员无须从头开始花大量时间创建一个应用。只要他们知道接下来怎么做,费不了多少工夫就可以创建出一个功能性应用来。

Sinatra则是由布雷克设计和开发的最小化框架。它不依赖生成器,更专注于为程序员提供大部分网络应用都需要的简单且常见的功能。

Sinatra应用似乎比Rails应用更简单。Rails的一个命令可以生成10个或20个,甚至更多的文档;而Sinatra应用常常只生成一个单一的文档,这样可以避免一堆可能需要删掉的代码。总的来说,它保持了项目的简单性,只增加必要的代码完成任务。

同语言选择一样,框架选择也需要根据个人喜好选择自己最合适的工具。Rails更受需要一定数量程序员的大型项目的青睐,而Sinatra则更适合于小型项目。然而,它们之间也存在许多重叠的特征,所以,来自Rubysource.com的一份分析报告认为它们最终还是见仁见智的选择。

这里有一个特别提醒:要想在编程方面取得进步,就必须专注学习。如果选定了合适的语言和框架,那么接下来学习其他相关编程知识时才会更顺利。但是,如果你为了追求所谓的“完美”编程环境而迟迟不做选择,那么你将为此荒废数年的宝贵时间。