웹 애플리케이션 개발 프레임워크와 스트러츠 웹 애플리케이션 기술 변천사를 이해한다

Slides:



Advertisements
Similar presentations
8 장 웹 프로그래밍 언어의 종류. 8.1 문서의 표준화  컴퓨터와 웹을 이용하기 위해서는 컴퓨터가 이 해할 수 있는 언어를 사용.  웹 프로그래밍 언어 (Web Programming Languages) 란 인터넷에 웹 서비스를 제공하거 나 제공받기 위하여 사용하는.
Advertisements

© 2012 인피니티북스 All rights reserved 제 3 장 이클립스 사용하기 Power Java.
팀 명 : 커 피 팀 원 : 정수현 외 4 명 ( 다른 학교분들 ). 목차목차 결과물 시현 및 설명 DB 설계 서비스 흐름도 개발 환경 개발 개요 개발 과정의 기술 개발 동기.
© 2009 IBM Corporation DB2 공모전 교육 계획 IDR Korea
JSP 정리 레퍼런스: JSP 2.1 웹 프로그래밍 (최범균, 가메출판사). 목차 1. Directive - 인코딩 - 오류처리 2. Implicit Object - 쿠키/세션 3. Action Tag 4. JDBC/DBCP 프로그래밍, 파일업로드 5. Expression.
폭력. 폭력이란 무엇인가 우상의 눈물 물리적인 폭력 ( 최기표 ) VS 지능적인 폭력 ( 임형우, 담임선생님 )
01 학습 내용 : 준비학습 : 인터넷 과 웹 01 장. 인터넷 이해하기 02 장. 홈페이지를 만들기 전에.
성공적 취업을 위한 청년취업아카데미 과정 소개 2012 년 4 월 청년취업아카데미 사업 소개 (1) 학부졸업 최소 70% ~100% 취업 최소 70% ~100% 취업 전국 대학의 학부 졸업 후 취업률 약 60% 청년취업아카데미 를 통한 맞춤형 취업교육프로그램.
1 박 2 일 !!! 인천마장초등학교 유수아. 1 박 2 일 멤버 인기순 위 1 위 이승기 2 위 엄태웅 3 위 은지원 4 위 김종민, 이수근 ※인터넷에서 본것이기 때문에 사람에따라 서 다를 수 있다. ※
석관중앙교회 5남전도회 석 관 중 앙 교 회 회원 소식 통권 05-04호 발행일 : 2005년 04월 회 장 : 장진호 집사
- SW_Desing Study Group -
전자상거래 원론: 제18장 전자상거래 수행전략 및 구현.
2009년 IT인재개발원 [연수생 모집요강]
지역사회복지론 1조. 요양보호시설에 대해서 황성국 임재형 이동영
김 형 진 전북대학교 IT응용시스템공학과 웹 서비스 개념과 기술 Chapter 김 형 진 전북대학교 IT응용시스템공학과.
스트러츠 프레임워크 고급 활용 ActionForm 클래스를 이용한 고급 폼 처리기법을 이해한다
웹 페이지.
2011년 봄학기 정보컴퓨터공학부 컴퓨터 소프트웨어 설계 및 실험
I 문학의 개념과 역할 1. 문학의 개념 (1) 언어 예술로서의 문학 (2) 소통 활동으로서의 문학
Web Programming 강의 소개
4. 목적론적 윤리와 의무론적 윤리 01. 경험주의와 이성주의 01. 경험주의와 이성주의 02. 결과론적 윤리와 공리주의
JPetStore 분석자료 1.0 Spring framework 작성자 : 김태완.
컴퓨터 소프트웨어.
팀 명: Con Spirito 팀 원: 경주리 김다정 김소담 최은미
3 MVC모델을 이용한 웹 애플리케이션 작성.
1장. JSP 및 Servlet을 활용한 동적 웹 프로그래밍 소개 제1장.
웹과 PHP를 이해하고 APM 설치 방법을 알아보자!
1강 01장. 웹과 자바.
제3장 이클립스 사용하기.
임베디드 프로그래밍 Lecture #
인터넷 보안 정보 보안 개론 5장.
제 7 장 원격교육의 개발 기술 7주 2강.
Chapter 15 : Struts 프레임워크 1. chapter 15 : Struts 프레임워크 1.
28강. MVC패턴을 이용한 게시판 만들기-II FrontController 만들기 Command 만들기
Web Server Program 구현 - 네트워크 프로그래밍 - 박내갑 ( ) 김상언 ( )
04장 웹 보안: 웹, 그 무한한 가능성과 함께 성장한 해킹
| winglish.com IT 개발본부 2008/01/10
27강. MVC패턴을 이용한 게시판 만들기-I MVC패턴의 이해 전체적인 컴포넌트 설계 DB(DataBase) 생성
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
11강. 스프링 MVC 기초 스프링 MVC 개요 스프링 MVC 구조 살펴보기 resources 폴더
낮과 밤 알아보기 슬기로운 생활 2학년 1학기 4. 빛과 그림자>낮과 밤( 4/8 )
컴퓨터응용과학부 Java Enterprize(DB) 제 7 주
포토서버 (PhotoServer) 제품 소개서
개항기 조선과 동아시아 박 범 한국역사입문Ⅱ.
웹 다이어리 완료보고서 이상제 정영석.
3. Spring 프레임워크의 IoC 컨테이너 개념
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
2장. 홈페이지를 만들기 전에 홈페이지 제작 목적과 제작 과정 홈페이지 제작 관련 기술들 홈페이지 제작에 필요한 준비물
I S WORD 이재근, 김 진수.
웹 2.0 개발자입니까? 2008 고급 XML 프로그래밍.
Spring Framework 플랫폼개발실 김광욱
Chapter 08 : 서블릿 고급3. chapter 08 : 서블릿 고급3 학습목표 서블릿 속성과 Scope ServletContext HttpSession HttpServletRequest Filter API 요청 필터 응답 필터 url-pattern 8 가지.
대구의 부도심 대구의 주요축 동대구 부도심 4조 강민석 / 박성균 / 최은지/ 황재현/김예지.
나는 땅에서 키는 작지만 하늘로부터 재는 키는 이 세상 어느 누구보다도 크다
2015년 디지털컨버전스 청년취업아카데미.
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
JSP와의 첫 만남 간간한 JSP 프로그램을 작성하면서 앞으로 학습에 필요한 과정을 익힌다.
ASP 기초개념 ASP란? ActiveX 서버 컴포넌트.
Introduction to JSP & Servlet
2-5 그림 삽입하기 [그림] 도구 무선 인터넷 프로그래밍.
제 17 장 MVC 모델과 구현 학기 인터넷비즈니스과 강 환수 교수.
Architecture.
XSS 정 여 진.
Model2.
CHAPTER 6 도전! 트위터 웹 앱 개발 Jquery Mobile 5/28/2019.
자료구조 강의소개 정성훈 연락처 : 이메일 : 연구실 : 연219호 연락처 : 이메일 : 홈페이지: 정성훈.
웹 프로그래밍 기술 요약 Yang-Sae Moon Department of Computer Science
스터디카페 예약시스템 조영현.
코 칭 결 과 센 터 구성센터 (모바일) 코칭대상 프로 (엔지니어) 코칭일시
Presentation transcript:

