向坤 2009年08月12日 星期三 22:53 | 2706次浏览 | 4条评论
转自我的博客:http://thinkingcafe.cn/blog/2009/08/459/
因为下学期要分管 研究生会的信息工作,也开始考虑网站建设的计划,基本的方案还是采用开源php的cms做一些简单的定制。很早就听说了 drupal 和 joomla 这 两个外国开源cms的代表,简单在本地部署一下看了之后,还是准备用drupal。目前感觉国内drupal和joomla的应用还是比较少,大部分建站 的都是用国内的开源cms吧,不过相比之下在这两个开源cms在架构上明显还是比国内cms做得好很多,结构化,插件支持,可扩展性都很不错。
但是在闭门钻研了drupal3天之后,我还是决定放弃drupal了,这个方案确实不太可行。一方面难度是一个问题,很多文档都是英文,扩展模块 太多,要真正实现比较好的定制,花大量时间学习各类模块是必不可少的。但是我觉得drupal在架构也总给我一中别扭的感觉。这里不是说drupal的架 构不够优秀,而是感觉drupal虽然做了一个很好的架构,但是它最尴尬的一点是这个优良的架构是实际使用的过程中并没有真正减少太多开发带来的复杂性。
我认为的一个优秀的架构在应该满足两点要求,在进行抽象和提供简单接口的同时,又要保持系统的易拓展性。比如说 emacs 基于elisp的架构,emacs中基本上所有的功能在底层都是通过elisp函数实现的,所以只要有足够的elisp编程能力和对emacs的熟悉,几乎可以实现任何的功能。即使对于elisp完全不熟悉,也可以直接使用别人写好的包实现自己需要的功能。另一个列子是 wordpress ,它在提供基本的博客编写功能的时候,通过大量的第三方插件和主题,实现了丰富的扩展。完全不需要用户懂任何php和css的知识就可以建立非常漂亮,功能齐全的站点。
而drupal比较尴尬的一点是它的拓展模块体系太复杂了,远没有达到向wordpress那样拿来就用的地步,往往要花大量的时间学习,再在加上 学习drupal本身核心库的基本概念,光这一些的学习成本就远远超出我之前的预期。而且很多主题也远远没有达到直接可以使用的地步,很多时候还要自己改很 多东西。在深入了解drupal之后的一点感觉就是,想要drupal建立一个简单的站点,那么drupal本身做得那么多抽象和架构,貌似完全是杀鸡用 牛刀;但是想要用drupal做一个高定制的站点,投入进去的学习成本又已经不亚于用php直接重写一个网站了。所以之前说本质上drupal并没有在很 大程度上降低开发的复杂性。
最后我觉得drupal可能比较适合的人那种以做美工和网页前台,对编程和数据库等逻辑的东西基本上没有什么概念的人,通过drupal可以在一定程度上降低开发难度,不用关心编程的细节,只要想好业务处理的细节,然后熟悉drupal,就可以独立开发网站了。
Zeuux © 2024
京ICP备05028076号
回复 曲池峰 2009年09月29日 星期二 17:10