`

从rails开始的胡思乱想

阅读更多

转载自 『风语者』 http://upwind.blogbus.com/logs/1427382.html

最近看到对David Heinemeier Hansson的访谈( Ruby on Rails: An Interview with David Heinemeier Hansson David Heinemeier Hansson是著名的 37signals的合伙人,并且是著名的web项目管理应用程序Basecamp的创始人。在访谈中他自己说处于两种较为流行的软件开发方法的交界<wbr></wbr>处,一种是象PHP语言那样的,快速而凌乱(quick-n<wbr></wbr>-dirty),另外一种是象JAVA那样的,慢速而规整(slow-n<wbr></wbr>-clean),但是他更需要的是快速而规整的(quick-n<wbr></wbr>-clean),而rails正好结合了上述两种方法的优势,而又有效的避免了他们的不足。


其实关注rails已经很久了,包括我的 美味也收集了很多这样的资料。在rails中有两个非常重要的观念或者称为哲学:一个是" DRY",即"don't repeat yourself",其含义就是"在一个系统中,每个知识片段应该<wbr></wbr>只在一个地方表述"。按照我粗浅的理解,这里面可以包含两层意思<wbr></wbr>,一个是从编程的技术层面来说,即通过清晰的MVC体系结构,使编程代码各司其职,在程序中没有重复和冗余的代码<wbr></wbr>;另一个,也可以从技术创新的角度来理解,"不要重复自己 <wbr></wbr>"就是要勇于创新,我们经常看到的情景可能是,如果一个程序员熟悉了一种编程方法<wbr></wbr>,即使他很落后,但是只要能够完成功能,再难看也一直会使用<wbr></wbr>,同时也不会考虑其他的编程方法,更别说体系结构了。另一个重要的理念称为"convention over configuration",可以表述为"约定俗成胜于(事必<wbr></wbr>)配置",这样,rails与那些使用大量XML文件进行配置的标<wbr></wbr>准的JAVA程序相比,就可以使用更少的代码、更高的效率来完成同样的功能<wbr></wbr>。所以我们在惊叹rails的体系结构和效率的时候,更有意思的是思考为什么我们没有提出这样<wbr></wbr>的体系结构。一直以来,微软的.NET和 SUN的J2EE是都是编程的两大主要体系结构,但就我的了解来说<wbr></wbr>,总有一种直觉,他们都在将简单的事情越变越复杂<wbr></wbr>。所以rails的出现在这两大阵营中都引起了很大的反响,重要的倒不是说rails一定比他们好多少<wbr></wbr>,而是人们开始重新审视,我们到底应该需要什么?

David Heinemeier Hansson究竟何许人也,查看他自己的介绍,发现他很年轻,一直住在丹麦的哥本哈根,也并无留学他国的经历<wbr></wbr>,但就是他凭借rails的走红,而被google和o<wbr></wbr>'reilly评为本年度的 "best hack",也因此成为今年最受关注的人物之一。还有一点<wbr></wbr>,rails使用的底层语言即不是.NET,也不是JAVA<wbr></wbr>,而是知名度并不高的ruby,可以说在rails出现之前,知道和关注ruby的人并不多<wbr></wbr>。所以从创新的角度来说,可能给我们的启示更大。在IT技术的很多<wbr></wbr>方面我们都落后与他人,只好随着他人的脚步亦步亦趋,甚至有时候亦步亦趋也会感到异常疲惫<wbr></wbr>,可rails告诉我们,另辟蹊径也未尝不可,只要你有真正创造性<wbr></wbr>的东西,并不一定非要延续原有的体系架构。

于是又想起了两个关于教育的小故事:
一个是关于两个教育预言的故事。前一阵偶然看到了央视的<wbr></wbr>《新教育风暴》,其中有关于两个预言的真实的故事。70年代末,我国派出教育考察团出访美国,看到他们的课堂纪律散漫<wbr></wbr>,小学三四年纪还在掰着指头算算术,学校重视体、音、美,而轻数<wbr></wbr>、理、化,于是得出结论说美国的基础教育正在走象没落和失败,如此下去,20年后中国必定超越美国的科技<wbr></wbr>大国的地位;同时期美国也派出了教育考察团来中国<wbr></wbr>,看到中国的学生上课纪律非常好,一般都将双手背在身后,只有有问题的时候才将右手举起<wbr></wbr>;学生回家以后有称为"家庭作业"的任务,以作为课堂学习的延续<wbr></wbr>;中国学生的成绩在世界各国同年龄学生中是最好的,于是美国的教育考察团也得出了一个结论<wbr></wbr>,中国作为一个如此重视教育,并且学生成绩优秀的大国<wbr></wbr>,20年后会超过美国成为科技大国。可是另人遗憾的是,20年过去了,中国并没有出现一位象比尔.盖茨的世界首富<wbr></wbr>,也没有出现美国那么多的诺贝尔获奖者,而美国的教育也没有没落<wbr></wbr>,尤其在90年代正确把握了计算机和互联网发展的方向后,在科技创新方面的步伐越来越大。

还有一个故事说的是外国的教育研究者来中国考察我们的基础教育<wbr></wbr>,于是学校自然做了一些安排,包括谁来上课,提什么问题<wbr></wbr>,由那个优秀的学生来回答,自然大家都很努力,课堂上也自然对答如流,作为中方的学校来说当然觉得很完<wbr></wbr>美了,可是在课后与外方专家的讨论中,老外提的问题却把中方代表难<wbr></wbr>住了,老外说,你们的学生都学会了,老师上课还教什么?

对于教育和创新,似乎永远有说不完的话题...
分享到:
评论

相关推荐

    rails 2.3.2离线安装rails 2.3.2离线安装

    rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails ...

    [Rails] Crafting Rails Applications (英文版)

    [Pragmatic Bookshelf] Crafting Rails Applications Expert Practices for Everyday Rails Development (E-Book) ☆ 图书概要:☆ Rails 3 is a huge step forward. You can now easily extend the framework, ...

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    Ruby on Rails Tutorial

    《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...

    Rails项目源代码

    一个用Ruby on Rails搭建的图片分享的网站项目.完整源代码

    Rails之道,完整扫描版

    《Rails之道》按照Rails的各个子系统进行组织编排,分别介绍了Rails的环境、初始过程、配置和日志记录,Rails的分配器、控制器、页面生成和路由,REST、资源和Rails,ActiveRecord的基础、关联、验证和高级技巧,...

    rails敏捷开发的购物车系统

    本资源是参照rails敏捷开发第四版书中的例子,rails的版本是rails3.2.6

    Bootstrap for Rails (2015)

    Bootstrap 3 和 Rails 4(样例用的是Ruby 2.1.1,Rails 4.1.4) Table of Contents Preface 1 Chapter 1: Introducing Web Application Development in Rails 7 Why Bootstrap with Rails? 8 Setting up a Todo ...

    adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成.zip

    adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成 AdminLTE Rails gem AdminLTE 是后端的高级 Bootstrap 主题。英镑 AdminLTE Rails gem 与 Rails 资产管道集成了英镑AdminLTE主题。安装将...

    Rails101_by_rails4.0

    中文世界唯一一本Rails 4.0.0 + Ruby 2.0.0 的自學書籍

    rails api(文档)

    rails文档 rails api 英文

    使用Aptana+Rails开发Rails Web应用(中文)

    使用Aptana+Rails开发Rails Web应用 有Aptana的安装配置等等,中文

    rails指南 中文版

    rails指南 中文版

    Agile Web Development with Rails 4

    Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly. You concentrate on creating the application, and Rails takes care of the details., Tens of thousands of ...

    Ruby on rails tutorial中文版(第二版)

    为了达成学习目标,本书使用了一个完整的方案:通过实例学习使用 Rails 从零开始创建一个真正的程序。如 Derek Sivers 在前言中所说的,本书内容采用线性TDD结构,需要从头开始按顺序读到结尾。如果你经常跳着阅读...

    rails框架介绍分享

    介绍rails框架,版本是rails2点几的,不过思路差不多,具体区别可以去看官网

    提升Ruby on Rails性能的几个解决方案

    简介 Ruby On Rails 框架自它提出之日...Rails 是一个真正彻底的 MVC(Model-View-Controller) 框架,Rails 清楚地将你的模型的代码与你的控制器的应用逻辑从 View 代码中分离出来。Rails 开发人员很少或者可能从未遇到

    rails金典教材3本

    Ruby+on+Rails+3+Tutorial.pdf 应用Rails进行敏捷Web开发第4版.pdf (Agile Web Development with Rails) Rails.Recipes.Rails.3.Edition.pdf

Global site tag (gtag.js) - Google Analytics