추상화

인터페이스 분리 원칙: Interface Segregation Principle인터페이스 분리 원칙(ISP)이란 객체는 자신이 호출하지 않는 메서드에 의존하지 않아야 한다는 원칙입니다.ISP의 핵심 키워드는 다음과 같습니다.작은 인터페이스: 작고 구체적인 인터페스로 분리클라이언트: 인터페이스를 사용하는 객체응집력: 인터페이스와 구현 클래스의 높은 응집력의존성 최소화: 불필요한 메서드 의존성 제거ISP는 인터페이스를 작고 특정한 역할을 수행하도록 분리합니다.즉, 클라이언트가 자신에게 필요하지 않은 메서드가 종속되지 않도록 하는 것입니다.  ISP를 설명하기 위해 간단한 예제를 보겠습니다. 요구사항스마트폰 최신 기종 S24와 오래 된 S2 기종이 구현해야 한다.통화, 메시지는 스마트폰 일반 기능이다.S24는..
개방 폐쇄 원칙: Open Close Principle개방 폐쇄 원칙의 핵심 키워드는 다음과 같습니다.확장에는 열려 있고, 변경에는 닫혀 있다.기능을 추가할 때, 기존 코드를 변경하지 않는다.개방 폐쇄 원칙은 모듈의 확장과 변경을 관리하는데 용이 하며, 기능이 추가되어도 기존 코드를 변경하지 않습니다.해당 원칙의 주요 개념을 풀어쓰면 다음과 같습니다.확장: 새로운 타입(클래스)을 추가하여 새로운 기능(요구사항)을 구현할 수 있어야 한다.변경: 새로운 클래스가 추가되어도, 기존 코드를 호출하는 상위 모듈이 수정되지 않아야 한다.OCP를 설명하기 위해 간단한 예제를 통해 설명하겠습니다. 요구사항카드 결제 시스템을 만들고자 한다.결제를 지원하는 카드는 신한카드 하나만 있다. 우리카드 결제 방식이 추가되어 구현..
의존성 역전 원칙: Dependency Inversion Principle의존성 역전의 원칙은 다음과 같이 정의할 수 있습니다.상위 수준 모듈은 하위 수준 모듈의 세부 사항에 의존해서는 안됩니다.하위 수준 모듈은 상위 수준 모듈에 정의된 추상 타입에 의존해야 합니다.의존성 역전의 원칙은 모듈 간 의존성을 낮추고, 유연성과 유지보수성을 향상시킵니다.해당 원칙의 주요 개념을 요약하자면 다음과 같습니다.상위 모듈: 비즈니스 로직이나 주요 기능을 정의하는 모듈 (ex Controller)하위 모듈: 구체적인 구현을 포함하는 모듈 (ex Service, Repository)추상 타입: 인터페이스나 추상 클래스를 통해 상위 모듈과 하위 모듈 간의 의존성을 정의DIP를 설명하기 위해 간단한 예제를 통해 설명하겠습니다..
Hui._.
'추상화' 태그의 글 목록