[Spring] SOLID 원칙
·
TIL/Spring
좋은 객체 지향 설계의 5가지 원칙 ( SOLID )좋은 객체 지향 설계를 위해서는 5가지 원칙을 지켜야 한다SRP ( Single Responsibility Principle ) 단일책임원칙하나의 클래스는 하나의 "책임"만 가져야 한다사실 하나의 책임이라는 것은 굉장히 모호하다. 그 책임의 크기가 매우 클 수도 있고, 작을 수도 있다SRP를 잘 지켰는지 여부를 따지는 중요한 기준은 "변경"이다. 해당 클래스에서 변경이 일어날 때, 다른 클래스에 파급 효과가 적다면 SRP를 잘 따른 것으로 생각할 수 있다OCP ( Open - Closed Principle ) 개방폐쇄원칙객체 지향 설계에서 핵심이 된다"확장"에는 개방되어 있지만, "변경"에는 폐쇄되어있어야 한다어떻게 가능할까? 확장하려면 기존의 클래스를..
[Spring] 객체 지향 설계와 스프링
·
TIL/Spring
스프링이란?스프링은 여러 기술의 모음집이다.스프링 프레임워크, 스프링 부트, 스프링 데이터, 스프링 세션, 스프링 시큐리티, 스프링 배치, 스프링 클라우드, 스프링 Rest Docs 를 모두 묶어서 스프링이라고 부른다.스프링 프레임워크스프링의 핵심스프링 DI 컨테이너, AOP, 스프링 MVC, 트랜잭션 관리 등과 같은 스프링의 핵심 기술들을 갖고 있다.스프링 부트현재 스프링 프로젝트의 기본스프링 프레임워크의 경우 설정 방법이 매우 복잡하기 때문에 사용하기 까다로운 부분이 존재한다. 따라서 "스프링 프레임워크를 간편하게 사용하기 위한 프레임워크" 가 등장웹 서버를 내장하고 있다스프링과 외부 라이브러리의 의존 관계 자동 설정스프링은 왜 만들어졌을까?스프링이 왜 만들어졌는지, 왜 이런 기술들을 제공하는지 알기..