jbl*_*lue 5 php language-agnostic forum zend-framework
我已经就项目的设置进行了咨询,并希望将某些想法从某人身上反复出来以获得额外的意见.
这个网站的主要部分非常复杂,并且具有非常自定义的功能,所以从我看来它更像是一个webapp.但是需要一个博客,还需要一个论坛.这是该项目的总体概述.
因为网站的主要部分更像是一个webapp,我认为这个项目应该分成由不同框架和CMS处理的单个部分,以便每个组件不限制其他组件.这是一个非常难以出售的决定,因为没有人想要维护不同的框架和CMS,除非这对他们来说真的是正确的事情.
我的逻辑是,因为网站的主要部分实际上是一个复杂的webapp,试图将它装入像Drupal或Joomla这样的CMS,或者任何会增加开发时间和成本的东西.这部分是有意义的,使用更灵活的技术,如Zend Framework或Symfony创建,基本上是一个框架而不是CMS.
对于其他组件,我没有看到使用框架的重点,因为其中许多是标准组件,如博客和论坛.所以对于网站的其余部分,我的选择是1)用我熟悉的单个CMS(比如Drupal)构建所需的一切,但是因为我已经走了划分网站的道路,我想选项2)为什么不进一步划分网站,为每个组件选择最好的软件.例如Drupal并没有成为一个很棒的论坛.这不是它的力量所在.
事实证明,参与撰写博客的人大多不是为论坛做贡献的人,所以我认为我不应该担心在两个独立的软件上培训相同的员工.
但是我无法决定这个网站的可维护性.一方面我认为维护三种主要的不同技术将更加困难:应用框架,专业论坛软件(建议欢迎)和专业博客软件(建议欢迎),但另一方面,我认为这可能实际上更容易维护,因为网站的一部分可以更容易地被删除或更改,而不会影响其他一切.
这是我的总体想法,但我担心它可能很难销售,因为它可能看起来像我试图使项目复杂化.我确实认为这种方法实际上简化了它.那么对此有何看法?有没有我没有充分考虑的问题?如果您遇到相同类型的问题,您会以相似或不同的方式做出哪些架构决策?
这确实是一个艰难的决定.然而,在此之前还有一些需要回答的关键问题.
1:博客是否包含您在那里看到的博客软件的全部功能?或者您需要更小,更简单的功能集?同样适用于论坛.
2:是否需要在所有三个系统中共享用户群?
3:网站的设计是否要求完全相同?
如果你们需要完整的论坛和博客,那么选择单独的系统是明智的.但是,如果所需的功能集很小,那么自定义构建它可能更明智,而不会花费太多时间.
如果需要共享用户群,那么在三个不同的系统中集成会话和用户群将是一件痛苦的事情,只需使用一个用户表就更容易和更顺畅.你将不得不破解论坛和博客平台,使其与主要的cms一起工作,会有问题这样做.
如果设计可以在这些系统上有所不同,那就没问题,但是如果完全相同则是壮举,并且需要专门的人员来进行相关的论坛和博客平台.因此,维护设计也是一个问题.
这是一个非常困难的决定.它将是短期成本与长期成本.如果您认为网络应用程序可以停留一段时间,我会投票支持增加的短期成本,这会让事情变得更加容易.
另请注意:如果您将架构设计为模块化,则可以将论坛和博客系统开发为可插入的模块.因此,您可以自由地将网站部分脱机.