[Java] SOLID란?

2022. 5. 16. 14:35·Java

SRP 단일 책임 원칙(Single responsibility principle)

한 클래스는 하나의 책임만 가져야 한다는 원칙이다.

 

OCP 개방-폐쇄 원칙(Open/closed principle)

소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다는 원칙이다. 다형성을 활용해야 한다.

 

LSP 리스코프 치환 원칙(Liskov substitution principle)

프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야하는 원칙으로 상위 타입을 상속해서 재정의 했을 때 프로그램이 깨지지 않아야 함을 의미한다.

 

ISP 인터페이스 분리 원칙(Interface segregation principle)

특정 클라이언트를 위한 인터페이스 여러 개가 범용 인터페이스 하나보다 더 낫다는 원칙이다. 즉, 비대한 인터페이스보단 더 작고 구체적인 인터페이스로 분리해야 함을 의미한다.

 

DIP 의존관계 역전 원칙(Dependency inversion principle)

추상화에 의존해야지, 구체화에 의존하면 안된다라는 원칙이다. 쉽게 이야기해서 구현 클래스에 의존하지 말고, 인터페이스에 의존하라는 의미이다.

저작자표시 (새창열림)
'Java' 카테고리의 다른 글
  • [Java 필수 문법] 2. Primitive Type vs. Reference Type
  • [Java 필수 문법] 1. 정수형, 부동소수형 데이터 타입
  • [Java] 객체지향이란?
  • [Java] GC란?
김행만
김행만
이모저모 다 적기
  • 김행만
    hyeinisfree
    김행만
  • 전체
    오늘
    어제
    • 분류 전체보기 (41)
      • AWS (0)
      • Network (6)
      • CICD (1)
      • Spring (0)
      • Ruby on Rails (0)
      • Java (12)
      • Python (1)
      • Computer Science (6)
        • Algorithm (2)
        • Data Structure (3)
        • Database (0)
        • Design Pattern (1)
      • Solving Algorithm Problem (12)
        • LeetCode (12)
        • Programmers (0)
      • 자격증 (1)
      • Tip (1)
      • Etc (1)
        • 도서, 강의 (1)
        • Talk (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    Network
    Packet Tracer
    java
    cisco packet tracer
    java 필수 문법
    CISCO
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
김행만
[Java] SOLID란?
상단으로

티스토리툴바