用JavaScript在客户端实现业务逻辑是个好主意吗?应该有什么样的逻辑?验证逻辑?与GUI相关?如果要在另一个应用程序(公开的)中使用相同的逻辑,用JavaScript实现它意味着您不能重用该逻辑,您会怎么做。另一方面,将所有逻辑都放在服务器端意味着对服务器的请求更多。你怎么看? 最佳答案 永远不要相信客户。因此,您在客户端使用JavaScript进行的任何验证都只能提高用户的便利性和可用性。稍后您始终必须验证服务器上的传入数据,以确保没有人注入(inject)数据等。 关于java
我正在尝试实现UncleBob的CleanArchitecture:除了UseCases/Interactors之外,一切正常。我需要注册一个用户,所以我需要RegisterUserUseCase。在具体的interactor中,我实现了RegisterUser用例,它只是创建User实体并使用PasswordBroker端口散列其密码.创建用户后,我需要发送一封验证邮件。为此,我需要使用框架的组件。并且存在两个主要问题。我认为为邮件服务编写端口没有意义,因为这个端口只是框架服务的巨大复制/粘贴抽象Interactor不能在用户创建后发送邮件,因为User最终会在Doctrineflu
我有一个正在开发的Web应用程序,到目前为止我已经完成了数据访问层。每个表都有自己的类,该类创建该表行的对象,因此每个对象代表表的一行。每个对象所具有的功能基本上都是CRUD操作。我的问题是,实现应用程序业务逻辑的最佳方式是什么?我在PHP中执行此操作,因此我可以只包含一个包含许多函数的文件,但我希望更好地组织它。数据访问层已经采用面向对象的方法,所以我想继续这样做。 最佳答案 不要将php用于业务逻辑。如果您在带有SQLServer数据库的WinTel服务器上运行,我会在.Net框架上使用C#或其他语言。如果您使用的是Linux/
CakePHP似乎从来没有提到将应用程序的业务逻辑层和数据访问层分开。这是我的第一个MVC应用程序,我的“胖模型”变得非常胖,因为它们包含各种业务逻辑,其唯一真实的共同点是需要访问同一个数据库。当您听到将业务逻辑从Controller转移到模型中的建议时,以这种状态结束真的可以接受吗?CakePHP是否为单独的业务逻辑层提供任何结构作为其框架的一部分?谢谢,布莱恩 最佳答案 没有。在我看来,您遇到的是ActiveRecord模式的典型缺点。此外,CakePHP完全基于结果关联数组而不是对象实例也无济于事。我建议你看看像Doctrin
我使用Zend框架和Doctrine。在许多项目中,业务逻辑内置于Controller。这种方法对我来说似乎是错误的。我见过的最好的设置是使用服务层,这是编写业务逻辑的地方。我所要做的就是创建一个表单,验证它,并在服务层使用一些业务逻辑。结果验证、业务逻辑和使用一种方法(例如:newProduct($postData))。在MVC中组织业务逻辑的正确方法是什么?也许我需要阅读一些书籍,或者查看一些源代码示例。 最佳答案 我不能代表Zend框架(或您正在使用它构建的任何东西),但在MVC模式中,业务逻辑通常属于模型。您之前可能听过这样
我的目标是尽可能让我的框架与我的应用程序分离(尽管我知道这并非完全可能)。我在我的应用程序中使用了几种不同的常见模型类型……映射器、数据对象和值对象。例如,UserMapper接受一个UserData对象并从数据库中收集信息,然后将其映射到一个UserValue对象以供在Controller中使用。这意味着这些模型具有以下依赖关系:UserMapper:需要UserData,以及构建UserValue的方法UserData:需要Db(来自框架)UserValue:什么都不需要我是否在框架的DIC方法中包含了创建Mapper对象、Data对象和Value对象的方法,以便可以自动注入(in
我们正在开发一个代码量相当大的PHP5项目,上周我开发了一个RESTfulAPI的PoC。我们将模型类与业务类分开。在尝试实现CRUD功能时,我发现,直接针对模型实现CRUD会非常简单,而针对业务逻辑实现它则不然,因为它的功能特定于当前存在的View,并且它的接口(interface)不'提供实现API所需的通用数据访问模型。考虑到这一点,我想到了以下问题:与数据交互的最佳方式是什么,同时保持模型的灵active和保持模型目前不关心的功能(比如发送邮件更改电子邮件地址时的激活链接)?之前经常使用django,其中大部分业务逻辑都在模型中实现,为什么还要将业务逻辑分开?你有任何现实生活中
我被问及PHP中可用的业务规则引擎。经过研究,我发现RuleEngine是可用的,但我不确定如何使用它。谁能解释一下RuleEngine是如何工作的 最佳答案 在大多数项目中,我们都有一些业务规则会影响我们的流程和输出。在我们的项目中设计一个规则引擎来控制所有的规则是一个最佳实践。拥有规则引擎的原因:规则可能会更改多次。所以如果我们有一个规则引擎,我们只需要改变一个地方,项目中的代码不多。我们可以轻松地根据我们的规则创建许多单元测试。我们的代码将更具可读性。规则引擎将是一个与其他层分离的新层。在php中:我做了一个简单的方法来创建规
什么是Answer?Answer是一个开源的知识型社区软件。您可以使用它快速建立您的问答社区,用于产品技术支持、客户支持、用户交流等。Answer是国内SegmentFault思否团队开发的技术问答社区,Answer不仅拥有搭建问答平台(Q&APlatform)的基础功能,还加入了标签内容管理、评分与声望值体系等社区功能。安装建数据库数据库直接用的群晖的MariaDB10在phpMyAdmin中创建了名为answer的数据库为了便于说明,我们假设数据库密码为123456安装Answer在群晖上以Docker方式安装。在注册表中搜索answer,选择第一个answerdev/answer,版本选
简单的问题:在MVC中,一个模型可以与另一个模型交互吗?例如,使用Auth模型...它可以与User模型交互吗?还是有更好的方法来解决这个问题?中间人应该是控制者吗? 最佳答案 不同的模型类交互就好了。大多数复杂对象并不是完全独立的。与任何好的OO代码一样,这些类应该使用公共(public)方法并且不将它们的实现公开给彼此,但除此之外,一切都很好。 关于php-MVC-业务模型可以相互了解吗?,我们在StackOverflow上找到一个类似的问题: https