我在Mac面世之前就开发软件了,因此我记得当时技术界的反应。很大程度上,技术圈的人都对此不太感冒。有意思的是,今天很多人对Bootstrap的负面影响议论纷纷,像极了1984年人们对Mac的指指点点。但两个事件中一致的是,人们不喜欢的东西,对他们却非常重要。

苹果意识到有些事所有软件都必须做,那为什么这些软件不采用相同的方法来做呢?如果能做到这一点,开发和调试就容易多了,而更重要的是,用起来也就容易多了!如果只有一种创建菜单的方式,那么用户只要在一个应用上学会使用菜单,就会使用任何应用中的菜单了。滚动条、窗口、键盘、鼠标、打印机、音乐,不都一样吗?

那时,程序员(包括我)之所以不喜欢Mac,是因为觉得它要拿我们做过的东西转变成商品去卖钱。另外,这种大一统的方式存在局限性。有一些应用的界面元素并不规范。怎么办?好,你自己来改,只能这样。

这在技术上就叫重构。如果你发现自己一遍一遍地在重复做一件事,不妨再努力一次做得更好一点,做出个API来,保证它灵活好用。然后,就再也不用重复了。这正是软件也能写得像摩天大楼那样高大复杂的奥秘。五年前最前沿的技术如今已经融入了操作系统。这就是进步,这样多好啊!

同样的情形在网站开发过程也随处可见。事实上,以Mac当年对未来的愿景观之,Web开发领域的重复劳动以及开发环境的落后程度是令人沮丧的。然而,Bootstrap至少担负起了重构的责任。如果我想做个菜单,那就用它来做好了。没错,我的菜单跟别人的没什么区别。但这对用户是好事儿啊。用户不用再学习第二种菜单、第三种菜单的用法了。

Bootstrap是必需的、绝对必要的,它的迅速普及就是明证。不光我的服务器端软件会用到它,我开发的模板语言里也少不了它,这样只要用户想使用Bootstrap,随时随地用就可以了。什么也不用做,也不用包含什么库。就像服务器硬件的一部分,跟苹果1984年在Mac OS上所做的一样。

跟所有重要的技术一样,Bootstrap只是“够好”而已,并非完美。换句话说,Mark Otto和Jacob Thornton还可以让自己的重构更上一层楼。然而,假如他们不断追求让代码更简洁、外观更漂亮,那恐怕就没有那么好用了。Bootstrap为你我这样忙于写网站的人彻底解决了用户界面的问题。

不过,我认为这只是开始。我预感到Bootstrap会成为Web的一个组件,或者说它很可能出现在你会用到的所有开发工具中。有朝一日——应该不会太久,设计人员将能够不修改任何样式和脚本,就给整个网站换一次皮肤。我没发现使用Bootstrap会带来什么局限性。Bootstrap不能取代设计师,相反,它是设计师手中的利器,也拓展了设计师的想象空间。

今天,能在O'Reilly出一本书往往标志着一种新技术走向成熟。现在,Bootstrap的书也出版了。作者Jake Spurlock是一位Web开发人员,已经使用Bootstrap写了很多网站,并在技术大会上分享过他的经验。我很荣幸,据说他是在看了我写的一系列博客文章之后才决定使用Bootstrap的。现在,我非常高兴地把他的书推荐给各位读者。来听听他为大家讲解Bootstrap的魔法吧,让自己也拥有推动世界进步的魔力!

Dave Winer

Scripting News编辑

2013年1月于纽约

目录

  • 版权声明
  • O'Reilly Media, Inc.介绍
  • 前言
  • 第1章 Bootstrap提供的网站框架
  • 第2章 Bootstrap预定义的CSS样式
  • 第3章 Bootstrap内置的布局组件
  • 第4章 Bootstrap支持的JavaScript插件
  • 第5章 实际使用Bootstrap
  • 作者及封面介绍