首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >重组web应用程序--应用哪种设计?

重组web应用程序--应用哪种设计?
EN

Software Engineering用户
提问于 2016-08-21 19:14:53
回答 2查看 181关注 0票数 0

我开始重写非常可怕的(和旧的) web应用程序。它运行在PHP5.3上,设计是完全疯狂的--模型和查看器,没有控制器等等。我已经能够重构代码来使用PHP 7,让自动加载程序开始使用Composer,我想开始重构核心。

我现在基本上需要的是将应用程序构造成框架本身、模块化系统和“包装器”?它定义了应用程序。我想要创建模块化的系统,并正确地定义层,而不需要重新考虑他们在一年左右的时间。不幸的是,我不能从头开始,代码本身包含大量的业务逻辑,这些逻辑需要分离成模块,这只能通过深入挖掘才能实现。

到目前为止,HMVC是我唯一能找到的东西,这是正确的方法吗?我通常需要一个正确的方向,当涉及到消息来源。

EN

回答 2

Software Engineering用户

发布于 2016-08-26 19:42:54

小心别把你读的东西混在一起..。

HMVC与“模块化”不一样。它的意思是“层次化”,所以你总是可以找到回到‘拥有’它的过程的方法,有些甚至持有可能已经发生的前一个和后一个进程(取决于你走哪条路)。但是,这和把它分成几块不一样。有些人在命名他们的方法时犯了这个错误。

模块化,另一方面,意味着它被分割成逻辑部分,在一起形成一个整体。

有人说,把两者结合起来,你就能从两个世界中得到最好的结果.但很难掌握..。;)

现在请回答你的问题:

您可以尝试将业务逻辑与其他所有内容分离,将它们放在您正在构建的模块中的单独(控制器-)帮助器中。你已经说过你必须:

它需要被分离成模块,这只能通过深入挖掘才能实现。

..。所以有一个很好的开始。

尝试并理解在Zend或Symfony中是如何完成的。在如何把它分解成可行的部分方面,这些可以给你很多的想法。

至于自动加载程序:您可以自己构建一个与Composer一起工作(通过前缀或通过spl_autoload_register())。我建议您尝试找出如何使用作曲家自动加载器。

票数 1
EN

Software Engineering用户

发布于 2016-08-22 11:55:55

我开始重写非常健壮(和旧的) web应用程序。

问:为什么?

它不起作用吗?你的“强健”形容词会说明情况并非如此。

是否缺少一些功能?

不安全吗?没人支持?

无法维护?

谁付钱给你做这项工作,他们到底想从中得到什么?

这是一位非常非常幸运的开发人员,他得到了一大笔钱,并被告知要在一些新的、时髦的技术中重新创造企业已经拥有的东西。

仅仅因为您认为代码“看起来不对”并不意味着它是不正确的。

票数 0
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/328966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档