小编Ste*_*o L的帖子

Axon Framework与Eventuate比较

我们目前正在对CQRS和事件采购进行一些研究,并找到了两个主要框架来处理这两个问题:Axon FrameworkEventuate.两者都在不断发展,而现在在RBMH存储库中更积极地开发了Eventuate.

我是GIT克隆了两个示例项目,并得出结论,Eventuate看起来更轻一点,但我认为这是由于缺乏与Axon相比的功能.

我徒劳地试图找到这两个框架之间的比较,在Stackoverflow中我也找不到任何框架.有人有一些意见吗?

cqrs event-sourcing axon akka-persistence

12
推荐指数
1
解决办法
5942
查看次数

如何在不使用Spring等时将Swing GUI与Business Logic分开

请注意,这是一篇很长的帖子.对不起,但我想澄清一点:

我想知道如何将Swing GUI与Presentation和Business Logic分开很长一段时间.在工作中,我必须使用一个小的Swing对话框为一些数据实现3 MD Excel Export以配置导出.我们不使用像Spring这样的框架,所以我必须自己实现它.

我想完全将GUI与Business Logic分开,这些都是精确的后续任务:

  • 告诉BL从GUI开始工作
  • 从BL到GUI报告进度
  • 报告从BL到GUI的日志记录
  • 将BL结果委托给GUI

当然,GUI不应该注意BL实现,反之亦然.我创建了上述所有这些任务,例如几个接口ProgressListener,LogMessageListener,JobDoneListener等,要由业务逻辑被解雇.例如,如果业务逻辑想要告诉记录,则会调用

fireLogListeners("Job has been started");
Run Code Online (Sandbox Code Playgroud)

实现公共接口LogListener +的类附加到BL,现在将通知有关"作业已启动"的日志消息.所有这些监听器此时都是由GUI本身实现的,一般看起来像这样:

public class ExportDialog extends JDialog implements ProgressListener, LogListener, JobFinishedListener,  ErrorListener {

    @Override
    public void jobFinished(Object result){
        // Create Save File dialog and save exported Data to file.
    }

    @Override
    public void reportProgress(int steps){
        progressBar.setValue(progressBar.getValue()+steps);
    }

    @Override
    public void errorOccured(Exception ex, String additionalMessage){
        ExceptionDialog dialog = new ExceptionDialog(additionalMessage, ex);
        dialog.open();
    }

    // etc.
}
Run Code Online (Sandbox Code Playgroud)

"GUI和BL创建类"只是将GUI(作为所有这些侦听器的界面)附加到BL,它看起来像这样: …

java oop swing cohesion decoupling

7
推荐指数
1
解决办法
1269
查看次数

元名称 =“视口”不能按预期工作

我的网站 www.ssd-vergleichen.de 中有那个元标记

<meta name="viewport" content="width=device-width; initial-scale=1.0;"/>
Run Code Online (Sandbox Code Playgroud)

防止设备初始放大网站。在三星 Galaxy S2 上的 chrome 移动浏览器上观看网站时,网站被放大了大约 400%。我做错了什么?任何人都可以帮忙吗?

提前致谢

编辑:使用

<meta name="viewport" content="width=device-width, initial-scale=1.0" />
Run Code Online (Sandbox Code Playgroud)

它适用于 Android 的标准网络浏览器,但仍不适用于 Chrome。我想知道它是否适用于IOS?

Edit2:不,它也不适用于 iOS http://iphonetester.com/

在此处输入图片说明

html responsive-design

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

DDD 聚合和实体中的 InversionOfControl(依赖注入)

我的问题是关于你们在实践中如何将域或基础设施服务注入到 DDD 聚合中。我确信在 DomainObjects 中允许 DependencyInjection通常是一个坏主意,因为根据我的经验,它鼓励鲁莽的开发人员用它做令人讨厌的事情。但是可以肯定的是,总是有例外情况,Domainobjects 中的 DependencyInjection 可能有意义,特别是当它有利于可读性和简单性时。就我而言,我正在尝试解决如何创建新Ids的 anaggregate的问题root

让我们假设我们有一个UserAddressesAddress实体列表作为其聚合根的聚合。让我们进一步假设我们changeAddress(AddressId addressId, AddressChangeDto dto)在该聚合中有一个方法:

public AddressId changeAddress(AddressId addressId, AddressChangeDto dto) {
    Address address = nullableAddress(addressId);

    if (address == null) {
        // Doesn't matter for this question
    } else if (address.hasChanged(dto)) {
        address = changeAddress(address, dto);            
    }
}
Run Code Online (Sandbox Code Playgroud)

和一个私有changeAddress(Address address, AddressChangeDto dto)方法简化如下:

private Address changeAddress(Address address, AddressChangeDto dto) {
    if (!addressCopyNeeded(address)) {
        address.change(dto);
        return address; …
Run Code Online (Sandbox Code Playgroud)

domain-driven-design inversion-of-control

5
推荐指数
1
解决办法
845
查看次数

Eclipse RCP View不会显示在应用程序的启动上

我现在面对这个问题大约一个小时,我不知道我做错了什么.你在我的plugin.xml代码中看到错误了吗?

<extension
     point="org.eclipse.ui.perspectiveExtensions">
  <perspectiveExtension
        targetID="de.tps.client.workspace.perspective">
     <view
           closeable="true"
           id="de.tps.client.inboxplusplus.views.inboxplusplusview"
           minimized="false"
           moveable="true"
           ratio="0.3"
           relationship="bottom"
           relative="de.tps.client.iteminfo.view"
           showTitle="false"
           standalone="false"
           visible="true">
     </view>
  </perspectiveExtension>
Run Code Online (Sandbox Code Playgroud)

并且观点:

<extension
     point="org.eclipse.ui.views">
  <view
        allowMultiple="false"
        category="com.contmgmt.client.category"
        class="de.tps.client.inboxplusplus.views.Inboxplusplusview"
        id="de.tps.client.inboxplusplus.views.inboxplusplusview"
        name="%view.inbox.name"
        restorable="true">
  </view>
Run Code Online (Sandbox Code Playgroud)

任何建议将受到高度赞赏.

eclipse-plugin eclipse-rcp

3
推荐指数
1
解决办法
1354
查看次数