[Spring Framework] 나만의 스프링 프레임워크 만들기 - 2 (BeanDefinition)
·
cs/Spring Framework 구현
프로젝트 생성에 이어서 이번에는 BeanDefinition의 개념에 대해 다뤄볼 것이다.BeanDefinition를 직역하면 "빈 정의"이다.그렇다면 여기에서 사용하는 "빈"이란 무엇일까?빈의 개념부터 짚고 넘어가보자. 빈(Bean)빈(Bean) : "스프링 컨테이너가 관리하는 자바 객체"를 의미한다. 그냥 객체랑 다른 점자바 객체와 빈을 코드로 비교해보자면 아래와 같다.// 그냥 객체 — 내가 직접 만들고 직접 관리HelloService a = new HelloService();a.hello();여기에서 a는 내가 new로 만들고, 내가 다 쓰고 나면 알아서 가비지 컬렉션이 된다.생성과 소멸을 우리가 책임진다. // 빈 — 컨테이너가 만들고 컨테이너가 관리ApplicationContext conte..
[Spring Framework] 나만의 스프링 프레임워크 만들기 - 1 (프로젝트 생성)
·
cs/Spring Framework 구현
취업 준비를 하면서 혼자 톰캣도 직접 자바 코드로 짜보고 (블로그에 작성하진 않았지만..) 알고리즘 문제도 종종 풀고 있다.하지만 어떤 프로젝트를 해야할지 너무 막막했지만 이전에 톰캣을 직접 구현해본 것처럼 이번에는 자바 스프링 프레임워크를 구현해보고 싶었다. 사실 이미 잘 만들어져있는 프레임워크나 소스들을 왜 굳이 내가 하나씩 다시 구현할까 싶겠지만 나는 주변 사람들한테 cs 관련 개념이 매우 중요하다는 사실을 알게 되었고, 나 자신도 이에 대해 생각해봤을 때 부족하다는 사실을 누구보다 잘 알고 있었다.그래서 cs공부를 제대로 해보고자 이러한 개념들을 좀 딥하게 파보려고 한다.우선 클로드를 활용하여 전체적인 로드맵을 잡았다 전체 로드맵프로젝트 생성 & 핵심 어노테이션BeanDefinition — 빈의 ..