标签: layer

DDD - 应实施哪一层DTO

如果我的问题很天真,我会倾向于DDD,所以道歉.我想我需要使用本地数据传输对象才能向用户显示数据,因为许多属性不属于任何实体/值对象.

但是,我不确定应该在域域层或应用程序服务层中实现此DTO的位置.DTO实现似乎是域的一部分,但这意味着当我在服务层中创建DTO集合并将其传递给表示层时,我必须在表示层中引用域层,这似乎是错误的.

使用DDD原则实现DTO的正确方法是什么?

implementation domain-driven-design layer dto

22
推荐指数
4
解决办法
1万
查看次数

WinForm UI组件层顺序

当我们在WinForms中添加任何UI或容器时,后面添加的组件来自早期添加的组件,我们可以说它位于更高层.

如何在添加组件后更改图层顺序或组件顺序?

c# components layer winforms

20
推荐指数
4
解决办法
3万
查看次数

在Fabric.js中分层画布对象

有没有办法通过官方API在Fabric.js画布上分层对象?现在,我发现这样做的唯一方法是手动迭代canvas._objects并重新排序它们,以便按特定顺序绘制它们.有没有更好的方法可以做到这一点(可能)破坏对象?

javascript sorting layer fabricjs

20
推荐指数
2
解决办法
3万
查看次数

如何在UIBmage上实现突出显示,如UIButton在点击时会做什么?

我需要复制UIButton在点击时对图像所做的效果,突出显示.看到:

替代文字

原始PNG是具有alpha背景的正方形.当我将其设置为UIButton的图像时,它会自动对图像的非alpha像素应用效果.

怎么做这个效果?

mask objective-c layer uibutton uiimage

19
推荐指数
1
解决办法
6841
查看次数

如何在ggplot2中单独缩放线和点的大小

代码如下:

set.seed(123)
d1=data.frame(x=runif(10),y=runif(10),z=runif(10,1,10))
d2=data.frame(x=runif(10),y=runif(10),z=runif(10,100,1000))
ggplot()+geom_point(aes(x,y,size=z),data=d1)+
geom_line(aes(x,y,size=z),data=d2)
Run Code Online (Sandbox Code Playgroud)

结果是这样的:

在此输入图像描述

点的大小太小,所以我想改变它的大小scale_size.然而,似乎线条和点都受到影响.所以我想知道是否有办法用单独的图例分别缩放线条和点?

r layer scale ggplot2

17
推荐指数
1
解决办法
5386
查看次数

DAO&BO(数据访问层) - 架构

我对网上发现的一个例子有点困惑 - spring和hibernate(指向4. Model & BO & DAO).有Model,DAO和BO类(+ DAO和BO接口).我不清楚的是,如果DAO和BO分享完全相同的功能,那么为什么DAO和BO被分成不同的类(唯一不同的是BO有一个DAO设置器).

作者只解释了这种模式:

有助于清楚地识别图层,以避免弄乱项目结构

但它似乎过度设计了我(至少在这种情况下).我知道这个例子很简单,但是这个类的分离对什么有用呢?有人能提供一个例子吗?

java database dao layer

15
推荐指数
1
解决办法
2万
查看次数

在MVC架构中实现服务层

如何在MVC架构中实现服务层?它是一个服务于底层业务对象的所有请求的对象吗?或者更像是一个服务于不同服务对象的对象,这些对象又与业务对象进行交互?

所以:

  1. 控制器 - >服务 - > getUserById(),或:

  2. Controller - > ServiceManager - > getUserService() - > getUserById()

此外,如果后者更合适,您是否会在引导程序中配置此ServiceManager对象?换句话说,在引导程序中将应用程序所需的不同服务注册到服务管理器?

如果以上都不合适,那么什么能帮助我更好地理解服务层应该如何实现呢?

先感谢您.

model-view-controller service layer

13
推荐指数
1
解决办法
8790
查看次数

为什么MVC如此受欢迎?

我本来打算把它作为一个更长的问题,但我觉得我做得越短越好,你就会越明白我的意思.

  • MVC架构模式有3个依赖项.视图取决于模型.Controller取决于视图和模型.该模型是独立的.

  • 图层架构模式定义了N-1个依赖关系,其中N是层数.

给定三个层:模型,视图和控制器,只有2个依赖项,而传统的MVC只有3个.结构如下所示:

View ---> Controller ---> Model
Run Code Online (Sandbox Code Playgroud)

[视图取决于控制器,控制器取决于型号]

在我看来,这种风格实现了相同的目标,产生更松散的耦合.为什么这种风格不常见?它真的实现了同样的目标吗?

编辑:不是ASP.NET MVC,只是模式.

关于格里格斯的帖子:

  • 就模拟而言,图层仍然允许您使用命令处理器模式来模拟按钮点击以及任何其他事件范围.
  • UI更改仍然非常简单,甚至可能更容易.在MVC中,Controller和View倾向于联系在一起.图层创建严格的分离.两个图层都是黑盒子,在实现中可以自由变化.
  • Controller对View有0个依赖项.可以编写视图,并且仍然可以通过松耦合保存时间.

language-agnostic architecture model-view-controller layer

13
推荐指数
2
解决办法
3667
查看次数

openlayers 3缩放到组合范围

我正在使用openlayers 3来创建一个带有矢量特征的地图.到现在为止还挺好.

我有几个矢量图层,分组在一个名为projecten的变量中.

var projecten = new ol.layer.Group({

            title: 'Projecten',
            layers: [

                new ol.layer.Vector({
                title: 'EVZ Den Dungen',
                source: new ol.source.GeoJSON(
                            /** @type {olx.source.GeoJSONOptions} */ ({
                              object: EVZDenDungen,
                              projection: 'EPSG:3857'
                        })),
                style: function(feature, resolution) {
                    return lookup[feature.get('landschapselement')];
                }
                }),

                new ol.layer.Vector({
                title: 'EVZ Croy',
                source: new ol.source.GeoJSON(
                            /** @type {olx.source.GeoJSONOptions} */ ({
                              object: EVZCroy,
                              projection: 'EPSG:3857'
                        })),
                style: function(feature, resolution) {
                    return lookup[feature.get('landschapselement')];
                }
                }),

                new ol.layer.Vector({
                title: 'Natuurcompensatie Gasselsbroek',
                source: new ol.source.GeoJSON(
                            /** @type {olx.source.GeoJSONOptions} */ ({
                              object: NatuurcompensatieGasselsbroek, …
Run Code Online (Sandbox Code Playgroud)

layer openlayers-3

13
推荐指数
1
解决办法
1万
查看次数

为了重构庞大的代码库,我应该记住什么?

我将在庞大的代码库(18000+ Java类)中重构某些部分.目标是能够将较低层提取为独立库,以便在当前使用此代码库副本的其他项目中重用.特别是将一部分重构为独立于业务逻辑的框架.最终,我希望代码具有干净的架构层次结构.

我用一个名为Structure 101 for java的工具查看了代码,发现很多(!)的架构分层问题,其中较低层引用了上层.

我不想简单地开始搞乱代码,而是试图找出一个合理的策略来解决这个问题.我应该记住什么?

我在考虑至少采取一些小步骤.我也在考虑进行单元测试,但这需要创建它们,因为没有.

有什么想法吗?

java architecture refactoring layer

12
推荐指数
2
解决办法
2517
查看次数