issues
search
ReactMasters
/
study
스터디 기록
1
stars
0
forks
source link
Clean Code 8장 Boundaries 요약
#44
Open
56aiden90
opened
1 year ago
56aiden90
commented
1 year ago
Clean code
Chapter 8 Boundaries
*Boundary: 써드파티 라이브러리 등 외부로부터 도입된 코드
외부 코드 도입하기
외부 코드를 앱 전반에 걸쳐 직접 사용하지 말 것
라이브러리 버전을 업데이트 해야 하는 등 변경 사항이 있을 때 더 많은 공수가 소요되고, 결과적으로 유지보수가 어려워진다.
Wrapper 클래스를 사용해서 외부 코드를 한 번 감싸서 사용해라.
외부 코드 학습하기
외부 코드가 원하는 대로 동작하는지 확인할 수 있도록 유닛 테스트를 작성해라.
해당 외부 코드를 어떻게 사용해야 하는지 내부 코드와 분리하여 배울 수 있다.
버전 업데이트 등으로 인해 외부 코드의 구현이 변경될 때, 해당 외부 코드가 여전히 작동하는지 확인할 수 있다.
아직 구현되지 않은 외부 코드로 작업하기
해당 외부 코드가 작동하길 원하는 방식으로 직접 API를 구현해 놓아라.
외부 코드에 대한 의존성을 낮추고, 프로젝트에 꼭 들어맞는(specific) 방식으로 외부 코드를 사용할 수 있게 된다.
이때, Adapter 패턴이 캡슐화와 유지보수에 도움이 될 수 있다.
결론
외부 코드는 직접 변경/관리할 수 없기 때문에 사용 시 특히 주의해야 한다.
외부 코드는 내부 코드와 확실히 분리되어야 하며, 유닛테스트를 작성해야 한다.
내부 코드는 특정 외부 코드의 구현에 의존해선 안된다. 외부 코드의 구현은 언제든 바뀔 수 있다.
Clean code
Chapter 8 Boundaries
*Boundary: 써드파티 라이브러리 등 외부로부터 도입된 코드
외부 코드 도입하기
외부 코드 학습하기
아직 구현되지 않은 외부 코드로 작업하기
결론