ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 24-06-26 TIL ( 모의면접준비정리#3 )
    카테고리 없음 2024. 6. 26. 22:56

    Class와 Instance:

    • Class: 객체를 생성하기 위한 설계도 또는 템플릿. 객체의 속성과 메서드를 정의.
    • Instance: 클래스를 기반으로 실제로 생성된 객체. 클래스의 인스턴스라고 부름

     

     

    화살표 함수(Arrow Function)로 클래스 메서드를 구현하지 않았을 때의 문제와 해결 방법

    • 문제: 화살표 함수는 자신만의 this 바인딩이 없기 때문에, 클래스 메서드에서 this를 사용하면 예기치 않은 동작이 발생할 수 있음.
    • 해결 방법:
      1. 클래스 메서드를 일반 함수 형태로 정의
      2. 생성자에서 메서드의 this를 바인딩
      3. 메서드 내부에서 화살표 함수를 사용하지 않고 일반 함수를 사용 

    3-Layered Architecture의 각 Layer 역할:

    • Controller Layer: 클라이언트의 요청을 받아 Service Layer로 전달, 응답 반환
    • Service Layer: 비즈니스 로직 수행, Repository Layer를 통해 데이터 처리
    • Repository Layer: 데이터베이스와의 CRUD 작업 수행

     

    3-Layered Architecture의 장단점:

    • 장점:
      • 관심사 분리로 인한 코드 가독성 및 유지보수성 향상
      • 각 Layer의 역할이 명확하여 개발 및 테스트가 용이
      • 변경에 유연한 구조
    • 단점:
      • 계층 간 의존성 증가로 인한 복잡성 증가
      • 계층이 많아져 성능 저하 가능성

     

     

    Service, Repository Layer에서의 에러 처리 및 사용자 전달 방법:

    • Service, Repository Layer에서 발생한 에러를 Controller Layer로 전달
    • Controller Layer에서 에러 객체를 사용하여 적절한 HTTP 상태 코드와 함께 클라이언트에게 응답
    • 이를 위해 Service, Repository Layer에서는 고유한 에러 객체를 생성하여 전달

    이와 같은 방식으로 3-Layered Architecture의 각 Layer 간 역할 분담과 에러 처리를 구현할 수 있습니다.

Designed by Tistory.