# SOLID

SOLID - 객체 지향 설계의 5가지 원칙
"프로그래밍에서 가치는 원칙보다 높은 수준의 개념이며, 원칙을 가치를 지키기 위해서 존재해야 한다." - 켄트 백가독성, 커뮤니케이션읽고 이해할 수 없는 코드는 가치가 없다!!단순성버그가 생길 틈이 적어진다.커뮤니케이션에 도움된다.미래의 확장성을 위해서 복잡한 패턴은
객체지향 프로그래밍과 SOLID 원칙
객체의 관점에서 프로그래밍을 한다기계의 부품을 조립하여 제품을 만들 듯이 객체를 만들어 소프트웨어를 개발할 때에 객체들을 조립하여 작성하는 프로그래밍객체란 우리가 보고 느끼고 인지할 수 있는 모든 것을 의미한다애플리케이션을 구성하는 요소들을 객체로 바라보고, 객체들을

[SOLID] 예제로 SOLID 원칙 파헤치기
SOLID 원칙에 대한 개념들을 읽기만 하면 바로 까먹고 생각이 안나기 때문에 직접 예시를 만들어보며 이해해보도록 하였다. 적당한 예시일진 모르겠지만 내가 이해한 대로 작성해 보겠다. 먼저 사자와 거북이의 달리기 시합이다. 코드에서 뭔가 불편한 점이 있다 하더라도
의존관계 역전 원칙
상위 계층 클래스들은 하위 계층 클래스들에 의존해서는 안됩니다객체에서 어떤 Class를 참조해서 사용하는 상황이 발생한다면 그 Class를 직접 참조하는 것이 아닌 그 대상의 상위요소(추상클래스 or 인터페이스)로 참조해야 한다일반적으로 클래스는 다음 두 계층으로 분류
인터페이스 분리 원칙
클라이언트들은 자신이 사용하지 않는 메서드에 의존하도록 강요되어서는 안된다인터페이스를 잘게 분리함으로써, 클라이언트의 목적과 용도에 적합한 인터페이스만을 제공하는 것이다클래스 상속은 하나의 부모 클래스만 가질 수 있도록 하지만 동시에 구현할 수 있는 인터페이스(프로토
리스코프 치환 원칙
리스코프 치환 원칙 (Liskov Substitution Principle) 자식 클래스는 부모 클래스의 행동과 계속 호환되어아 햡니다 개념 * 서브타입은 언제나 기반타입으로 교체 * 할 수 있어야 한다 즉, 부모 클래스의 인스턴스를 사용하는 위치에 자식 클래스의 인스
개방/폐쇄 원칙
클래스는 확장에는 열려 있어야 하지만 변경에는 닫혀 있어야 합니다. 기존의 코드를 변경하지 않으면서 기능을 추가 할 수 있어야 합니다이 원칙의 목적은 새로운 기능을 구현할 때 기존 코드가 깨지지 않도록 하는 것입니다클래스는 확장할 수 있을때, 자식클래스를 생성할 수

좋은 객체 지향 설계의 5가지 원칙
객체 지향 설계에는 5가지 중요한 원칙이 있습니다. 이를 SOLID 원칙이라고도 부릅니다.단일 책임 원칙은 하나의 클래스는 하나의 책임만 가져야한다는 원칙입니다. 책임의 범위와 정의는 경우에 따라 다르지만, 일반적으로 변경이 있을 때 파급 효과가 적은 경우에는 단일 책

클린 코드 원칙 - SOLID (스터디정리)
부모의 속성을 자식이 가질 수 없을 때 (다형성) 그러한 코드를 만들지 말라는 것펭귄을 지우던가 fly()라는 기능을 비둘기에만 두던가컴포넌트는 당연히 UI만 호출, 커스텀 훅을 만든 후 거기에서 useEffect를 통한 axios를 가지고 옴

SOLID 원칙
흔히 객체지향 프로그래밍을 얘기할때 꼭 빼먹지 않는 단어가 있다.바로 SOLID 원칙.solid랑 객체지향이라니 이 무슨 재밋는 모순이냐고 🤷♀️암튼 📌 SOLID 원칙이란, 객체지향 프로그래밍의 5가지 설계 원칙을 말한다.밑에 이놈들의 앞글자를 따서 만들어졌다.
SOLID 원칙
SOLID 원칙은 객체 지향 프로그래밍에서 사용되는 설계 원칙으로, 다섯 가지의 단일 책임 원칙(Single Responsibility Principle), 개방-폐쇄 원칙(Open-Closed Principle), 리스코프 치환 원칙(Liskov Substitutio

OOP
컴퓨터가 처음 만들어진 시절, 컴퓨터는 너무 원시적인 나머지 0과 1만 이해할 수 있었다. 사실 아직까지도 0과 1만 알아들을 수 있다. 즉, 2진법만 알고 있다. 최초의 프로그래머들을 키보드는 물론 모니터도 없었다.
OOP SOLID
OOP의 5가지 원칙,우리 밥아저씨(Robert C. Martin) 가 주창한 방법론S: Single responsivbility principle (단일 책임 원칙)\-> 객체는 하나의 책임만 가져야 한다. (여러 기능이 복합적으로 수행된다면 복잡도가 늘어나고, 유지
객체 지향 프로그래밍
인간 중심적 프로그래밍 패러다임(현실 세계를 프로그래밍으로 옮겨와 프로그래밍 하는 것)현실 세계의 사물들을 객체라고 보고 그 객체로부터 개발하고자 하는 어플리케이션에 필요한 특징들을 뽑아와 프로그래밍 하는 것(추상화)이미 작성한 코드에 대한 재사용성 높음\-> 자주 사

SOLID 원칙. 개요
객체지향 설계원칙 > 개발자라면 객체지향 설계, SOLID라는 용어를 본 적이 있을 것이다. 하지만 딱 용어 정도만 들어보고 각각이 무엇인지 또 어떤 것들을 말하는 것인지 잘 알지 못하는 사람도 있을 것이다. 기록해두고 잊을만하면 다시 보며 항상 머릿속에 상기시키도록
OOP 객체지향 5원칙
SRP(Single Responsibility Principle): 단일 책임 원칙OCP(Open Closed Priciple): 개방 폐쇄 원칙LSP(Listov Substitution Priciple): 리스코프 치환 원칙ISP(Interface Segregatio

좋은 객체 지향 설계의 5가지 원칙(SOLID)
이번 포스팅에선 실무에서 Spring을 기반으로 API 확장성과 유지보수를 확보하기 위해 객체 지향 설계의 원칙을 정리해보고자 한다. 객체지향 프로그래밍의 특성과 장점을 살려 프로그램의 구조를 어떻게 설계해야하는지에 대해 이야기할것이다. "한 클래스는 하나의 책임만 가