Download Day 2008

'소프트웨어공학'에 해당되는 글 9건

  1. 2008/07/21 MVC Pattern (1)
  2. 2008/06/23 2008년 6월 23일 날에 있었던 StudioEgo의 일상
  3. 2008/06/09 2008년 6월 8일 날에 있었던 StudioEgo의 일상
  4. 2008/05/20 2008년 5월 19일 날에 있었던 StudioEgo의 일상
  5. 2008/05/19 2008년 5월 18일 날에 있었던 StudioEgo의 일상
  6. 2008/04/23 2008년 4월 22일 날에 있었던 StudioEgo의 일상
  7. 2008/04/21 2008년 4월 20일 날에 있었던 StudioEgo의 일상
  8. 2008/04/11 2008년 4월 10일 날에 있었던 StudioEgo의 일상
  9. 2008/04/10 2008년 4월 9일 날에 있었던 StudioEgo의 일상

MVC Pattern


MVC Pattern, originally uploaded by Dario Santarelli.

MVC(Model, View, Controller)는 게임 개발, 윈도우즈 프로그래밍 개발,웹 어플리케이션 개발등 여러군데서 많이 사용한다.
MVC패턴을 모르고서는 프로그래밍을 할수 없을 정도로 많은 기업이나 오픈소스프로젝트에서 소스의 유지보수를 위해서, 구현의 효율성을 높이기 위해서 많이 쓴다.

MVC 패턴

MVC패턴은 Smalltalk에서 그래픽 인터페이스와 실제로 동작하는 코드를 분리하기 위해 개발되었다 지금은 다른 객체지향언어에서도 널리 사용되는 패턴 중 하나이다.

웹 어플리케이션에서 사용하는 MVC 패턴
MVC 패턴의 기본 개념은 사용자에게 보일 페이지(View)와 데이터 처리(Model), 그리고 이들 상호간의 흐름을 제어(Controller)하는 모듈을 분리하는 것이다. 이렇게 함으로 더 쉽게 웹 애플리케이션을 확장하고 유지, 보수를 할 수 있다.
(여기서는 JAVA Web 개발에 관한 MVC 패턴을 다룬다)

모델(Model)
모델(model)이란 어떠한 동작을 수행하는 코드를 말한다. 표시 형식에 의존하지 않는다. 다시 말해, 사용자에게 어떻게 보여질지에 대해 신경쓰지 않아도 된다. 모델은 순수하게 public 함수로만 이루어진다. 몇몇의 함수들은 사용자의 질의(query)에 대해 상태 정보를 제공하고 나머지 함수들은 상태를 수정하는 함수이다.

웹어플리케이션에서 모델(Model)은 데이터 영역으로 DAO(Data Access Object), DO(Data Object) 등으로 구분해 구현하기도 한다. 하이버네이트, 아이바티스와 같은 퍼시스턴스 프레임워크를 사용하기도 한다. EJB와 연동할 수 있으며 EJB 3.0의 POJO 기반의 퍼시스턴스 API도 있다.


뷰(View)
MVC에서 모델은 여러 개의 뷰(view)를가질 수 있다. 뷰는 모델에게 질의를 하여 모델로 부터 값을 가져와 사용자에게 보여준다.
웹어플리케이션에서 뷰(View)는 JSP를 기본으로 표현 언어, JSTL, 커스텀 태그 라이브러리 등을 함께 사용하며, 모듈화 된 사용자 인터페이스 모델인 JSF(Java Server Faces)도 이용할 수 있다.


컨트롤러(Controller)
MVC의 뷰는 여러 개의 컨트롤러(Controller)를 가지고 있다. 사용자는 컨트롤러를 사용하여 모델의 상태를 바꾼다. 컨트롤러는 모델의 mutator 함수를 호출하여 상태를 바꾼다. 이 때 모델의 상태가 바뀌면 모델은 등록된 뷰에 자신의 상태가 바뀌었다는 것을 알리고 뷰는 거기에 맞게 사용자에게 모델의 상태를 보여 준다.
웹어플리케이션에서 컨트롤러(Controller)는 MVC 패턴의 중심이 되는 부분으로, 직접 구현하거나 구현된 솔루션을 이용할 수 있다. 대표적으로 스트러츠 프레임워크(struts Framework)나 스프링 프레임워크(Spring Framework)가 있다.

