相关疑难解决方法(0)

Methods.class中的代码重用与策略模式和依赖注入

Status:Fendy和Glen Best的答案同样被我接受和尊重,但既然可以接受并给予赏金,我选择Fendy的答案.

Scenario:

如果我有一些代码被多次重复使用许多类(很少有轻微参数改变是显而易见的)和并发线程,哪种方法去?

必须重用的代码可以是任何理智的东西(适当考虑静态和非静态上下文和方法制作技术).它可以是一个算法,一个DB方法做连接,操作,关闭.任何东西.

  1. 创建一些类MyMethods.class,并将所有这些方法放入其中.

    表1.A 制作方法 static并直接调用(由所有类和并发线程)MyMethods.someMethod();

    1.B. 制作方法 non-static和当时打电话给他们,instantiate全班通过MyMethods mm = MyMethods(); mm.someMethod();

  2. 使用https://en.wikipedia.org/wiki/Strategy_pattern中声明的策略模式(此处附带的代码).

  3. 使用https://en.wikipedia.org/wiki/Dependency_injection#Java中所述的依赖注入

Problems:

  1. 有些人会说使用这种方法进行单元测试 http://en.wikipedia.org/wiki/Unit_testing 是不可能的,在换出后者时会遇到麻烦.如果你想测试你的类,并使用一个模拟版本中的依赖

    表1.A 并发调用或多个类会有任何问题吗?特别JDBC static methods是只是一个例子?

    1.B. 我认为它会产生太多的内存负载,因为整个类instanticated只需调用一两个方法可以多次

  2. 那是我的头脑,解释那个和/或任何优点/缺点 …

java unit-testing design-patterns dependency-injection class

8
推荐指数
1
解决办法
3015
查看次数