웹 애플리케이션 개발 프레임워크와 스트러츠 웹 애플리케이션 기술 변천사를 이해한다 MVC 패턴과 스트러츠 프레임워크 관계를 이해한다 오픈소스 프레임워크의 종류 및 기능을 이해한다 한빛미디어(주)

웹 애플리케이션 역사와 기술 변천사 Section 01 웹의 시작-1989 단순 HTML만 가능했던 초기의 웹 브라우저 들 www의 탄생 분산된 방대한 양의 연구 결과를 보다 효율적으로 공유하기 위해 CERN의 팀 버너스리 에 의해 고안됨 단순한 텍스트와 이미지로 구성되었으나 의미 있는 텍스트를 다른 정보와 연결하는 하이퍼 텍스트 개념을 통해 획기적인 정보 서비스 제공 HTML Hyper Text Markup Language의 약자로 www 서비스를 구성하기 위한 언어 개발자 관점 인터넷 초기에는 HTML 만 알아도 고급 개발자로 대우 받음 단순 HTML만 가능했던 초기의 웹 브라우저 들

웹 애플리케이션 역사와 기술 변천사 Section 01 보다 많아진 데이터-1994년 www 서비스 확산 연구정보 공유 에서 개인적인 관심사에 대한 서비스로 확대됨 웹 프로그래밍 개념 등장 늘어나는 데이터를 처리하기에는 HTML 만으로는 한계가 있음 기존 프로그램을 웹과 연동하기 위한 기술 등장  CGI 개발자 관점 단순 HTML 에서 C언어와 같은 전통적인 프로그래밍 언어 능력이 요구됨 기술 설명 CGI 프로그램의 입력과 출력을 웹과 연동해주는 기술로, 웹 발전에 중요한 역할을 했다. Perl 일종의 스크립트 언어로, 초기 CGI 구현에 널리 사용되었으나 ASP, PHP, JSP 등의 출현으로 사용이 줄어들었다. 지금은 유닉스에서 서버 관리용 스크립트 언어로 주로 사용된다. C 대표적인 프로그래밍 언어로, 초기 웹은 주로 유닉스 계열의 서버에서 운영되었기에 C언어가 가장 많이 사용되었다.

