Play Framework을 공부하자. 2

Work & Study/TechTalk 2012/04/18 10:29 posted by k16wire
Tutorial을 한단계 한단계 해보고 있습니다. 그러다가 알게된 내용을 정리해 봤습니다.

Play는 Java 소스코드를 직접 읽는다.
Play는 Java 코드에서 변경된 사항이 서버 재시작 없이 바로 반영됩니다. 이게 가능한건 Play가 컴파일된 class파일이 아닌 Java 소스코드를 직접 읽기 때문입니다.(http://www.playframework.org/documentation/1.2.4/guide1) Play가 사용하는 컨테이너는 JBoss Netty(http://www.jboss.org/netty)입니다.(이전에는 아파치 Mina를 사용했습니다.)
http://www.playframework.org/documentation/1.2/releasenotes-1.1

View는 Template 엔진을 사용한다.
JSP의 태그 라이브러리와 유사한 템플릿 태그를 지원하기 때문에 각 페이지들을 가볍게 만들수 있습니다. 이를 위해서 View와 연결되는 Controller는 render() 를 호출합니다.

H2라는 SQL 데이터베이스를 내장하고 있다.
H2는 메모리 방식과 파일 방식을 모두 지원한다.

개발중에 생기는 임시폴더는 형상관리에서 제외한다.
tmp/, modules/, lib/, test-result/, logs/, eclipse/, 이클립스 설정파일은 형상관리에서 제외한다.

JPA로 Hibernate를 사용한다.

Model의 멤버 변수는 public으로 선언한다.
Play가 getter와 setter를 자동으로 생성해주기 때문에 public으로 선언함으로서 발생하는 캡슐화 위험성은 막을수 있다.

run 모드와 test 모드 차이점
'Play test'로 실행하면 웹 브라우저에서 테스트 스위트를 실행할수 있는  test runner 모듈을 실행한다는것만 차이가 날뿐이다.

테스트코드는 Unit Test와 Functional Test로 나눈다.
테스트 코드는 UnitTest나 FunctionalTest를 상속받을수 있고, 테스트 러너는 구분해서 보여준다.

기존 J2EE 개발에 비해서 뭐가 좋은가?

디버깅이 쉽다.
컨테이너를 재시작하지 않아도 되니 구현과 테스트가 실시간으로 가능합니다. 에러 메시지도 거의 정확하여 디버깅이 정말 편해집니다.

테스트가 쉽다.
테스트 코드를 브라우저에서 바로 실행해 볼수가 있습니다. 만약 서버를 매번 재시작해야 한다면 불편하겠지만 그럴필요가 없으니 좋네요. IDE에서 실행하면 되지 않느냐고 반문할수 있습니다만 브라우저에서 실행한다는건 배포가 끝났다는 의미가 됩니다. 개발모드가 아니라 실행모드인 셈이죠.




저작자 표시 비영리 변경 금지

'Work & Study > TechTalk' 카테고리의 다른 글

Play for Java  (0) 2012/04/30
Play 템플릿 엔진과 Razor는 쌍둥이  (0) 2012/04/25
Play Framework을 공부하자. 2  (0) 2012/04/18
Play Framework을 공부하자.  (0) 2012/01/30
Eclipse에서 CDT로 개발하기  (0) 2012/01/25
Lombok 간단 사용기  (0) 2012/01/19