본문 바로가기

os.Stdout2

Go - mocking - 출처: https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/mocking - 개요 mocking에 대해 알아보고 mocking를 사용할 때 장점에 대해 알아본다. - Countdown 프로그램 3부터 하나씩 줄어드는 숫자를 출력하는 프로그램을 만들어보자. 단 각 숫자를 출력하기전에 1초를 멈추고 나서 출력한다. 0에 도달할 때는 0대신 Go!를 출력한다. package main func main() { Countdown() } 사실 프로그램이 맞나 싶을 정도로 보잘 것 없는 요구사항이지만 언제나 작은 단계의 성공적인 소프트웨어를 구축한 후, 이를 점차 반복적인 테스트 접근법을 통해 구축해야 한다. 이렇게 하려면 요구사항을 가능한 잘게 쪼갠 후 동.. 2022. 1. 2.
Go - dependency injection - 출처: https://quii.gitbook.io/learn-go-with-tests/go-fundamentals/dependency-injection - 개요 Go의 표준 라이브러리의 인터페이스인 Writer를 이용하여 Dependency injection(이하 'DI')에 대해 알아본다. DI를 이용하면 test에 얼마나 많은 도움이 되는지 이해한다. - Dependency injection 한국의 국룰 프레임워크인 Spring을 써본적이 있다면 DI 라는말을 들어본적이 있을것이다. 용어도 멋있기 때문에 오해가 있는데 DI에 관한 약간의 오해를 줄이고자 한다. 우선 DI를 하기 위해 반드시 프레임워크가 필요한것은 아니다. 또한 코드나 디자인을 복잡하게 하지 않는다. test를 용이하게 하고, 함수.. 2021. 12. 31.