是否使用CMS

时间:2011-01-02 20:28:52

标签: asp.net asp.net-mvc content-management-system

我开始想知道ASP.NET Webforms / MVC是否已经在Web开发人员工具箱中占有一席之地......似乎像Umbraco这样的CMS系统已经取代了Web开发人员的工作。是的我知道那些CMS系统是使用ASP.NET Webforms / MVC构建的 - 但是,如果你要做的就是使用CMS系统,那么学习这些东西是否有任何理由呢? - 此外,我无法找到任何可以由您自己的Web应用程序替换CMS系统的情况。

因此,我的问题是:使用CMS时是否有理由学习Webforms / MVC?

修改

我的问题可能更像:我何时应该使用CMS,何时应该开始构建自己的网络应用程序?

7 个答案:

答案 0 :(得分:20)

CMS解决方案的问题,我的意思是所有 CMS解决方案(不仅仅是Umbraco,或其他.NET解决方案,但使用任何语言),您将始终为使用它们付出代价。您可以从使用CMS所节省的时间中获得更多收益,但需要考虑以下权衡:

  • 你会牺牲很大的灵活性
  • 您可以支付重大的性能损失。许多CMS加载大量模块和代码来为每个请求提供服务,其中大部分与特定页面功能无关。 (虽然有些CMS比其他CMS更加沉重!)
  • 您项目的未来与另一家供应商及其自己的选择相关联
  • 通常,您排除使用其他可能更符合客户需求的数据库的可能性(Umbraco不支持PostgreSQL,Kentico仅支持SQL Server)

一旦开始使用CMS,您将被束缚于满足CMS框架的体系结构决策和API,并最终可以支持到角落。

如果您的“网站”更像是网络应用程序而不是纯粹的内容交付网站,那么这可能会特别成问题。在这种情况下,选择使用Web应用程序框架的完全灵活性进行构建更有意义,而不是冒险进入架构角落。

另一方面,如果您正在构建一个可能有数百个页面的网站,其中包含大量用户提供的内容而且不是Web应用程序,那么通常情况下CMS就是可行的方式,很有道理。但请记住,您现在有两个框架和两个API可供学习和管理(您的平台框架和CMS框架)。

答案 1 :(得分:18)

编写CMS就像入侵阿富汗一样。

每个人都有转机,但没有人获胜。

答案 2 :(得分:8)

我认为Stack Overflow可能不是用CMS构建的。这是否回答你的问题? =)

<强>更新

回答您的最新问题。

如果您想要一个包含新闻,文章,论坛等的常规公司网站:继续使用CMS。

如果您需要构建一个更自定义的网站,例如stackoverflow,系统的Web界面或类似的东西:使用MVC等构建它。

我个人使用CMS作为我们的合作网站和MVC框架,为我们的产品构建用户和管理界面。

答案 3 :(得分:4)

并非每个问题都需要CMS。同样地,并非每个问题都需要一个定制的MVC / webforms网站。这取决于您的要求。您选择了解决问题的技术。

构建与购买是最难做出的决定。作为开发人员,构建总是看起来最好你可以比他们想买的那堆鲤鱼做得更好。没关系,你正在重新发明轮子,轴,推车等。对于用户/管理层来说,购买总是看起来最好。他们不必刻意思考他们想要什么,现在可以拥有它,而不是在你写完之后3个月。他们忘记了定制&amp;让它无法升级。

我现在就停止咆哮。

答案 4 :(得分:3)

Umbraco是一个相当简单的CMS。要自定义它(例如版本7+),您需要知道重型MVC,JSON,XML,Sql等。

事实上,在Umbraco 7+上构建的站点完全基于您自己设置的MVC视图并分配给SurfaceControllers(它们是MVC控制器),您真正得到的就是用户能够编辑有关您的页面的内容并具有Umbraco在数据库中为您管理。

简而言之,您仍然需要有经验的Web开发人员在Umbraco上构建一个站点,他们只需要从头开始构建整个后端,从而节省大量时间。

您使用Umbraco来组织文档类型,定义哪些模板(MVC视图)用于呈现不同类型的文档(例如Web页面),然后您从头开始构建模板,100%控制HTML,Css和获得输出的Javascript。

Imo Umbraco更像是一个像Django这样的框架,而不是一个完整的CMS。

当然,你可以在Umbraco建立一个网站,而不是定制任何东西,但它将是一个非常好吃的网站。

Umbraco的重点是为熟练的.Net开发人员提供一个在其上构建网站的良好平台,但他们仍然需要构建它。

现在,sharepoint将更像是一个完整的CMS,你可以做很多事情,但让我们看看SharePoint的一些问题......

  1. 资源重,需要安装50+ Gig才能安装
  2. 只需启动16 GB的RAM(Sharepoint 2013)
  3. 需要Sql Server 2008 R2或同等版本(企业许可证,$$ chaching)
  4. 需要Windows Server($$ chaching)
  5. 它基本上是一个怪物,如果你需要的只是一个用户可编辑的blod平台......男人真是浪费钱。基金会是免费的,但不包括博客网站模板等内容,因此您购买服务器企业许可证(在某些情况下,$ big cachinge,40,000 $ +)。

答案 5 :(得分:2)

同意。像Umbraco这样的CMS为最基本的应用程序提供了(非常)良好的开箱即用解决方案。任何类型的专业目的都需要额外的编程知识。不过,你的专业,如果不是主要的需求,将会很好地理解业务需求。我想我们正在远离自己建造乐高积木以及用乐高积木打造整洁的玩具。干杯!

答案 6 :(得分:1)

CMS(或类似的应用程序框架)将为您提供大量开箱即用的功能,其中许多还具有良好的插件库。但是,如果要添加任何自定义功能,您仍需要编写WebForms / MVC代码。