Keep Framework Code Distant

이정훈·2024년 8월 2일

프레임워크 코드와 애플리케이션 코드를 분리하는 것은 중요합니다.
이렇게하면 애플리케이션이 프레임워크와 분리되고 유지보수와 테스트 그리고 업그레이드가 쉬워집니다.

크게 고민할 필요가 없는게 프레임워크가 애플리케이션의 구조와 흐름을 제어하고, 애플리케이션 코드가 프레임워크의 규칙과 API를 활용하게 되므로, 기본적으로 프레임워크와 애플리케이션 코드 간에는 일정한 분리가 이루어집니다.
지만 이 분리는 완벽한 독립성을 보장하지는 않으며, 프레임워크의 변경이나 커스터마이즈가 애플리케이션 코드에 영향을 미칠 수 있습니다. 따라서 추상화 레이어와 의존성 주입을 통해 결합도를 줄이고, 명확한 설계를 유지하는 것이 중요합니다.

아래는 프레임워크 코드와 애플리케이션 코드를 분리하는데 도움이 될 몇가지 가이드입니다.

  • 아래 사진은 간략하게 프레임워크 코드와 애플리케이션 코드가 어떠해야 하는지 보여주는 사진입니다.
    프레임워크와 애플리케이션 코드가 너무 관련이 많은걸 비유한 사진:

프레임워크와 애플리케이션 코드가 적절히 관련된 것을 비유한 사진:

How to Keep Framework Code Distant?

  1. 추상화 레이어를 이용하자
    추상화레이어를 통해 애플리케이션을 분리시키면 프레임워크에 대해 구체적으로 알 필요 없이 코드를 작성할 수 있습니다.

  2. 의존성 주입 사용
    의존성 주입을 통해 프레임워크 코드와 애플리케이션 코드를 분리할 수 있습니다.
    의존성 주입은 애플리케이션 코드가 프레임워크의 기능을 프레임워크 객체를 직접적으로 인스턴스화할 필요 없이 사용하게 해줍니다.

  3. 프레임워크와 직접적으로 관련된 라이브러리와 클래스 사용을 피하자
    이는 다른 프레임워크로 바꿀 때 유용합니다.

  4. 프레임워크와 상호작용할 때 기본 인터페이스를 사용하자
    프레임워크에 대해 구체적으로 알 필요 없이 코드를 작성할 수 있습니다.

  5. 프레임워크 코드와 프로젝트 코드를 따로 분리하자.

위의 규칙들을 지키면 다른 프레임워크로 업그레이드하거나 옮길 때 시스템 아키텍쳐가 더욱더 유지보수가능하고 테스트 가능하며 더 적은 에러를 발생시킬 것입니다.

profile
기록으로 흔적을 남깁니다.

0개의 댓글