제가 후기란걸 처음 적어봐서 어떻게 시작해야 할지 몰라...
아대장님의 후기를 참고 해서 스스슥 적었습니다.
자 그럼 시작을~
4월 17일 이날은 토요일임에도 불구하고 KSUG 세미나를 들으러 가야돼! 라는 생각에 아침 일찍부터 눈이 번쩍 뜨여서 일찍 준비하고 갈 줄 알았지만.. 겨우 시간에 맞춰서 갈수 있었다... (아무래도 일찍 일어나니.. 다시 잠을 자게 되는 역효과가...)
여튼 시간에 겨우 맞춰 도착해 보니 회장님이 앞에 계셔서 쑥쓰럽게 살짝 인사를 드리고 *^^* 학창시절에 잘 앉지도 않았던 앞자리에 착석해서 다소곳이 앉아 세미나가 시작하기를 기다렸다.
세미나 시작과 진행은 KSUG 회장님이신
fupfin님이 맡아서 해주셨는데, 스프링 소개를 언어별 관점에서본 사진으로 재밌게 해주셨다. 참고로 이번 세미나를 참가하면서 사진을 한장도 못찍어서.... 세미나 중간중간의 상황 사진들과 자세한 후기를 보고 싶으신분은
아대장님의 블로그를 참조하시는게 좋겠다.
1.
scalability - scala를 통해 scalability 곱씹어보기 (이동욱)
첫번째 세션은 이동욱님이 scala를 소개해주셨다.
발표를 시작하시면서 KSUG는 Korea Scala User Group이 아니냐면서 숨겨놨던 야망의 한자락을 살포시 보이시며 유쾌한 웃음과 함께 중간중간 손이 말을 안듣는다며 라이브 코딩시에 작은 웃음을 주셨다.
처음부터 scala를 바로 소개하기 보다는 scala를 이해하고 왜 배워야 하는지에 대한 이유를 설명 하셨고, 흰개미집의 자기 유사성과 함께 언어적 표현력 문제를 예로 들어 설명하셨다.
scala는 사용자의 요구와 함께 자라도록 만들어졌고, 모든것이 객체인 순수 객체지향 언어이다. Native to JVM 기반이며 다양한 언어들의 장점을 가져온 언어라 할수 있다.특이한 점은 객체지향과 함수형 언어가 통합되어 있어 두가지를 섞어 쓸수도 있고 각각의 형태로도 쓸수 있다. 그리고 자바에 비해 간결성이 높아서 생산성이 높다는것을 슬라이드를 통해 보여주셨다.
그리고 scala 도 플러그인들을 통해 IDEA에서 개발 가능하다. 동욱님말씀으로는 제일 잘돌아가는 IDEA는 intellij이고 eclipse는 아직 문제가 좀 있다고 하셨다. NetBeans는 사용하지 않으셔서 모른다고 하셨으니.. 사용해보신분은 제보를~ testcase작성은 JUnit을 사용해서 할수 있다.
scala를 짧은 시간안에 단계별로 학습을 시키며 스칼라 제국군을 양성시킨.. 이동욱님에게 감사를~ :)
pt 자료는
여기에 있다.
위의 미흡한 설명으로 성이 안차시는분은
decoder님의 후기를 참조 바란다.
2. 스프링 시큐리티를 이용한 웹 보안 (고종봉)
두번째 세션은 감기 걸리셔서 발표중 기침이 나오더라도 양해 해달라는 고종봉님의 말씀으로 시작했다.
[스프링 시큐리티가 만들어진 흐름은
메일링 리스트에 스프링-기반 보안 구현체는 고려하고 있지 않은지에 대한 질문 -> 2003년 후반 "스프링을 위한 아씨지 시큐리티 시스템" -> 2004년 3월 정식 출범 -> 몇년후 스프링 프레임웍의 공식적인 서브프로젝트가 됨 -> 2007년 후반 공식적으로 스프링 포트폴리오 프로젝트가 되고 "스프링 시큐리티"로 브랜드가 변경됐다.(이 내용 모두 ppt에 나온다... ^^;)]
스프링 시큐리티의 목적은 J2EE기반 엔터프라이즈 소프트웨어 애플리케이션을 위한 종합적인 보안 서비스를 제공하는것이라고 한다.
전체적인 진행은 라이브 코딩과 함께 미리 준비해오신 예제코드를 copy&paste로 진행하셨다. 전 세션의 이동욱님과는 다르시게 손상태가 상당히 좋으셔서 오타로 인한 웃음을 주시지는 않으셨지만. 역시 연습때는 잘되어도 실제 실행하면 오류가 나는 데모 귀신이 여기서도 나타났으니... 이럴때 최고의 방법은 역시 재실행 +_+b 여튼 생각하신데로 안돌아가실때 하신말씀이 생각난다. 회장님(fupin님)이 말씀하신 사람들이 가장좋아하는 강의가 "자 보겠습니다. 하고는 시연이 제대로 안될때.. 어..어.. 당황하는 모습과 함께.. 잠시 쉬겠습니다." 이런 강의를 제일 좋아하신다고 말씀하셨던... ㅋㅋ
진행에 있어 기타 maven이나 자잘한 내용은 옆으로 두고 선택과 집중을 위해 한놈만 패기로?!(ppt 보시면 압니다. ㅋ) 하셔서 스프링 시큐리티에 관한 내용만 집중하셨다. 처음에는 중요한 개념인 인증과 인가에 대해서 군사 보안을 예제로 들어서 설명하셨는데 정말 알기쉽게 알수 있었다. 전체적으로 간단한 페이지를 만드셔서 그 페이지 안에서 스프링 시큐리티가 어떻게 적용이 되는지와 설정파일들을 설정하시는 방법을 실예제를 보여주시면서 자세히 진행하셨다. 실제 활용할수 있는 코드들로 예제를 들어주셨던게 좋았다~ :)
더 자세한 내용은
ppt와 함께 공개하신 소스들을 보시면 될것이다.
3. 스프링 by 봄싹 (백기선)
세번째 세션은 봄싹 프로젝트를 소개하시면서 봄싹 서비스중 한부분의 개발을 보여주시면서 발표하셨다.
봄싹 스터디의 홈페이지가 어떻게 변화를 겪으면서 개발이 되어왔는지에 대한 이야기와 함께 구현한 내용들을 설명하셨는데, 봄싹에 사용한 프레임워크와 봄싹 사이트의 계층형 구조등을 설명하셨다. 그리고 라이브 코딩은 위키에 새로운 글이 올라왔을때 봄싹 사이트에 최신글을 가져오는 기능을 보여주셨다.
기억에 남는건 역시 소녀시대를 이용한 설명이었는데. 태연 = DispatcherServlet, 윤아 = HandlerMapping, 서현 = HandlerAdaper, 유리 = Viewresolver로 설명을 하신후 뒤에 퀴즈로 각각 누가무슨역활을 하는지 맞추시는 분께 책 상품을~ 주셨다. (본인도 맞추고 싶었으나... 사실 소녀시대를 제대로 모르는.. 문명과 동떨어진 극소수중 한명이기 때문에... 앞에 이야기를 듣고 기억하기란.. 붕어같은 기억력으로는 힘들었다.. ㅠㅠ)
퀴즈가 끝난후 누구일까요? 라는 소녀시대중 뒷태만 나온 슬라이드 한장이 나왔는데... 역시 뒷태만 보고도 유리! 라고 하면서 맞추시는 분이 있더라는 ㅋㅋㅋ
라이브 코딩시 JRebel을 쓰셔서 서버 리붓없이 수정이 적용이 되었지만 역시 완벽한 것은 없다고.. 재가동을 시키는 일이 있었다. :)
다음에 시간이 난다면 봄싹 스터디에 참가해 여러가지 배우고 싶은마음이 한가득 들게한 세션이었다.
스프링 by 봄싹 ppt
4. 소프트웨어 개발자로 살기 (안영희)
호주 여행을 갔다오시면서 여지껏 느꼈던 개인적인 생각과 개발쪽에 관한 생각들을 말씀해주신 세션이다.
처음 하신 이야기중 기억에 남는건 여행중 해변에서 10킬로 정도를 마구 뛰셨다는것인데 만약 반대로 뛰셨으면.. 저희는 안영희님을 볼수 없을수도 있었다는 생각이 ^^;;
안영희님도 보통 사람들이 겪는 고민과 마찬가지로 마감에 치여서야 좀 할껄이라는 고민을 많이하셔서 여러가지 방법을 따라서 해보셨다고 하셨지만, 맞는게 없었다고 하십니다. 그러면서 나중에 TDDBE(테스트 주도 개발)을 보며 답을 찾으셨다고 하셨는데 삶에서 이것을 적용해 보고 꾸준히 개선하시면서 지금은 많이 달라지셨다고 하셨다.
팀내에서 작업할때는 너무 크게 작업량을 잡지 않고 하루에 할수 있는 작업량을 팀에 계속 강조를 하셔서 나중에 많이 좋아졌다고 한다. 이것 이외에도 xp방법론에 나오는 몇가지 방법들을 꾸준히 실천하셔서 나중에 팀의 생산력이 상당히 좋아졌는데, 프로젝트가 끝난후에는 다시 흩어져야해 너무 아쉬웠다는 이야기도 기억이..
그리고 제일 머리에 남는것이 사람들은 한 이야기를 들어도 그 이야기에 대한 이해는 각각틀리다는 것이다. 내부에서 일을 할때 연관된 일에 있어 한사람이 다른 사람의 작업에 영향을 주는 일이 생기는데 그 본인은 정작 모른다는 것이다. 그래서 그런 해결방법으로 자신이 보는 자신과 다른사람의 관계도를 각자 그리게 해서 서로 그것을 보며 자신과 상대방의 상관관계를 이해하게 되는게 인상적이었다.
이런것들을 보며 조금씩이라도 계속 꾸준히 변화를 줄수 있어야 조직자체는 물론 나자신이 변한다는걸 다시 한번 상기했다.
이 세션에 관한 ppt자료는 아직 올라오지 않은거 같다.
5. 엔터프라이즈 환경에서 Maven 활용 전략 (박재성)
마지막 세션은 자바지기라는 닉으로 활동하시고 계신 박재성님이 maven 활용에 대해 강의해 주셨다.
전에 박재성님이 내신 책을 보면서 maven을 써볼꺼라고 삽질한 기억이 나서 더욱더 기대하고 있었던 세션이었다.
maven이란 간단히 말해 프로젝트 관리툴이다. 프로젝트 환경 설정을 새로 설치하거나 바뀔때 마다 해야할일을 자동적으로 해주는 고마운 툴이다 :)
처음 시작하실때 딱 한시간만 하시겠다고 하시며 타이머를 맞추시고 자신이 maven에 대해 기본적인걸 알고 있다고 생각하는 사람은 처음에는 자도 된다고 그러시면서 나중에 어려운 내용할때 일어나라고 하셨다. ㅋ
(나는 역시 잘 몰라 처음부터 들었다 ^^;)
처음에는 ant vs maven, jdbc vs spring jdbc 비교를 하시며 설명을 하시면서 진행을 하셨다. 예전 n모사 다니실때의 프로젝트 경험담도 잠깐 해주시구, 이 세션도 앞의 세션들과 비슷하게 라이브 코딩으로 진행됐다.
Dependent Library관리 기능이나, 모든 프로젝트의 빌드 프로세스를 일관되게 가져갈수 있는것, Maven의 많은 플러그인과 eclipse기반으로 프로젝트도 진행하기 쉽게 되어있다(m2eclipse등). archetype을 이용한 프로젝트 생성을 하기 쉽고, archetype:generate로 생성을 하면 eclipse안에 pom.xml이 생기는데 이것은 super-pom을 상속받고 있어서 설정하기 쉽다.
마지막에는 전사 표준화에 대한 이야기를 짤막하게 해주셨다.
그리고 박재성님도 KMUG의 창설도 고려하고 있으시다고 하시며 곧 있으면 maven책도 나오니 관심을 가져달고 하셨다~ (네 전 나오면 사겠습니다 +_+ )
maven 설정과 사용에 대한 자세한 것들은
kjunine님의 블로그나
박재성님의 자바필수유틸리티를 보기 바란다.
상당히 미흡한 후기를 읽어주셔서 감사합니다~ 좀더 자세히 적고 싶은데 아대장님이 워낙 잘적어주시고 제가 개발을 안한지 거의 1년이 다되어가는데다 다시 공부를 하는중이라... 아는것이 없어놔서.. 이렇게 날림으로 적습니다.
요즘들어 드는 생각이 먼가 공부를 하거나 배우러 갔을때 글을 적어놔야 한다는 생각이 들어서 ksug 후기를 시작으로 적는데 과연 잘하는 것인지는... ^^;