웹 애플리케이션 역사와 기술 변천사 Section 01 멀티미디어 웹의 시작-1996년 멀티미디어 의 웹 진출 CGI등을 통해 보다 다양한 서비스 제공이 가능 했으나 사용자 인터페이스 기술 부족 자바 애플릿 기술을 시작으로 플래쉬, 쇼크웨이브 등의 기술이 등장 함 인터액티브 웹 기술 개발자 관점 자바는 새로운 언어였고 미래를 예상하기 힘듬 웹 프로그래머와 컨텐츠 제작자의 경계가 나뉘고 이들간의 협업이 점점 어려워짐 기술 설명 자바 가전제품에 적용하던 OAK 프로젝트가 인터넷의 발전과 함께 자바 언어로 발표되었다. 애플릿이라는 기술을 통해 멀티미디어 웹의 미래를 보여주었다 자바스크립트 브라우저에서 서버 연결 없이 사용자와 동적인 상호작용을 가능하게 하는 스크립트 기술로, 지금까지도 널리 사용되고 있다. Ajax 등장과 함께 새로운 생명을 얻었다. 플래시, 쇼크웨이브 웹 브라우저에서 이용되는 작은 용량의 멀티미디어 데이터로, 화려한 애니메이션과 사용자와의 상호작용을 지원하는 콘텐츠 기술이다. 지금은 없어서는 안 될 웹 구현 기술 중 하나이다.

웹 애플리케이션 역사와 기술 변천사 Section 01 닷컴의 전성시대-1999년 닷컴 열풍 새로운 웹 프로그래밍 기술의 등장 전 세계적으로 인터넷 벤처를 일컷는 닷컴기업에 대한 투자 열풍 인력수요도 많아 개발자들도 대접을 받던 시절 새로운 웹 프로그래밍 기술의 등장 자바 기반의 웹 프로그래밍 기술인 서블릿 등장 ASP, PHP 등 서버 스크립트 기술 등장 기존의 CGI 방식 프로그래밍을 급속도로 대체하게 됨 개발자 관점 웹 프로그래머는 이때까지만 해도 매우 주목받는 직업 이었음 새로운 기술이 많이 등장한 관계로 개발자들이 알아야 할 기술이 들었다 데이터베이스, 소프트웨어 아키텍처 등 고급 기술을 가진 전문인력 수요가 늘어남 기술 설명 서블릿 자바 기반의 웹 개발 기술이다. Fast CGI라는 형식을 취하며 빠른 속도와 서버 성능 향상이 가능한 구조를 가진 새로운 웹 개발 언어로 주목을 받았다. 그러나 프로그램에서 콘텐츠(HTML)를 구성해야 하는 한계를 갖고 있었다. ASP/PHP 서버 스크립트로 불리는 기술이다. HTML 페이지 내에서 프로그램 코드를 함께 기술하는 방식이다. 비교적 쉽게 접근할 수 있는 구조여서 많은 웹 프로그래머 양산에 이바지했다. JSP 자바 기반의 서버 스크립트 언어이다. 강력한 성능과 확장성을 무기로 해서 빠른 속도로 ASP/PHP를 대체해나갔다. 현재 가장 대표적인 웹 개발 언어로 자리 잡았다.

