API, 서비스, 도메인 테스트 및 TDD 에서의 기어비
·
IT
API, 서비스, 도메인 테스트 및 TDD 에서의 기어비 테스트 필요 이유 테스트가 있으면 시스템 변경에 두려움이 적어진다. 하지만, 너무 많은 테스트는 코드 변경마다 테스트 코드도 같이 변경되어야 하는 문제가 있다. 테스트의 목적은 코드 변경에서 시스템의 특성을 강제로 유지하기 위해서다. API 테스트를 작성하면 도메인 모델을 변경할 때 테스트 코드 변경의 양을 줄일 수 있다. 테스트 종류에 따른 얻는 것 구분 API 테스트 서비스 테스트 도메인(모델) 테스트 피드백 적음 - 많음 변경 장벽 낮음 - 높음 테스트 영역 넓음 - 한정 도메인(모델) 테스트 코드와 더 밀접하게 연관되어 작업시 높은 피드백을 받을 수 있다. 테스트 코드를 통해서 도메인에 대한 이해도를 높일 수 있다. API 테스트 더 높은 ..
[Go] Factory Pattern(팩토리 패턴) 구현
·
Go
Factory Pattern 운송업체별로 물리 프린터기 출력용지나 출력물 등 달라지는데 여기서는 물리 프린터기에서 출력을 위한 데이터를 팩토리 패턴으로 구현 하였다. PrineterMethod Interface 구현 EMSPrinter, SFPrinter struct 구현 → GetOuput() 구현 Create() 를 통해서 new() 로 사용할 Prineter를 Create and Return Return Struct의 GetOuput() 메소드를 통해 결과값 Return factory.go package factory import ( "errors" "fmt" ) const ( EMS_CODE = "EMS" SF_CODE = "SF" ) type PrinterMethod interface { Get..