首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >与后端类相比的前端类(或视图类)

与后端类相比的前端类(或视图类)
EN

Software Engineering用户
提问于 2022-01-03 10:33:36
回答 2查看 647关注 0票数 0

我正在使用C# (后端)和JavaScript (前端)为一个计算商店开发一个电子商务网络应用程序。这个应用程序主要显示每台存储的计算机,以及有关它的所有信息(型号、价格、图像、速度、.)。

计算机可以是台式机、膝上型计算机或服务器。每种类型的计算机都可能有额外的参数。例如,笔记本电脑有屏幕大小,而台式机或服务器没有屏幕大小。或者台式机和服务器有电源,而笔记本电脑没有.

为此,UML图将主要包含4个类:

  • 一个抽象类Computer,包含公共属性和方法。
  • Server,从Computer扩展而来。
  • Laptop,从Computer扩展而来。
  • Desktop,从Computer扩展而来。

这个UML图将原则上在后端端(C#)实现。

我的问题是,前端(JS)怎么办:我应该使用相同的类吗?或者前端需要另一个UML图?或者前端是否需要在相同的UML图中添加类,这些类必须以某种方式连接到4个初始类?

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2022-01-04 10:39:04

UML模型可以有不同的范围和用途。你所描述的似乎是一个域模型

  • 它是关于系统将管理的“业务对象”的类,即对用户重要的对象。
  • 它似乎不包括任何特定于后端的类,例如存储库、查询、数据库网关、.即用户完全忽略的实现所需的类。

由于前端和后端都处理相同的域,所以您的模型应该对两者都有关联:LaptopComputerComputer是许多Component的程序集,这在两个领域都是相关的,即使每个对象的处理方式都不同。

在前端和后端之间共享域模型的优点是避免了冗余建模和避免误解。每一方可能使用不同的实现策略:也许前端不需要所有UML属性和方法;也许前端对象只是从API获得的一些被动的JS对象;或者您可能坚持使用代理模式的某种变体的模型?选择是你的了。

票数 2
EN

Software Engineering用户

发布于 2022-01-03 12:10:02

这里有对象设计的几个方面。

  1. C#对象继承,包括方法。
  2. 数据模型可能或可能不关心继承,但绝对不包括方法。
  3. 将语言从c#改为JS,在JS中,即使‘相同’的对象也不共享代码。

由于体系结构的技术方面排除了前端和后端之间的共享方法,我将集中讨论可以共享的数据模型,简化您的设计。

这意味着您必须放弃在数据模型类上放置方法。强迫您进行ADO风格的设计,在这种设计中,您的方法在控制器上而不是在数据上。

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

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

复制
相关文章

相似问题

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