# DIP

[Clean Architecture] SOLID - DIP(Dependency Inversion Principle)
의존성 역전 원칙핵심 부분을 담당하는 모듈의 제어흐름과 다른 모듈들의 의존 방향이 반대변동성이 큰 구현체에 의존하지 않고 추상 클래스에만 의존해야 한다는 원칙핵심체인 Application에서 구현체에 의존하는 상태이다.FactorySeviceApplication변경되기
인프런, 객체 지향 프로그래밍 입문 - 7
고수준 모듈의미 있는 단일 기능을 제공, 상위 수준의 정책을 구현저수준 모듈고수준 모듈의 기능을 구현하기 위해 필요한 하위 기능의 실제 구현고수준 모듈 -> 저수준 모듈도면 이미지를 저장한다. -> NAS에 이미지를 저장한다.측정 정보를 저장한다. -> MEAS_INF
의존성이 뭐죠...? (Dependency, DI, DIP, IOC)
의존성 주입이라는 말은 Swift를 사용하는 iOS 개발에서만 나오는 용어는 아니다. 이는 객체 지향 프로그래밍에서 사용되는 언어이다. 매일 의존성이라고 말하고 있지만, 도대체 무엇인지 한마디로 정의하지 못하는 나 자신을 보면서 공부하게 되었다…
DIP와 DI, SOLID, IoC
Dependency Inversion Principle / Dependency Injection / 객체지향설계의 5원칙 / Inversion of Control에 대해서
[C/C++]Bitmap 파일 구조와 bmp 파일 읽기/쓰기
Digital Image Processing의 기초가 되는 비트맵에 대한 개요를 파악하고, 직접 bmp 파일을 읽어오는 프로그램을 작성해봅니다.

SOLID 원칙 (객체 지향 설계)
한 클래스는 하나의 책임만 가져야 한다.위에서 말하는 책임 이라는 단어는 기능 이라고 해석이 가능하다.예를 들면 나라는 객체가 존재 한다면 아들,직장인,남자친구 등 다양한 소속 및 위치에서 책임을 가진다.그러한 책임들을 하나의 객체에 각자 매칭하여 변경이 있을 떄 파급
Dependency Inversion Principle(DIP)
어떤 객체에서 다른 클래스를 의존하고자 할 때 구상 클래스에 의존하지 말고 인터페이스와 같이 추상화 된 것에 의존하라는 법칙이다. DIP에서 의존성은 객체간에 의존성을 말한다. 이를 역전한다는 것의 의미는 구상클래스에 의존하는 부분을 추상화한 클래스나 인터페이스로 의존
좋은객체지향의 원리
SRP:단일 책임 원칙OCP:개방-폐쇄 원칙LSP:리스코프 치환 원칙ISP:인터페이스 분리 원칙DIP:의존관계 역전 원칙한 클래스는 하나의 책임만 가져야 한다하나으ㅢ 책임이라는 것은 모호하다\-클 수 있고, 작을 수 있다.\-문맥과 상황에 따라 다르다중요한 기준은 변경
[About Spring] 스프링의 핵심 원리
스프링은 어떤 특정한 하나의 기술이 아닌, 여러가지 기술의 집합체이다. 그 기술의 형태는 다음과 같다.스프링 프레임워크스프링의 가장 핵심 기술인 스프링 프레임워크스프링 부트여러기술을 편리하게 사용할 수 있도록 도움을 주는 스프링 부트스프링 데이터CRUD를 편리하게 사용

[개발자가 반드시 정복해야 할 객체 지향과 디자인 패턴] 설계 원칙: SOLID
객체 지향적으로 설계하는데 기본이 되는 설계 원칙인 SOLID에 대해 알아보자.
의존성 역전 원칙(DIP)
로버트 마틴은 DIP에 대해 이렇게 말했다.1\. 상위 수준의 모듈은 하위 수준의 모듈에 의존해서는 안된다, 둘 모두 추상화에 의존해야한다2\. 추상화는 구체적인 사항에 의존해서는 안된다, 구체적인 사항은 추상화에 의존해야한다DIP는 결국 클래스 간의 커플링을 감소시키

[기본기] 7-1. SingleTon & Stateful의 문제
본 게시글은 김영한님의 스프링 핵심 원리 기본편을 정리한 글입니다.SingleTon에 대해서 설명을 하기 이전 우선 이것이 왜 생겨나게됬는지에 대해서 한 번 알아보고 가보자. 다음과 같은 그림을 한 번 볼까? 지금까지처럼 이제 웹 어플리케이션 개발을 하게 될 경우 이제

[기본기] 5-4. 관심사의 분리
본 게시글은 김영한님의 스프링 핵심 원리 기본편을 정리한 글입니다.이전 글에서 마지막에 이제 OCP, DIP를 지키기 위하여서 구현체를 의존하지 않게 하기 위하여서위의 주석 코드를 아래처럼 바꿔서 진행을 해야 한다고 하였다. 그러나 이렇게 진행할 경우 구현체가 없이 코
객체지향 설계 원칙 SOLID
Single responsibility principle한 클래스는 하나의 책임만 가져야한다.클래스를 변경하는 이유는 단 하나여야한다.변경에 따른 파급효과가 적다Open/closed principle확장에는 열려있으나, 변경에는 닫혀있어야한다.다형성을 활용Liskov

[기본기] 5-3. 좋은 객체 지향 설계를 하기 위하여
본 게시글은 김영한님의 스프링 핵심 원리 기본편을 정리한 글입니다.할인에 대한 정책을 바꿨다. 기존에는 1000원 고정 할인이었지만 이제는 비율에 따라 할인을 하여주기로 하였다. 그치만... 이게 벌써 변경이 일어난걸 보니 좋은 객체 지향설계인건 벌써 떠나간거 같다.