DNN之路-什么是CMS

在对DNN进行介绍之前,我要首先对CMS做一下介绍。

什么是CMS

CMS全称是内容管理系统(Content Management System),这个词语可能已经是大家耳熟能详的了,还有另外一个词语,信息发布管理系统,有可能很多人将这俩个系统之间画上等号,实际上这是对CMS的一种误解。

以前在我刚开始接触CMS时,我也认为一个整站系统就是CMS,里面包括了信息发布、产品发布、人才招聘、留言管理等等一系列功能的集合就是一个CMS,在这个基础上可以很轻松的去构建一个网站。后来当我慢慢的开始关注更多的比较优秀的系统时,我对CMS有了一个重新的认识。

我们构建任何一个类型的网站的时候,比如一个企业网站,一个门户网站,一个招聘网站等等,产品、资讯、招聘等等实际上是这些网站的功能,或者称之为业务,把业务剥离开来,这些网站剩下来的东西是共通的,比如网站地图(SiteMap,或者称之为网站导航),页面的布局,以至于到服务器端的数据库访问、缓存、日志、任务等等,这些内容在所有的WEB应用中都是必须的,于是我们可以把这些非常共通的功能提取出来作为我们的基础框架。随之而来的产生了另外一个问题,单单有这些内容是没有意义的,没有业务,就没有产品,于是另外一个需求产生了,在基础框架之上如何才能集中的开发一个应用所需要的业务,这就是CMS另外一个非常重要的特点,灵活的模块机制,每一个业务都作为一个模块出现在基础框架之上,可以把模块理解为一个个的积木,通过框架来把积木搭建成我们需要的应用。于是,CMS的概念就可以理解为完善的基础框架加上灵活的模块机制,内容管理就包括了对系统资源的管理和对模块的管理。

什么是优秀的CMS

目前市场上CMS产品有很多很多,那应该如何去区分产品的优劣呢?我想从以下几点出发:

1.       CMS的架构很重要。因为我们的业务都是构建于CMS的框架之上,如果框架本身的性能就存在问题,那在其上进行业务开发就有捉襟见肘之感,一个优秀的CMS是需要让业务开发的人员忘记CMS框架本身的存在。总结起来就是允许在优秀的架构里面出现不好的代码,因为代码重构比之架构的重构要容易的多,而且我们没有必要去重构别人提供的CMS架构,实际上我们只需要去选择一个已经很优秀的架构;

2.       CMS本身和业务模块之间没有耦合。零耦合是一个目标,这里的意思是每一个模块都可以很方便的进行添加或者移除,而对CMS系统本身没有任何影响,真正的做到产品的可定制化。

3.       CMS的框架更新是否及时。没有任何一款产品是可以适应所有环境的,当我们在挑选一款CMS产品时,要看该款产品是否有开发计划,最少有一年内的计划,需要更新产品的哪些方面,这个产品是否有很好的缺陷跟踪平台,能够及时的响应客户的问题。

 

以上是从一个用户挑选CMS产品的角度来说的,这些需求转到我们开发者的角度上来说,就是要去考虑我们如何才能做到这些?

 

DNN是否是一个优秀的CMS

当然是了,否则我写这么多去推荐他干什么?至于他有哪些好处,有哪些坏处,我们可以在他上面做些什么,请看下一章:打开DNN的大门

 

 

 

本文著作权归文章作者钟玉涵所有,任何转载请先联系作者,否则作者将保留诉诸法律的权力。