이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License

'컴퓨터 > 프로그래밍' 카테고리의 다른 글

MVC Pattern  (1) 2008/07/21
내가 보아야 할 Ruby 관련 책들  (2) 2008/05/14
Ruby를 맛봅시다.  (2) 2008/04/30
10.Raw Socket  (0) 2008/04/29

블로그코리아에 블UP하기
Trackback 0 Comment 1

Trackback : http://blog.studioego.info/trackback/306

  1. 씅//ㅋ 2008/07/21 01:59 address edit & del reply

    안녕하세요^^; 홍익대 영어캠프로 검색햇더니..........여차저차해서 여기까지 왓네요
    ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
    일기...............재밋게 읽다 갑니당 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ
    참고로 전 7시간뒤면 캠프가네여 ㅠㅠ ㅋㅋ
    영어캠프에대해 궁금햇는데 좀 알고 가네여 ㅋㅋㅋㅋㅋㅋ

2008년 6월 23일 날에 있었던 StudioEgo의 일상

  • 기말고사 문제를 풀고나서 채점 시작2008-06-20 13:56:22
  • 플젝 2개 마감이라서 밤샘모드~2008-06-22 15:41:45
  • 밤에도 일하는 사회가 나오는 음료수인 'Ya'를 먹었습니다. 먹으니깐 잠이 다 깨더군요. (프로젝트(1) 발표는 녹초가 된 상태에서 할 것같음. ㅠㅠ)(밤에도일하는사회 Ya 프로젝트 소프트웨어공학 프로젝트(1) 플젝)2008-06-22 23:59:26
  • 소프트웨어공학 과제를 해보면서 항상 느끼는점. “사공이 많으면 산으로 간다” 정말 속담이 딱딱 맞을 정도이다. 항상 산으로 향하는 과제들을 보면서 한숨이 나온다. (다른 사람도 똑같다. 회사에서 업무를 직접 맞딱뜨려야 소프트웨어공학을 제대로 이해할듯 하다.)(소프트웨어공학 소공 SE SoftwareEngineering 사공이많으면산으로간다 밤샘과제 플젝 프로젝트)2008-06-23 02:40:16
  • 밤샘 코딩하다 피곤했나 보다. “'==' : 의미 없는 연산자입니다. '='을(를) 사용하려고 했습니까?” 이런 컴파일 경고문을 보니 머리가 띵해졌음을 느꼈다.( 소프트웨어공학 소공 SE SoftwareEngineering 사공이많으면산으로간다 밤샘과제 플젝 프로젝트 )2008-06-23 05:01:51

이 글은 StudioEgo님의 2008년 6월 20일에서 2008년 6월 22일까지의 미투데이 내용입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License

블로그코리아에 블UP하기
Trackback 0 Comment 0

Trackback : http://blog.studioego.info/trackback/253

2008년 6월 8일 날에 있었던 StudioEgo의 일상

  • 2개의 시험과 프로젝트 발표의 압박이 너무 크다. 소프트웨어공학이나 컴퓨터구조나 만만한 과목도 아니고 시험범위도 300페이지가 넘어버리고 응용데이터베이스 과제로 낸 정보검색 프로젝트는 STL 사용해서 대충했다만 제대로 했는지가 의심스럽다.(시험 과제 프로젝트 STL C++ 소프트웨어공학 컴퓨터구조 SE CA)2008-06-08 18:23:47

이 글은 StudioEgo님의 2008년 6월 8일미투데이 내용입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License

블로그코리아에 블UP하기
Trackback 0 Comment 0

Trackback : http://blog.studioego.info/trackback/213

2008년 5월 19일 날에 있었던 StudioEgo의 일상

  • 소프트웨어공학과제를 하다 제대로 시간 버렸다. -_-;; 이렇게 시간 버려서 학점 어떻게 나올건지 걱정이 된다. -_ㅠ 괜히 밤샜다는 생각만 든다. (소프트웨어공학 소공 SE SoftwareEngineering) 2008-05-19 03:18:48

