다른 클래스의 인스턴스로서의 스칼라 싱글 톤

Ou Tsei

내 응용 프로그램에 대한 데이터베이스 항목을 처리하는 단일 개체가 있지만 테스트 중에 유사한 클래스를 사용하여 서로 간섭하지 않는 작은 테스트 데이터베이스를 많이 가질 수 있기를 원합니다.

싱글 톤을 삭제하고 시작할 때 데이터베이스 클래스의 새 인스턴스를 생성 할 수 있지만, 이는 데이터베이스 작업이 필요한 모든 곳으로이 인스턴스를 전달해야한다는 것을 의미합니다.

데이터베이스 클래스의 단일 인스턴스에 대한 인터페이스로 작동하는 싱글 톤을 만들 수 있습니다. 다음과 같은 것 :

object DB{
    val db = new Database()
    def set(a:Int,b:Int) = db.set(a,b)
    def get(a:Int) = db.get(a)
}

이것은 어리 석고 무의미한 느낌이들뿐입니다. 특히 데이터베이스 클래스가 상당히 크고 모든 메서드에 대해 그렇게해야 할 때 그렇습니다. 이 문제를 해결하는 더 좋은 방법이 있습니까?

감사!

Alcarv

이를 달성하는 가장 좋은 방법은 케이크 패턴을 사용하는 것이지만 실제로 DB클래스의 모든 메서드를 확장해야합니다 .

이를 위해 나는이 기사를 따를 것이다 : http://www.warski.org/blog/2014/02/using-scala-traits-as-modules-or-the-thin-cake-pattern/

케이크 패턴을 만든 후에는 테스트 소스 코드에서만 테스트에 사용되는 "다른 DB"를 구현하는 특성 하나만 있으면됩니다. 그리고 물론 그 특성은 메인 소스 코드에서 "실제 DB"를 구현합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

싱글 톤 클래스에서 멤버의 다른 인스턴스화

분류에서Dev

다른 클래스의 객체를 싱글 톤 클래스에 전달

분류에서Dev

Java의 싱글 톤 클래스 이해

분류에서Dev

싱글 톤 클래스의 수명

분류에서Dev

다른 클래스 로더에 의해로드 된 싱글 톤 클래스에 대한 변경의 영향

분류에서Dev

싱글 톤의 다른 인스턴스를 생성하는 Scala Script Engine

분류에서Dev

싱글 톤 클래스의 인스턴스를 저장하는 방법

분류에서Dev

스칼라 단위 테스트-싱글 톤 스터 빙

분류에서Dev

싱글 톤 클래스 패턴의 가변 동시성

분류에서Dev

레일 서비스의 DRY 싱글 톤 클래스

분류에서Dev

특정 인스턴스 / 비 싱글 톤

분류에서Dev

자바에서 싱글 톤의 인스턴스 해제

분류에서Dev

자바에서 싱글 톤의 인스턴스 해제

분류에서Dev

싱글 톤 클래스 및 인스턴스 변수

분류에서Dev

Spring Boot는 TaskScheduler의 싱글 톤 인스턴스를 보장합니다.

분류에서Dev

다중 스레드 싱글 톤

분류에서Dev

싱글 톤 클래스 사용

분류에서Dev

싱글 톤 클래스-Ruby 대 Java

분류에서Dev

유효한 싱글 톤 클래스?

분류에서Dev

싱글 톤 + 추상 클래스 문제

분류에서Dev

Objective C 싱글 톤 클래스 멤버

분류에서Dev

싱글 톤 클래스 충돌

분류에서Dev

C # 싱글 톤 사전 클래스

분류에서Dev

싱글 톤 클래스가 작동하지 않습니다.

분류에서Dev

Swift의 싱글 톤 클래스에서 특정 TableViewController의 tableview를 다시로드하는 방법

분류에서Dev

iOS의 싱글 톤 클래스에서 배열 사용

분류에서Dev

PHP-싱글 톤 글로벌 인스턴스

분류에서Dev

다른 클래스에서 싱글 톤 클래스를 만드는 방법은 무엇입니까?

분류에서Dev

한 클래스에서 싱글 톤 패턴으로 상태 패턴을 어떻게 다룰 수 있습니까?

Related 관련 기사

  1. 1

    싱글 톤 클래스에서 멤버의 다른 인스턴스화

  2. 2

    다른 클래스의 객체를 싱글 톤 클래스에 전달

  3. 3

    Java의 싱글 톤 클래스 이해

  4. 4

    싱글 톤 클래스의 수명

  5. 5

    다른 클래스 로더에 의해로드 된 싱글 톤 클래스에 대한 변경의 영향

  6. 6

    싱글 톤의 다른 인스턴스를 생성하는 Scala Script Engine

  7. 7

    싱글 톤 클래스의 인스턴스를 저장하는 방법

  8. 8

    스칼라 단위 테스트-싱글 톤 스터 빙

  9. 9

    싱글 톤 클래스 패턴의 가변 동시성

  10. 10

    레일 서비스의 DRY 싱글 톤 클래스

  11. 11

    특정 인스턴스 / 비 싱글 톤

  12. 12

    자바에서 싱글 톤의 인스턴스 해제

  13. 13

    자바에서 싱글 톤의 인스턴스 해제

  14. 14

    싱글 톤 클래스 및 인스턴스 변수

  15. 15

    Spring Boot는 TaskScheduler의 싱글 톤 인스턴스를 보장합니다.

  16. 16

    다중 스레드 싱글 톤

  17. 17

    싱글 톤 클래스 사용

  18. 18

    싱글 톤 클래스-Ruby 대 Java

  19. 19

    유효한 싱글 톤 클래스?

  20. 20

    싱글 톤 + 추상 클래스 문제

  21. 21

    Objective C 싱글 톤 클래스 멤버

  22. 22

    싱글 톤 클래스 충돌

  23. 23

    C # 싱글 톤 사전 클래스

  24. 24

    싱글 톤 클래스가 작동하지 않습니다.

  25. 25

    Swift의 싱글 톤 클래스에서 특정 TableViewController의 tableview를 다시로드하는 방법

  26. 26

    iOS의 싱글 톤 클래스에서 배열 사용

  27. 27

    PHP-싱글 톤 글로벌 인스턴스

  28. 28

    다른 클래스에서 싱글 톤 클래스를 만드는 방법은 무엇입니까?

  29. 29

    한 클래스에서 싱글 톤 패턴으로 상태 패턴을 어떻게 다룰 수 있습니까?

뜨겁다태그

보관