为什么一直没有 Django 的“终极”Blog 程序?

B-List 中 James :Django 中没有一个终极的 blog 程序,也许永远也不会有。

他的理由是,像 Word Press 那样流行的 blog 程序,都体现一种 "all-in-one" 的理念,说白了是给非专业用户使用的;相比而言,Django 鼓励的是最大化的重用,比如 Django 中的 auth 和 admin,想在所有项目中能通用这些东西。所以,他们的开发理念是 Blog 程序应该由很多个独立的、可复用的程序组成:通用的评论系统、通用的后台管理、通用的身份验证、。。。
(在 Django 中,可复用的单元是 application. 一个 project 可由多个 application 组成)。
而 Blog 程序本身的内容,则由他们组合而成。

我要说的是,这种想法过于理想化,并且会把 Django 带向错误的方向
每个项目的需求都是十分定制化的,想把其中一些东西拿出来成为独立的插件,想法是好的,但是 Django 本身缺乏类似组件这样的复用机制。其结果是,永远只能做一些玩具级别的东西。比如 Django 的 admin, 除了做简单的新闻发布之类的应用,有几个严格的项目能用上它的?

而 Blog 的需求看似简单,其实复杂,做一个 all-in-one 的 Blog 程序非常必要。我们已经在邮件列表或网上看到太多的玩具级 'blog' 程序了,难道还要继续这么错下去吗?

其实从语言特性讲,PHP 一点都比不上 Python/Django, 可是为什么 PHP 的市场占有量更大,我想这跟 Python/Django 的开发过于理想化有一定的关系。

该帖的回复中倒是有一个人在用 Django 做 Blog 程序,叫做 Banjo. 看特性还不错。可以保持关注:
http://coderseye.com/2007/banjo-blog-nearing-01-release.html
可惜还没有发布。

posted on 2007-12-05 12:49  NeilChen  阅读(3652)  评论(11编辑  收藏  举报

导航