首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >复杂和企业级应用程序的结构

复杂和企业级应用程序的结构
EN

Stack Overflow用户
提问于 2009-12-16 01:45:24
回答 2查看 193关注 0票数 0

我对复杂应用程序的结构有一个问题。因为我的知识背景不是来自教育,所以我一直很难理解应用程序的层次、设计模式和编程结构。首先,我可以用PHP做我想做的任何事情,因为我知道常见的函数,并且对它有经验,但是我想要创建比以前更大更复杂的应用程序,所以我在编写代码时总是问自己:这是最好的地方吗?这是最好的方法吗?人们用这种方式做同样的事情吗?

为了正确回答这些问题,我创建了自己的小型MVC PHP框架,这个框架看起来真的很像。我这么做是因为我想澄清应用程序的所有部分。我知道在我的框架和所有的应用程序中有很多设计上的问题,我认为主要的问题是控制器和模型之间的边界。

关于这一点,我问了很多问题,但对我来说还不清楚。因此,我会解释我知道什么和我做什么,请显示我的错误,并纠正它们,或者只是解释一些关于设计模式的信息,或者只是解释我的问题是什么。

我所知道的

  1. 我知道活动记录模式。例如,我们有user类,我们使用相同的类将数据保存到数据库中,我们使用相同的类作为对象。因此,对象是活动的,我们可以创建一个对象,然后如果我们更改它,我们可以用相同的类( $user = new (‘Oguz’);$user知道工厂模式)保存它。我们必须为一个对象(User_Factory和User)进行类。我们使用user_factory类访问数据库,例如获取用户或删除用户。并且user类是它自己的对象.

当对象之间存在连接时,我的问题就开始了(不像多对多或属于多)。例如,我们有一个视频网站,其中有一个最喜欢的系统。添加收藏夹的过程由以下步骤组成(1-用这个id检查视频,用这个id检查用户。验证步骤)。当我们只是添加或更新一个对象时,我们也使用其他对象(用户工厂和视频工厂)。一般来说,我可以在控制器中完成所有这些事情。但我觉得这里不是最好的地方。因为我将这些步骤称为进程(添加最喜欢的进程)。因此,这个过程不应该进入控制器,因为我们可能希望在另一个控制器操作中使用与API相同的进程。因此,我觉得应该有另一个地方,其中包括这个过程,例如,流程库。我甚至不知道我说的是哪一个编程问题。

对象之间的连接并不仅仅存在于验证step.For示例中,考虑搜索过程。当用户首先搜索一个字符串时,我们必须创建新的搜索行(用于最新搜索的内容),然后我们必须搜索YouTube,如果我们找不到,就必须搜索其他视频站点等等。所以这个动作是一个过程搜索过程,我认为把所有的逻辑放在控制器中是一个正确的方法。我们使用了大量的类和对象,所以我不能把这个过程放在搜索对象类中。

EN

回答 2

Stack Overflow用户

发布于 2009-12-16 03:01:21

我认为你能做的最好的事情之一就是深入了解,真正理解事情是如何运作的。在web开发领域,我们通常与TCP、数据包、传输、协议等的细节隔离。但有时,它是如此孤立,以至于我们忘记了它是如何工作的,因此,把我们自己放在一个小盒子里。

我已经从事PHP专业编程近10年了。我从未使用过MVC框架。我一直将用户接口与应用程序逻辑与数据库访问分离开来。

我们不需要一堆“模式”。我们需要对问题的真正理解,以及创建一个优雅的解决方案的愿景,尽可能地重用其他工作。

因此,我想我建议您将重点从试图使您的应用程序适应到一个模式,并重新考虑成功完成应用程序所需的逻辑。很多时候,这是非常简单的,但我们往往会使它过于复杂。

摆脱MVC和模式的束缚..。(然后看着我因为对现状大声疾呼而被否决)。

祝你一切顺利。顺便说一句,在四年的时间里,你会学到更多关于编程的知识,而不是四年的大学生活。不是说你应该或不应该上大学,而是要意识到在很多情况下,你已经比你的教授对现实世界编程的了解更多了。

票数 2
EN

Stack Overflow用户

发布于 2009-12-16 03:07:08

MVC是一个时尚盛开了20年之久。如果你觉得它把你推进了“错误”代码,那是因为它就是这样做的。从第一条原则做起。还有..。社区不是神圣智慧的圣地。我们只是一群吵闹的暗号猴子。用你自己的大脑。还有..。MVC是一个时尚盛开了20年之久。如果你觉得它把你推进了“错误”代码,那是因为它就是这样做的。从第一条原则做起。还有..。

祝你好运,享受你的努力吧!

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

https://stackoverflow.com/questions/1911753

复制
相关文章

相似问题

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