2017년도 KSUG의 스프링캠프에 다녀왔다.
참조 : http://www.springcamp.io/2017
4월 22일 레드티켓을 중고나라에서 양도 받아갈 수 있었다.
Spring을 깊게 공부해볼까라고 생각해본 사람은 한번 쯤 들어봤을 책 '토비의 스프링'의 저자 이일민님도 이번에 발표를 하셨다.
프로그램은 다음과 같이 트랙A, B로 나뉘어 원하는 트랙을 선택할 수 있게 되어있다.
내가 들었던 트랙을 토대로 후기를 작성하겠다.
Booting Spring Data REST - 이경원
선수지식으론 REST API, Spring MVC, JPA나 그외 ORM
우리가 REST API를 구축하기 위해 흔히 Controller에서 Url을 맵핑시켜 필요한 Service를 콜백하고 Service에서 Repository를 호출하여 DB에 접근한다.
다른 방식도 있지만 이게 일반적이라고 생각한다.
Spring Data REST에선 이와 같이 획일적인 CRUD 작업을 Repository Interface 정의만으로 위의 모든 기능을 사용할 수 있다.
- @RepositoryRestResource
- JPA 나 그 외 ORM 필수 사용
- PagingAndSortRepository 상속하여 페이징과 정렬처리
- @RepositoryEventHandler, AbstractRepositoryEventHandler 둘 중하나를 이용하여 전후처리
- HATEOAS를 사용하여 client가 url 만드는 수고를 덜어줌
간단한 CRUD만 필요하다면 상당히 빠른시간에 REST API를 구축할 수 있다.
개인적으로는 사용 필요성을 잘 못느끼겠다.
그 이유는 프로젝트를 하다보면 간단한 CRUD만 하는 작업이 거의 없기때문이다.
물론 Spring Data REST에서 다양한 처리가 가능하게 기능을 제공해주지만 오히려 복잡하다고 생각된다.
이경원님 말씀대로 적용을 할꺼면 의존성이 낮고 기본적인 CRUD만 있는 기능에 먼저 적용해보라는 것이다.
Build the RIGHT thing - Lean & Agile 제품 개발기 - 조인석
사실 난 A트랙의 이일민님의 Async&Spring 을 듣고 싶었으나 PM 역할까지 해야하는 위치때문에 개발방법론에 대해 듣게 되었다.
Pivota 에서의 개발 경험을 토대로 얘기를 해주셨고 Pivotald에선 Product Manager, Product Designer, Developer로 역할군을 나눈다고 한다.
Product Manager - 우리나라의 Project Manager랑 비슷한 개념이나 좀 더 큰 개념이고 상품의 시장가치를 판단하고 전략을 짜는 역할도 포함된다.
Product Designer - UI/UX + 디자인 + 퍼블리싱의 개념이라고 보면 될 것 같다.
Developer - 개발자