没有任何扩展库,是否可以在同一个canvas元素中有多个图层?
所以,如果我在顶层执行clearRect,它将不会删除底层?
谢谢.
你好,
本周末我开始观看2011年WWDC视频.我发现了关于iOS的非常有趣的话题.我的最爱是关于性能和图形,但我发现其中两个显然是矛盾的.当然有一些我没有得到的东西.我正在谈论的会议是理解UIKit渲染-121和抛光你的应用程序-105.
不幸的是,2011年的示例代码仍然无法下载,因此很难获得整体视图.在一个会话中,他们解释说,在scrollview等可视化期间,大多数时候应该避免屏幕外渲染.他们修复了示例代码中的性能问题,几乎在-drawRect方法中绘制了所有内容.在另一个会话中,性能问题(在表视图上)似乎是由于表单元格的-drawRect方法中的代码过多.
首先我不清楚当系统需要OffScreen渲染时,我在视频中看到一些石英功能如:cornerRadious,shadowOffset,shadowColor需要它,但确实存在一般规则?
其次我不知道我是否理解得很好,但似乎没有屏幕外渲染添加图层或视图是要走的路.我希望有人能为此带来光明......
谢谢,
安德烈
我是软件开发的新手.我个人认为,分层体系结构是一种很好的方法,可以减少面向对象方法中软件开发过程中出现的复杂性,更不用说保持代码的有序性.现在,我遇到了一些DDD(Domain Driven Design)引入的问题.当然,初级水平的.
这就是 -
让我们说,我想构建一个应用程序来保存数据库中的"人"相关数据,并在wpf数据网格中显示人员详细信息(DDD绝对不适用于这种规模的应用程序,但只是为了简化像我一样的业余爱好者).所以,我设计了一个域类"Person",类似于 -
public class Person
{
public Person(dataType paramA)
{
this.PropertyA = paramA;
}
private dataType _fieldA;
public dataType PropertyA
{
//encapsulates _fieldA
}
public dataType PropertyX
{
//some code that manipulates private field
}
private dataType MethodPQR(dataType param)
{
//some code
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我对DDD的理解说,架构(最简单的版本)应该如下(如果我错了,请纠正我) -
注意:
我希望datagrid绑定到一些ObservableCollection,只是为了立即反映任何类型的更改.
它是一个wpf应用程序,但不一定是MVVM模式,我故意想使用后面的代码(我不知道后面的代码本身是代表应用程序层)
所以我的问题是 -
什么样的代码应该属于应用层?
我的猜测是,我绝对不应该将我的域对象(Person)的ObservableColletion绑定为datagrid的itmsSource.那么我应该从域对象中提取什么类型的对象,以及如何?
为了保持表示层对象和域层对象之间的解耦,可能存在类似的约定DataGrid
.那么非"直接"方法是什么?
如果Code-Behind与应用层进行对话,那么应用层应该与存储库进行通信吗?但是,如果需要某种类型的域访问而不是与数据访问相关(可能不在此应用程序中,但它可能会发生,对吧?),应用层应该与哪个域人员层中的X人进行对话?
我知道我所有的问题和问题都是非常业余的.但它们确实是问题和问题.所以,如果有人有时间,任何回复都将受到赞赏.
编辑:我不确定Data Repository是否应该有域模型的引用.
domain-driven-design code-organization repository project-organization layer
是否可以在UIView之上添加边框,如果是这样,请问怎么样?
假设我运行以下脚本:
import matplotlib.pyplot as plt
lineWidth = 20
plt.figure()
plt.plot([0,0],[-1,1], lw=lineWidth, c='b')
plt.plot([-1,1],[-1,1], lw=lineWidth, c='r')
plt.plot([-1,1],[1,-1], lw=lineWidth, c='g')
plt.show()
Run Code Online (Sandbox Code Playgroud)
这产生以下结果:
如何指定图层的从上到下的顺序,而不是让我选择Python?
我希望将几个div放在每个旁边的一行中,但也允许它们与前一个div重叠.
我想要得到的是一个时间线,有一定长度的事件的div.事件可以相互重叠.
我的想法是给每个div提供相同的顶部位置,增加的z指数和增加的左侧位置(根据事件的时间)稍后我会通过鼠标悬停事件弹出单个div以显示重叠.
我得到的是每个div都放在下一个div下面.通过摆弄top属性,我可以让它们水平对齐.但我没有看到这种模式.
<div class="day">
<div style="top: 35px; left: 200px; background-color: red; height: 50px; width:24px; z-index: 1; position: relative;"> </div>
<div style="top: 35px; left: 220px; background-color: green; height: 50px; width:24px; z-index: 2; position: relative;"> </div>
<div style="top: 35px; left: 225px; background-color: blue; height: 50px; width:48px; z-index: 3; position: relative;"> </div>
</div>
Run Code Online (Sandbox Code Playgroud)
如果我使用绝对位置,元素会飞出周围的div,并且绝对位于页面的某个位置.
我刚读完了一些cocos2d文档,据我所知,要在图层中添加背景图像,你必须做以下事情:
Sprite * bg = [Sprite spriteWithFile:@"Background.png"];
[layer addChild:bg z:0];
Run Code Online (Sandbox Code Playgroud)
尽管我的测试结果是你可以直接将精灵添加到场景中,如下所示:
@implementation IntroScene
- (id) init {
self = [super init];
if (self != nil) {
Sprite * bg = [Sprite spriteWithFile:@"Background.png"];
[bg setPosition:ccp(240, 160)];
[self addChild:bg z:0];
[self addChild:[MenuLayer node] z:1];
}
return self;
Run Code Online (Sandbox Code Playgroud)
}
这两个选项之间的区别是什么,以及为图层设置背景的更好方法是什么?任何帮助将不胜感激.
背景:为了我自己的清晰度/自我教育,我试图使用TDD + DDD实现一个简单的订单输入应用程序.我的主要目标是通过分离问题来保持架构的清洁.
我有四层(现在)......
具有CustomerRepository类的Persistence/DAL,可以对"聚合根",客户及其相关订单和OrderItem执行GetById,Save,操作.为了让"穷人的依赖注入"
包含"业务实体"类的域/ BLL层,执行细粒度操作以帮助创建新订单,根据订单大小和客户位置应用税,折扣,装运逻辑.
应用程序Facade(应用程序服务/编排)包含大块,粗粒度的类来编排"业务实体"并减少与表示(可能是WebServices层)的聊天.
表示层
此外,我想在关键层之间传递POCO DTO ...特别是在Persistence => Domain层和ApplicationFacade => Presentation层之间.因此,我有CustomerDto,OrderDto,OrderItemDto以及在共享包中定义的适当关系.
我想使用Constructor Injection将ICustomerRepository的实现注入到Customer"业务实体"类中,然后在"业务实体"上调用Customer.Save()以启动创建/更新过程,最终调用Save方法CustomerRepository.毕竟,客户是"聚合根"并拥有保存所需的所有信息......它也是注入的CustomerRepository的"守护者".
问题: 这是我遇到麻烦的地方.我想保持Domain/BLL Layer尽可能纯,并避免将其耦合到任何第三方框架和API,但 Customer.Save()方法需要将Customer"聚合根"及其所有Orders和OrderItems转换为他们的DTO版本用于传输到注入的持久层CustomerRepository ...这是Automapper的工作.
问题是......如果我不把Automapper在域/ BLL层,我真的不知道哪里应该去.
将它放在ApplicationFacade中感觉不对,即使它的工作是编排.
把它放在Domain/BLL层中肯定是不对的,因为我想让它保持原始状态.
因此,我觉得我已经错过了一些东西......我正在接近这一点,因为他们对工作部分应该如何共同完成这项任务有着根本的误解.有什么建议?(请保持温和,我对这一切都是新手,对SO来说是新手.如果我需要展示一些我到目前为止的代码,请告诉我.)
鉴于现有的剧情对象是有可能添加层UNDERNEATH现有图层?
例如,在下面的图表中,是有可能添加geom_boxplot()
到P
使得出现箱线图下方 geom_point()
?
## Starting from:
library(ggplot2)
P <- ggplot(data=dat, aes(x=id, y=val)) + geom_point()
## This adds boxplot, but obscures some of the points
P + geom_boxplot()
Run Code Online (Sandbox Code Playgroud)
# Which is essentially
ggplot(data=dat, aes(x=id, y=val)) + geom_boxplot() + geom_point()
## However, this involves re-coding all of P (after the point insertion of the new layer).
## which is what I am hoping to avoid.
Run Code Online (Sandbox Code Playgroud)
额外问题: 如果现有图中有多个图层,是否可以指示插入新图层的具体位置(相对于现有图层)?
set.seed(1)
N <- 100
id …
Run Code Online (Sandbox Code Playgroud) 如果我的问题很天真,我会倾向于DDD,所以道歉.我想我需要使用本地数据传输对象才能向用户显示数据,因为许多属性不属于任何实体/值对象.
但是,我不确定应该在域域层或应用程序服务层中实现此DTO的位置.DTO实现似乎是域的一部分,但这意味着当我在服务层中创建DTO集合并将其传递给表示层时,我必须在表示层中引用域层,这似乎是错误的.
使用DDD原则实现DTO的正确方法是什么?
layer ×10
ios ×2
architecture ×1
automapper ×1
canvas ×1
css ×1
css-position ×1
dto ×1
ggplot2 ×1
html ×1
html5 ×1
iphone ×1
matplotlib ×1
plot ×1
python ×1
r ×1
rendering ×1
repository ×1
scene ×1
uiview ×1
view ×1