민뭉아치
민뭉아치
민뭉아치
전체 방문자
오늘
어제
  • 분류 전체보기 (62)
    • ㅁㅁㅇㅊ's Life (0)
      • Diary (1)
      • Certification (6)
      • English (1)
      • 독서 (1)
    • Algorithm (25)
    • Web (2)
    • Language (3)
      • JavaScript (1)
      • JAVA (2)
    • Spring boot (9)
    • Cloud (0)
    • DevOps (1)
    • Trouble Shooting (6)
    • 개발환경 (3)
    • 짤막IT지식 (4)

블로그 메뉴

  • 홈
  • 깃허브
  • 방명록

공지사항

인기 글

태그

  • 자바
  • 백준
  • 정보처리기사
  • Java
  • Algorithm
  • 자격증
  • 알고리즘
  • 코딩테스트
  • 백준알고리즘
  • Spring

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
민뭉아치

민뭉아치

짤막IT지식

SOLID

2023. 12. 11. 00:42

SOLID


 

SRP, OCP, LSP, ISP, DIP의 약자

로버트 마틴이 정리한 객체지향 프로그래밍 및 설계의 소프트웨어 개발 원칙을 의미한다.

SOLID 원칙을 따르면 코드를 확장하고 유지보수 하기 좋아진다.

 

SRP

Single Responsibility Principle의 약자

단일 책임의 원칙

하나의 객체는 하나의 책임만 가져야 한다.

응집도는 높게 결합도는 낮게 설계해야한다.

객체가 단 하나의 일만 한다면 시스템 수정 시 영향을 최소화 할 수 있다.

 

OCP

Open-Closed Principle의 약자

개방 폐쇠의 원칙

확장에는 개방적, 변경에는 폐쇠적이여야 한다.

새로운 기능이 추가 될 때, 새로운 코드가 추가되면 기존의 코드에 변경이 발생하지 않도록 설계해야한다.

 

LSP

Liskov Subsititution Principle의 약자

리스코프 치환의 원칙

서브타입은 언제나 기반 타입으로 교체가능해야한다.

즉, 자식 객체는 부모 객체에 정의되어 있는 책임을 따르고 위반하면 안된다.

자식 객체는 확장만을 수행한다.

 

ISP

Interface Segregation Principle의 약자

인터페이스 분리의 원칙

사용하지 않는인터페이스는 구현하지 않는다.

여러개의 구체적인 인터페이스로 구현하는 것이 좋다.

사용하지 않는 메서드가 있다면 인터페이스를 분리하는것이 좋다.

 

DIP

Dependency Inversion Priciple의 약자

의존성 역전의 원칙

하위 모듈의 변화가 상위 모듈에게 변경을 요구하는 관계는 끊어야 한다.

하위 모듈의 변화는 빈번하게 일어나므로

상위 모듈 즉, 상위 클래스, 인터페이스, 추상 클래스를 통해 의존해야 한다.

 

반응형

'짤막IT지식' 카테고리의 다른 글

CSP, MSP  (0) 2023.12.06
CIDR, 클래스 기반 IP주소  (0) 2023.12.06
DDD, Event Storming  (0) 2022.05.09
    '짤막IT지식' 카테고리의 다른 글
    • CSP, MSP
    • CIDR, 클래스 기반 IP주소
    • DDD, Event Storming
    민뭉아치
    민뭉아치
    Do Better Today Than You Were Yesterday

    티스토리툴바