编写自定义CMS与使用现有的开源产品


Writing custom CMS vs. using existing open source product

我一直在开发一个自定义CMS,如果有客户,我想使用它。但我问了我的一些朋友我应该怎么做:只需使用Joomla或Wordpress等现有的CMS,或者自己写。

我想使用自定义CMS的原因是因为我学会了更快地编写脚本,我可以完全控制一切,我确切地知道发生了什么。

开发自定义解决方案总是感觉很快,因为您正在积极地自己编写代码。

另一方面,当使用Joomla或Wordpress时,您需要学习现有的系统,并将更多的时间花在学习方面。

如果CMS不是专门化的(视频、政府文件等),那么编写自定义内容就很少有回报:最终你需要编写更多的代码,尽管开发速度可能很快。PHP CMS产品化程度很高,选择一个的好处超过了维护由一个人(您)编写的大型代码库的好处。使用开源CMS,您可以在更大的池中提取资源。

此外,在您可能不可用的情况下,将代码库建立在知名产品的基础上也是您的客户利益所在。如果你不告诉客户开源的好处,那就不是诚实的生意。

市面上有很多众所周知的CMS,客户也学会了喜欢和使用它们。

编写自己的CMS并非易事(这是一种轻描淡写的说法)。

如果只是为了学习,那么无论如何,去写你自己的,但对于客户项目,我建议你使用现有的项目之一。

就灵活性而言,如今大多数CMS几乎允许最大的灵活性;你对它们几乎没有什么不能做的。

我想学习如何扩展现有的CMS。

这样做有几个原因:

  • 你不必为这样的事情重新发明轮子
    • 用户管理
    • 身份验证
    • 授权
    • 与社交网络的整合
  • Drupal、Wordpress和Joomla都有很棒的社区,所以你几乎肯定会得到:

    • 成熟代码库
    • 大量的生产测试
    • 最终客户的文档
    • 大量的模板和插件
  • 您的客户需要的大多数功能可能已经由那些成熟的CMSes 实现了

众所周知,创建自己的代码比理解别人的代码更容易。这可能是你应该开始创建自己的唯一原因。

尽管试着想象一下,在这些成熟的CMS上,数百名工作人员在10多年的编码过程中,在架构、设计和模式方面犯了多少错误并得到了纠正。你准备好重复并纠正它们了吗?

正如您在评论中所建议的,如果您想这样做是为了获得学习体验,当然,请继续!这将是一次巨大的学习经历。你决不能放弃,要不断改进。

然而,即使你在接下来的6个月里独自研究你的CMS,它也可能没有Drupal或任何其他CMS那样强大和精致。你可能对客户不利。

但谁知道呢,如果你要带来一种全新的内容思维模式,你可能只需要聚集一个庞大的社区,然后你的CMS就可以成为数百个现有社区的可行替代方案。

如果没有认真的研究和计划,就不要涉足这一领域。