웹 애플리케이션 역사와 기술 변천사 Section 01 닷컴의 몰락과 웹 개발 기술의 홍수-2004년 닷컴 의 몰락 벤처 투자의 붐이 가라앉고 인터넷 벤처들도 하나씩 정리가 됨 인터넷과 웹은 더 이상 새로운 기술이 아님 기술의 보편화로 홈페이지 제작은 초등학생도 가능한 시대가 됨 기술의 홍수 J2EE/EJB,닷넷, SOA(Service Oriented Architecture), 웹2.0, Ajax, 스프링, 하이버네이트, 스트러츠,웹워크, 아이바티스, 루비 온 레일즈, 이클립스, 플렉스, RCP 등 셀수 없이 많은 기술이 등장 모든 기술이 반드시 필요한 것은 아니지만 그만큼 개발자가 해야할 일이 많아짐 개발자 관점 개발자에게 있어 어려운 시대가 된 것은 사실임 새로운 기술을 통해 생산성과 유지보수 효율성을 얻을 수 있음 가능한 많이 알고 필요한 것을 취사 선택할 수 있는 능력이 요구됨

MVC패턴과 스트러츠 Section 02 MVC패턴 개요 패턴(Pattern) MVC 패턴 소프트웨어 디자인 패턴 에서 유래한 용어 특정 목적에 대해 검증된 소프트웨어 설계 모델을 말함 동일 목적을 가지는 모든 곳에 동일하게 적용 될 수 있음 MVC 패턴 MVC(Model-View-Controller) 패턴은 스몰토크 라는 객체지향 언어에서 UI 개발을 위해 사용 되었던 방법으로 오랜 동안 그 효율성이 입증되었고 웹 에서도 적합한 것으로 인정 받음 사용자에게 보여질 페이지(View), 데이터처리(Model), 이들 상호간의 흐름제어(Controller) 모듈을 분리해 구현하는 방식

MVC패턴과 스트러츠 Section 02 MVC패턴 구현 방안 MVC패턴 구성요소 MVC패턴 구현 방법 그러나 호환성과 안정성등을 위해 스트러츠와 같은 공인된 프레임워크 사용을 권장 스트러츠 이외에도 많은 MVC패턴 프레임워크가 있으나 스트러츠가 제일 널리 사용됨 영역 구현 방식 모델(Model) 데이터 영역으로 DAO(Data Access Object), DO(Data Object) 등으로 구분해 구현하기도 한다. 하이버네이트, 아이바티스와 같은 퍼시스턴스 프레임워크를 사용하기도 한다. EJB와 연동할 수도 있으며 EJB3.0의 POJO 기반의 Persistence API도 있다. 뷰(View) JSP를 기본으로 표현 언어, JSTL, 커스텀 태그라이브러리 등을 함께 사용하며, 모듈화된 사용자 인터페이스 모델인 JSF(Java Server Faces)도 이용할 수 있다. 컨트롤러(Controller) MVC 패턴의 중심이 되는 부분으로, 직접 구현하거나 구현된 솔루션을 이용할 수 있다. 대표적으로 스트러츠 프레임워크가 있다.

