'framework'에 해당되는 글 2건

  1. 2009.01.11 [spring] spring framework란?
  2. 2009.01.11 [spring] spring 프레임워크 다시보기

일단 framework란 무엇인가?
전혀 모르는 비전공자에게 설명을 한다고 생각하고 설명을 해보겠습니다.

신입사원: "프레임워크가 뭔데요?"

시난: "벽돌집을 짓는다고 했을 때, 벽돌을 쌓는 규칙이랄까? 무작정 쌓는 방법도 있지만 지그재그로 시멘트 칠해서 쌓는 방법도 있고.. 그런게 프레임워크라고 생각하면 될거야."


신입사원: "라이브러리는 뭐죠?"

시난: "프레임워크랑 라이브러리를 헷깔리는 경우가 있는데.. 라이브러리는 하나의 유용한 클래스 집합이라고 생각하면 돼.
예를 들어 XML을 처리해주는 라이브러리가 있다고 하면, 네가 짠 클래스에서 그 라이브러리를 사용하여 XML을 만들어낼 수도 있고 XML을 파싱해서 쓸 수도 있지.
네가 직접 짤 수도 있겠지만, 잘 찾아보면 거의 없는게 없어. 라이브러리는 방대하지!!
프레임워크는 라이브러리를 포함하기도 하고!"


신입사원: "스프링 프레임워크는 뭐예요?"

시난: "스프링 프레임워크는.. 기존의 MVC 모델을 알지? 그것도 포함하고, 사실 깊게 들어가면 좀 복잡하고 어려울 수도 있는데 쉽게 말해서 아주 편하게 이 MVC 패턴도 쓰고.. 로깅이나 트랜잭션 처리, 각종 ORM 이랑 연동도 할 수 있는 만능 키트!?"


신입사원: "스프링 프레임워크의 다양한 기능에 대해 알려주세요."

시난: "일단.. MVC 패턴을 xml 설정으로 정의가 가능해. 기존의 서블릿 프로그래밍을 했을 때 보면 xml 에서 서블릿 등록하고 url 적고 그런거 하잖아? 그런 설정도 있고 스프링 자체의 xml 설정을 통해 객체의 생성에서부터 소멸까지 모두 관리할 수 있어. xml에서 Foo foo = new Foo() 같은 것들을 다 처리해줘서 인스턴스의 생성을 전담하고, 필요한 객체들에 잘 넣어주기도 하고.."
시난: "또, AOP(Aspect Oriented Programming)이라는 걸 지원해서 메소드의 시작과 끝 부분을 후킹해서 다른 메소드를 실행할 수도 있지. 시작과 끝 부분에 소스에 직접 타이핑해서 넣는게 아니라 바이너리 코드 사이에 직접 넣는 개념이야. 이러면 일일히 소스코드 수정을 하지 않고 트랜잭션이나 로깅 처리 등을 전부 설정할 수 있지."
시난: "xml 설정을 처음에 보면 좀 어지러울 수도 있는데, 자바 5.0의 어노테이션을 사용해서 직접 클래스에 정의해서 xml을 간략화 할 수도 있고.."
시난: "그리고 JDBC를 사용할 수도 있지만 다른 훌륭한 프레임워크(iBATIS나 Hibernate, JPA, JDO 등)을 쉽게 연동할 수도 있어. 정말 최고지!!"
시난: "그리고.. 메일이나 스케쥴링을 쉽게 정의할 수도 있어서. 참 편해!! 직접 해보는게 제일 좋아!!"

(헉헉.. 힘들군요;; )

Posted by 시난

댓글을 달아 주세요


스프링 프레임워크를 사용하는 분이 상당히 많을 것이라 생각하는데
이 '다시보기'를 통해 정리를 해볼까 합니다.

그 동안 제가 무심코 사용했던 기초적인 부분들도 짚고 넘어가고
혹은 어려워보이거나 쓸일이 없어서 넘어갔던 부분도 살펴볼까 합니다.

그럼.. 시작!!!
Posted by 시난
TAG framework

댓글을 달아 주세요