[5단원]5원칙 - SOLID

객체 지향의 4대 특성과 도구의 사용

개요

  • 객체 지향의 4대 특성
    1. 캡슐화
    1. 상속
    1. 다형성
    1. 추상화
  • 이러한 특성은 프로그래밍에서 사용하는 '도구'와 유사함
  • 그 사용법을 잘 알아야만 효과적인 프로그래밍이 가능합니다.

비유

객체 지향의 4대 특성을 요리의 불, 물, 칼 등의 주방 도구에 비유할 수 있다.

도구를 올바르게 사용하지 않으면, 예를 들어 칼 대신 물의 수압을 이용해 과일을 자르려고 한다면, 그 효율은 매우 떨어질 것이다.

따라서 도구를 올바르게 사용해야 함

SOLID 원칙의 등장 및 필요성

개요

  • SOLID 원칙은 객체 지향 프로그래밍에서 좋은 설계를 위한 기본 원칙 5가지를 말한다.
  • SRP, OCP, LSP, ISP, DIP의 머리글자를 따서 ⇒ SOLID

5가지 원칙

  • SRP(Single Responsibility Principle): 단일 책임 원칙
  • OCP(Open Closed Principle): 개방 폐쇄 원칙
  • LSP(Liskov Substitution Principle): 리스코프 치환 원칙
  • ISP(Interface Segregation Principle): 인터페이스 분리 원칙
  • DIP(Dependency Inversion Principle): 의존 역전 원칙

결합도와 응집도

좋은 설계는 '결합도'를 낮추고 '응집도'를 높이는 것을 목표로 합니다.

  • 좋은 설계
    • 결합도 DOWN
    • 응집도 UP

결합도
  • 클래스나 모듈 간의 의존성
응집도
  • 하나의 클래스나 모듈이 얼마나 특정 목적/기능에 집중하는지

SOLID 원칙의 중요성과 적용

개요

  • SOLID 원칙은 개념이지만, 이를 잘 적용하면 소프트웨어의 유지보수와 확장성, 가독성 등이 크게 향상된다.

다양한 적용 범위

  • SOLID 원칙은 클래스, 객체, 메서드, 패키지 등 다양한 수준에서 적용할 수 있다.
  • 이 원칙은 객체 지향 4대 특성을 기반

Uploaded by N2T

'자바 > 스프링입문객체지향' 카테고리의 다른 글

[5단원]5원칙 - DIP  (0) 2023.09.13
[5단원] 객체지향 세계와 SOLID 마무리  (0) 2023.09.13
[5단원]5원칙 - SRP  (0) 2023.09.10
[5단원]5원칙 - OCP  (0) 2023.09.10
[4단원]this 키워드  (0) 2023.09.04