외부 라이브러리 최소한으로 사용하기

저의 패캠 iOS 코스 과정에선 8주 동안 앱개발 팀프로젝트를 하게 되는데요, 재미를 더하기 위해 제가 정한 필수 요구사항 외에 팀 별로 '보너스 미션'을 자율적으로 선택합니다. 그 중 하나의 예시로 [외부 라이브러리 최소한 사용하기] 미션이 있습니다. 개인적으로 이 미션이 중요하다고 생각하는 이유는 도구의 사용법을 익히기보다 왜 그 도구를 써야하는지, 나한테 필요한 해결법이 무엇이고 동작 원리와 원칙을 이해하는게 더 중요하기 때문입니다. 해결 방법이 나오고 그에 맞는 도구를 선택해야 하는 건데 그 반대로 가는 경우가 있습니다. 네트워킹을 구현하는데 무조건 알라모파이어만 사용한다던지, 모듈화를 하려고 할 때 Tuist부터 공부한다던지, 의존성 주입을 하려는데 Needle이나 Swinject 비교부터 해보다던지, 유닛 테스트를 배우려는데 Quick/Nimble부터 익힌다던지 등등의 예시가 있습니다. 전부 다 훌륭한 라이브러리들이지만 왜 쓰는건지, 나한테 꼭 필요한건지 이해하지 않고 바로 툴부터 익혀서 도입해버리는건 기술 부채를 쌓는 일입니다. 알라모파이어를 쓰기 전에 URLSession부터, Tuist를 도입하기 전에 작은 부분이라도 직접 모듈화를 먼저 해보고, 의존성 주입도 그냥 하면 됩니다. 외부 라이브러리 없이도 모든걸 다 할 수 있습니다. 이렇게 접근하면 좋은게 공식 문서를 먼저 보게되고, 원리와 이론을 설명해주는 책부터 찾게 됩니다. 외부 라이브러리는 생각보다 많은 경우 선택사항입니다. 내가 뭐가 필요한지 정확히 이해하고 직접 구현 해보면, 그 무거운 라이브러리들 없이 내가 필요한 것만, 사용하기 쉽게, 모듈도 훨씬 간결하게 만들어서 오래 유지할 수 있습니다. 그러다가 정말 외부 라이브러리가 필요한 일이 생기면 그때 도입해도 됩니다. https://fastcampus.co.kr/dev_innercircle_rsj

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2022년 10월 27일 오후 2:56

 • 

저장 11조회 3,122

댓글 0