이 글은 sungdh86님의 2008년 5월 19일미투데이 내용입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License

블로그코리아에 블UP하기
Trackback 0 Comment 0

Trackback : http://blog.studioego.info/trackback/160

2008년 5월 18일 날에 있었던 StudioEgo의 일상

  • 이번에 새로운 컴퓨터에 서버설치할때에 Debian을 깔까? 아님 Ubuntu를 깔지 고민이다. (이번에 Ubuntu 8.04 CD가 목요일에 도착하였다 ㅎㅎ) (linux debian ubuntu server install) 2008-05-18 00:28:49
  • 소프트웨어공학과제때문에 일요일인데도 학교 왔다. 학교 도착하니까 다들 아는 선배들 소프트웨어공학과제한다고 난리났음. (나도 난리났다만 -_-;;) (소프트웨어공학 소공 SE SoftwareEngineering) 2008-05-18 16:26:58

이 글은 sungdh86님의 2008년 5월 18일미투데이 내용입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License

블로그코리아에 블UP하기
Trackback 0 Comment 0

Trackback : http://blog.studioego.info/trackback/159

2008년 4월 22일 날에 있었던 StudioEgo의 일상

  • 밤을 샌 것 같은데 공부한 것이 공부한것 같지 않다. (밤샘의 휴유증) 하루에 2과목씩 그것도 소프트웨어공학과 확률이론을 같이 공부한다는 것은 힘든것 같다. 각 과목마다 암기량도 만만치 않는데다 이해하는 것도 어렵다. ㅠㅠ (공부 밤샘 시험 중간고사 확률및통계 소프트웨어공학 웹사이트기획 컴퓨터구조) 2008-04-22 07:07:45
  • 드디어 2일에 4개씩 보는 시험을 다 치렀다. 하루에 2과목씩 보니까 체력이 급속도로 떨어졌다. 밤새서 공부하였는데도 공부한 것 같지 않게 되는 시험문제들을 풀때마다 한숨이 푹푹 나온다. 이제 금요일에 보는 응용데이터베이스시험만 남았다. :) (중간고사 응용데이터베이스 데이터베이스 공부 밤샘 시험) 2008-04-22 23:52:16
  • 탄생화는 동백<빨강>(Camellia). 꽃말은 고결한 이성. 저는 고결한 이성을 가진 고상한(?) 사람입니다. (탄생화 꽃말 동백 꽃 동백꽃 이성 고결한이성) 2008-04-22 23:55:36

이 글은 sungdh86님의 2008년 4월 22일미투데이 내용입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License

블로그코리아에 블UP하기
Trackback 0 Comment 0

Trackback : http://blog.studioego.info/trackback/122

2008년 4월 20일 날에 있었던 StudioEgo의 일상

  • 정보처리기사 시험 찍고 나오다. 시험보는데 졸려 미치는 줄 알았음 -_-;; 기출문제 안보고 시험쳤더니 머리가 어질. 이제 중간고사를 준비해야겠음. (정보처리기사 실시 필답형고사 시험) 2008-04-20 12:33:03
  • 주위선배님들이 화요일에 시험보는 소프트웨어공학공부하는걸 볼때마다 겁이난다(월요일시험2개) (me2sms) 2008-04-20 17:14:27
  • 중간고사 시험 : 웹사이트기획, 컴퓨터구조(1) (21일), 확률 및 통계, 소프트웨어공학 (22일), 응용데이터베이스(25일). 의외로 시험과목 많지 않구나 -_-;; (중간고사 고사 시험 중간시험 웹사이트기획 컴퓨터구조 확률및통계 소프트웨어공학 응용데이터베이스 Website 웹기획 CA ComputerArchitecture 확통 DB SE SoftwareEngineering Database) 2008-04-20 19:15:33

이 글은 sungdh86님의 2008년 4월 20일미투데이 내용입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License

블로그코리아에 블UP하기
Trackback 0 Comment 0

Trackback : http://blog.studioego.info/trackback/119

2008년 4월 10일 날에 있었던 StudioEgo의 일상