메일로 온 질문에 답변을 공유합니다.


====

Q:

좋은 강의 감사드립니다.

강의 내용을 정리하면서 몇가지 질문이 생겼습니다.


1. Junit 을 사용할 테스트는 무조건 return 구문과 출력 구문을 만들어야 하나요?

return 값이 void 인 경우는 어떻게 하나요?


2. 예전 책을 보면 tomcat을 컨테이너라고 하고

웹서버와 구분을 합니다. 웹서버 아파치와 구분을 하는데

정확히 웹서버와 was, 컨테이너의 차이를 모르겠습니다.


동적인 페이지를 처리하기위해 was가 필요하다고 하니

was가 웹서버의 역할까지 포함하고 있는 것이라고 생각했는데

was와 웹서버를 같이 사용하는 경우도 있고...개념이 헷갈립니다.


3. Spring에서 service와 controller의 차이가 어떤 것인지 알고 싶습니다.

실제로 서비스에서 하는 행위를 컨트롤러 단에서 해도 상관이 없다고 생각됩니다.


4. Spring과 스트럭쳐를 같이 사용할 이유가 있는지 알고 싶습니다.

처음 공부할 때 두가지를 같이 병행하는데 역시 spring만으로 구현이 가능한 것 같습니다.


마지막으로 가능하다면 강의에 사용하셨던 구글 문서 주소를 다시 알려주셨으면 합니다.

이번에 윈도우 8.1을 써본다고 하다가 그만 즐겨찾기를 지워버리는 실수를 해서....

단순히 업데이트로 생각했다가 많은 자료가 사라져 버렸습니다.

구글 크롬에 북마크는 정리가 끝난 사이트만 관리하다보니 이런 불상사가 생겼네요.


더운 날이 계속되는 여름입니다.

건강관리에 유의하시기 바랍니다.

다시 한번 좋은 강좌와 okjsp에 많은 도움에 감사드립니다.


A:

안녕하세요.

답변 드리겠습니다.


1. void 인 함수의 역할이 무엇인지, 상태값을 변화시킨다면 그리고 그것을 검증해야 한다면, 

테스트를 위해, 상태값을 읽어오는 함수를 통해서 테스트할 수 있을 것입니다.


2. 웹서버는 html, css, js, image들을 서비스하는 아파치 웹서버 (http://httpd.apache.org), 

IIS 등이 있습니다.  WAS는 Web Application Server의 약자이고, JSP/Servlet을 실행할 수 있는

서블릿 컨테이너와 EJB가 실행되는 EJB 컨테이너로 구성되어 있습니다.

초기에는 WAS의 정적인 파일 처리 능력이 낮기 때문에 웹서버와 연결해서 사용했는데, 

(mod_jk, ajp 같은 커넥터류) 요즘은 WAS 자체에서 http 서버의 역할을 감당할 만한 성능이 나와서

단독으로 웹서버의 역할까지 커버하는 경우가 많습니다.


3. 강의 때도 말씀드렸는데, request, response 같은 객체와 분리된 비즈로직이 Service에서 실행됩니다.

저 두 파라미터가 Service에 없다는 것은 Service를 WAS와 분리해서 단독으로 실행할 수 있게 됩니다.

Controller의 역할은 Model과 View를 연결해 준다는 본연의 역할이 있지요.

http://csl.ensm-douai.fr/noury/20 MVC song인데, 동영상과 가사를 함께 생각해보시면 도움이 되실 것입니다.


4. 스트럿츠를 스프링과 연계시키는 이유는 제 생각으로는 당시 스트럿츠로 만들어진 시스템이 많았고,

스트럿츠 개발자들이 많았기 때문이 아닌가 생각됩니다.

지금은 말씀하신대로 스프링MVC로 모두 커버 가능합니다.


감사합니다.


구글문서 주소는 http://bit.ly/eclipse201306 입니다.


신기술들이 마구마구 쏟아져 나옵니다. 개발자로 살아간다는 것, 아니 컴퓨터를 이용해서 생계를 이어가는 것 자체가 매우 피곤한 일입니다. 6개월 지나면 2배 빠른 컴퓨터를 반값에 산다는 무어의 법칙 때문이기도 하고, 유토피아를 만들만한 컴퓨터 언어나 소프트웨어의 완전판이 아직 없기 때문이죠.

현재의 컴퓨터 업계를 이끌어 가는 기술과 기술 커뮤니티들을 보면 한 가지 공통점이 있습니다. 기술의 대표가 있기 때문이죠. 컴퓨터 웹 업계에서 몇 년의 경험이 있다면 다음 기술을 얘기할 때 떠오르는 사람이 있을 것입니다.

  • ASP
  • zeroboard
  • phpschool
  • Devpia
  • kldp/linux
  • javastudy
  • javaservice
  • struts
  • spring
  • agile/xp
전 빠져도 되겠죠. ^^;
제 생각과 같은 지 확인해 보시죠.

  • ASP ( taeyo 김태영 )
  • zeroboard ( nzeo 고영수 )
  • phpschool ( 정진호 )
  • Devpia ( 최우인 )
  • kldp ( 권순선 )
  • javastudy ( 조대협 )
  • javaservice ( 이원영 )
  • struts ( 박재성 )
  • spring ( 박재성, 이일민, 안영회, 백기선 )
  • agile/xp ( 김창준 )
  • python ( perky 장혜식 )
  • MINA ( 이희승 )
뭐, 이의를 제기하시거나 추가를 원하시면 말씀해주세요. 제 경험상 주관적인 것이니까요.

인간 본성에 미래에 대한 불확실성이 있기 때문에 누군가 선례가 될 만한 존재를 발견하게 되면 조금이나마 안심하고 따라갈 수 있습니다. 위에 열거한 분들의 공통점은 상당히 오랜 기간 기술의 장을 만들고 다듬고 사람들과 교류하고 했던 분들입니다. 두 글자로 줄이면 "열정"이라고 할 수 있죠.

새로운 기술을 사람들이 환영하는 이유는 새롭기 때문입니다. 하지만 이 기술들이 오래가기 위해서는 스타 플레이어가 필요합니다. 반짝 스타가 있을 수 있지만, 그보다 더 중요한 것은 얼마나 기술이라는 플랫폼 위에서 오랫동안 사람들에게 존재감이 있을 수 있느냐 입니다.

3년만 버티면 동종 기술의 사람들에게 인정을 받기 시작합니다. 5년을 버티면 전문가 소리를 듣기 시작합니다. 10년을 버티면 전설이 되어버립니다. 수많은 추종자들을 이끌고 말이죠.

요약하면 이렇습니다.
커뮤니티? "일단 시작했으면 버텨라" 입니다.

두 달 전 감수를 했던 책이 드디어 나왔습니다.
http://www.hanb.co.kr/look.php?isbn=978-89-7914-498-7

사용자 삽입 이미지

가천길대학 황희정 교수님이 저자이시고 대학교재용으로 만든 책입니다.
출판사는 한빛미디어 출판사입니다.
초판의 내용에 JSP 스펙이 업그레이드 되어서 설명이 되고, IDE로 이클립스와 Web Framework로 Struts를 추가했습니다.
감수자는 1판과 같이 개정판에서도 저를 써주셨습니다.
http://www.hanb.co.kr/look.php?isbn=978-89-7914-498-7 
에서 구입하실 수 있습니다.

+ Recent posts