MVC패턴과 스트러츠 Section 02 스트러츠 프레임워크 스트러츠1 이클립스, JBuilder, 넷빈즈 등 대표적인 자바 개발도구 들이 스트러츠를 지원함 다양한 서드 파티 플러그인도 개발되어 있고 개발사례도 많아 문제 발생시 해결이 용이함 스트러츠1 기본구조 web.xml 의 ActionServlet 매핑을 통해 특정 URL(예를들어 *.do) 와 같은 요청에 대해 ActionServlet 이 실행되도록 함 ActionServlet은 컨트롤러의 역할을 수행하며 struts-config.xml 파일을 참조해 사용자 요청을 컨트롤함. HTML 폼과 테이블 매핑을 위한 ActionForm 빈, HTML 폼 내용검증을 위한 Validation Framework, 다국어 처리 등 다양한 부가기능 제공

MVC패턴과 스트러츠 Section 02 스트러츠 프레임워크 스트러츠1 스트러츠의 장점 스트러츠의 단점 단일 진입 서블릿을 사용하여 관리가 용이하다. 확장성을 위주로 만들어졌다. JSTL, JSF 등 표준을 포함하여 버전업되고 있다. 여러 통합 개발환경과 서드 파티에서 스트러츠 개발을 지원하고 있다 스트러츠의 단점 스트러츠 프레임워크를 이해하는 데 시간이 많이 걸린다. 프레임워크를 이용해도 프로그램 코드가 줄어드는 것은 아니다. 스트러츠 태그 라이브러리가 표준은 아니다. 프레임워크의 변경이 잦다. 규모가 커질수록 struts-config.xml이 방대해지고, 무수히 많은 액션 클래스가 생긴다.

MVC패턴과 스트러츠 Section 02 스트러츠 프레임워크 스트러츠2 스트러츠1 VS 스트러츠2 기존 스트러츠1의 여러 문제점을 해결하고, 보다 쉽고 강력한 프레임워크로 개발 기존 스트러츠의 버전 업이 아니라 새롭게 개발된 형식(웹 워크와 통합) 예전에 비해 간결한 구조를 취하고 있으나 많은 부분이 다르므로 호환성에는 다소 문제가 있음(기존 스트러츠1 애플리케이션은 플러그인 형식으로 지원됨) 스트러츠1 VS 스트러츠2 새로운 스트러츠2에 대해서는 아직 제대로 된 서적도 출시되지 않은 상태 새로운 것이 항상 최선의 것은 될 수 없다 현 상황 에서는 스트러츠1이 상당기간 주도적으로 사용될 것으로 보임 스트러츠2 와 함께 영역을 확장하고 있는 스프링 프레임워크 도 주목 됨 스트러츠1을 기본으로 새로운 기술등을 병행 학습하는 것이 바람직함

MVC패턴과 스트러츠 Section 02 스트러츠 프레임워크 스트러츠2 스트러츠1 VS 스트러츠2 기존 스트러츠1의 여러 문제점을 해결하고, 보다 쉽고 강력한 프레임워크로 개발 기존 스트러츠의 버전 업이 아니라 새롭게 개발된 형식(웹 워크와 통합) 예전에 비해 간결한 구조를 취하고 있으나 많은 부분이 다르므로 호환성에는 다소 문제가 있음(기존 스트러츠1 애플리케이션은 플러그인 형식으로 지원됨) 스트러츠1 VS 스트러츠2 새로운 스트러츠2에 대해서는 아직 제대로 된 서적도 출시되지 않은 상태 새로운 것이 항상 최선의 것은 될 수 없다 현 상황 에서는 스트러츠1이 상당기간 주도적으로 사용될 것으로 보임 스트러츠2 와 함께 영역을 확장하고 있는 스프링 프레임워크 도 주목 됨 스트러츠1을 기본으로 새로운 기술등을 병행 학습하는 것이 바람직함

오픈소스 프레임워크 교재 : 568 ~ 575 페이지 자율학습 개요 스트러츠와 함께 개발에 도움이 되는 오픈소스 프레임워크에 대해 알아봄 스프링프레임워크,템플릿 관련 프레임워크, Java Server Faces, 사이트메시 에 대한 기본적인 구조와 적용 분야에 대해 간단하게 알아봄