加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 操作实体的类的名称

发布时间:2020-12-15 20:48:13 所属栏目:百科 来源:网络整理
导读:我有一个关于命名约定的一般问题. 如果我将数据和操作分成两个单独的类.一个具有数据元素(实体),另一个类操纵实体类.我们通常称那个操纵实体类的类是什么? (我指的实体与任何类型的实体框架无关) 经理?控制器?操作符?机械手? 提前致谢 解决方法 这取决
我有一个关于命名约定的一般问题.

如果我将数据和操作分成两个单独的类.一个具有数据元素(实体),另一个类操纵实体类.我们通常称那个操纵实体类的类是什么?

(我指的实体与任何类型的实体框架无关)

经理?控制器?操作符?机械手?

提前致谢

解决方法

这取决于您在这些数据合同/实体上执行的操作类型.以下是我的一些惯例.让我们使用Fruit实体的例子(我并不是要暗示这些都是静态方法,只是伪代码):

>存储库:为一块水果提供CRUD操作

> FruitRepository.Save(Fruit item);

>经理:简单CRUD之外的操作.

> InventoryManager.ShipFruit(Fruit []项,字符串地址);

>控制器:保留用于接口,如在模型 – 视图 – 控制器中.使界面或流程决策如何在水果上显示或操作.

> FruitController.ShowDetails(string fruitId);

>处理器:用于“批处理”在一起的操作.通常这些都是长期运行或脱机完成的.

> FruitProcessor.RemoveSeeds(Fruit [] lotsOfFruit);

>操纵器:对单个实体或其集合提供特定操作.

> FruitManipulator.PeelFruit(水果项目);

>提供商:提供更广泛或全球的运营.

> FruitProvider.GetAllTypesOfFruit();
> FruitProvider.IsInSeason(string fruitName);

>导出器:将一些水果转换为用于文件存储或传输的格式.

> FruitExporter.Save(字符串电子表格);

>分析仪:提供有关单个水果或数量的结果.

> FruitAnalyzer.Weigh(Fruit []项目);

>服务:以松散耦合或远程访问方式公开功能.
>汇编程序:通过组合不同的数据源来创建水果.

> FruitAssembler.Combine(string speciesFile,string quantityFile);

>工厂:负责创建/实例化水果.

> FruitFactory.CreateApple(); //红色美味,麦金托什等

>构建器:提供通过单个部件/属性构建水果的方法.

> FruitBuilder.AddSeeds(5); FruitBuilder.AddStem();

这些都有些松散.主要目标是在您自己的代码库中保持一致,避免与您正在使用的技术发生冲突 – 即.如果您正在使用ASP.NET MVC,那么没有很多不是控制器的Controller类.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读