2025/04/09 2

템플릿 메서드(Template Method) 패턴을 알아보자

템플릿 메서드(Template Method) 패턴이란 무엇인가? 복붙을 많이하는 프로그래밍의 특성상 코딩을 하다보면 아래의 예시처럼 동일한 코드가 특정한 부분을 빼고 똑같이 반복되는 결과물이 나온적이 한번씩 있을거라 생각합니다.void method1() { System.out.println("동일한 코드 A"); System.out.println("method1만의 코드"); System.out.println("동일한 코드 B");}void method2() { System.out.println("동일한 코드 A"); System.out.println("method2만의 코드"); System.out.println("동일한 코드 B");}위와 같은 상황이 발생하는 경우 동..

코루틴은 정말 멀티 스레드 보다 가벼울까?

코루틴의 경량성을 실험하게 된 계기코틀린을 써보기도 전에 많이 듣던 얘기는 코틀린의 코루틴이 좋다는 이야기였습니다. 그런 이야기를 늘으니 문득 궁금증이 생겼습니다. 얼마나 좋길래 이렇게 유명하지?!아무래도 궁금하다면 직접 테스트해보는 게 가장 좋지 않을까란 생각에 직접 멀티스레드와 비교해보면서 테스트 해보려 합니다.코루틴이 코틀린 말고도 다른 언어에서도 지원하는 기술자체의 명칭이란 건 나중에 알게 되었습니다;; 물론 코틀린은 라이브러리나 프레임워크가 아닌 언어 차원에서 지원한다는 차이점이 존재하긴 합니다.멀티스레드 VS 코루틴비교 조건은 아래와 같습니다.코루틴과 멀티 스레드 모두 사용 가능한 모든 스레드를 사용한다.멀티스레드와 코루틴 모두 1만 개의 작업을 생성한다.하나의 작업당 0.01초의 Sleep을..