본문 바로가기
CS

[CS] 객체지향의 5대 원칙 (SOLID)

728x90
반응형

🎲 SOLID란?

    SOLID는 객체지향적으로 개발을 함에 있어서 지켜야할 5가지 수칙의 앞글자를 따온 이름입니다. 해당 원칙들은 프로그램의 유지보수가 용이하도록 도와줍니다.

 

 

🍳 단일 책임의 원칙 (Single Responsibility Principle)

    - 하나의 모듈은 하나의 책임만을 가집니다. 또한, 모듈이 변경 될 때 이뉴는 반드시 한가지여야 합니다. 이러한 원칙은 각각의 기능에 대한 책임영역을 확실히 해주기 때문에 향후 기능이 변경될 때 불필요한 연쇄 수정을 방지해 줍니다.

 

🍳 개방폐쇄의 원칙 (Open Closed Principle)

    - 코드의 확정에 대해서는 열려있고 수정에 대해서는 닫혀있어야 합니다. 즉, 유지보수가 이루어 질 때 기존의 코드 수정은 최소한으로 하고, 새로운 기능을 구현할 때는 기존 코드를 적극적으로 재활용하여야 한다는 뜻입니다.

 

🍳 리스코프 치환의 원칙 (Liskov Substitution Principle)

    - 상위 클래스가 하위 클래스로 변경되어도 문제없이 상위 클래스의 메소드들을 사용할 수 있어야 합니다. 바꿔 말하자면, 하위 클래스는 상위 클래스의 틀을 벗어나서는 안된다는 의미입니다.

 

🍳 인터페이스 분리의 원칙 (Interface Segregation Principle)

    - 각각의 클라이언트들의 목적에 맞도록 적합한 인터페이스만을 선정하여 제공해야합니다. 이말인 즉슨, 하나의 인터페이스가 너무 많은 정보를 담고있으면 안된다는 뜻입니다. 클래스의 특정부분만을 제공하고 싶을 때 는 해당부분을 인터페이스로 만들어 다중상속 받은 뒤 인터페이스를 통해 제공해줄 수 있습니다.

 

🍳 의존성 역전의 원칙 (Dependency Inversion Principle)

    - 의존관계를 맺을 때는 변동성이 큰 것(구체화된 클래스) 보다는 변동성이 적은 것(추상 클래스, 인터페이스)과 의존 관계를 맺어야 한다는 의미입니다.

반응형

'CS' 카테고리의 다른 글

[CS] C++과 C#의 특징  (1) 2023.02.16