
DI·IoC·DIP 차이, 세 용어 한 번에 완벽 정리
DI·IoC·DIP는 층위가 다른 개념입니다. DIP는 무엇에 의존할지 정하는 원칙, IoC는 제어권을 누가 갖는지의 방향, DI는 의존성을 넣어주는 기법이라는 구분을 예제와 면접 답변까지 정리했습니다.
읽어보기ARCHIVE · 07
기초 개념부터 실무의 선택 기준까지, 발자국을 따라 천천히 둘러보세요.

DI·IoC·DIP는 층위가 다른 개념입니다. DIP는 무엇에 의존할지 정하는 원칙, IoC는 제어권을 누가 갖는지의 방향, DI는 의존성을 넣어주는 기법이라는 구분을 예제와 면접 답변까지 정리했습니다.
읽어보기
메서드 스위즐링은 셀렉터와 IMP를 잇는 연결표를 런타임에 맞바꾸는 기법입니다. 관례적인 구현 전체와 _cmd가 거짓말을 하는 부작용, 어디까지 써도 되는지의 경계를 정리했습니다.
읽어보기
Swift 5.5 이상에서는 테스트 함수를 async로 선언하고 await로 결과를 기다린 뒤 검증하면 됩니다. 에러 검증, 오래된 콜백 API 테스트, expectation을 아직 써야 하는 경우까지 정리했습니다.
읽어보기
연관 타입(associatedtype)은 프로토콜에 뚫린 타입 빈칸입니다. 그 유명한 generic constraint 에러가 났던 이유와 SE-0309·SE-0346으로 제약이 풀린 과정, primary associated types 활용법을 정리했습니다.
읽어보기
map·filter·compactMap·flatMap·reduce 다섯 함수의 구분은 클로저가 무엇을 반환하느냐로 갈립니다. for 루프와의 선택 기준, 체이닝이 만드는 중간 배열, lazy 시퀀스가 푸는 문제를 정리했습니다.
읽어보기