TurboGears-개요

웹 프레임 워크 란?

웹 애플리케이션 프레임 워크 또는 단순히 웹 프레임 워크는 라이브러리 및 모듈 모음을 나타내며,이를 통해 웹 애플리케이션 개발자는 프로토콜, 스레드 관리 등과 같은 낮은 수준의 세부 정보에 대해 신경 쓰지 않고도 애플리케이션을 작성할 수 있습니다.

TurboGears는 무엇입니까?

TurboGears는 Python으로 작성된 웹 애플리케이션 프레임 워크입니다. 원래 Kevin Dangoor가 2005 년에 만든 최신 버전 TurboGears (버전 2.3.7)는 Mark Ramm과 Florent Aide가 이끄는 개발자 그룹이 관리합니다.

TurboGears는 Rails, Django, Struts 등과 같은 대부분의 최신 웹 프레임 워크처럼 Model-View-Controller 패러다임을 따릅니다.

모델보기 컨트롤러

MVC는 웹 애플리케이션 개발을위한 소프트웨어 디자인 패턴입니다. Model View Controller 패턴은 세 부분으로 구성됩니다.

  • Model − 패턴의 가장 낮은 수준은 데이터 유지를 담당합니다.

  • View − 이것은 사용자에게 데이터의 전체 또는 일부를 표시하는 책임이 있습니다.

  • Controller − Model과 View 사이의 상호 작용을 제어하는 ​​소프트웨어 코드.

MVC는 사용자 인터페이스 계층에서 응용 프로그램 논리를 분리하고 문제 분리를 지원하므로 널리 사용됩니다. 여기서 컨트롤러는 애플리케이션에 대한 모든 요청을 수신 한 다음 모델과 함께 작동하여 뷰에 필요한 데이터를 준비합니다. 그런 다음 View는 컨트롤러가 준비한 데이터를 사용하여 최종 표현 가능한 응답을 생성합니다. MVC 추상화는 다음과 같이 그래픽으로 표현할 수 있습니다.

모델

모델은 애플리케이션의 데이터를 관리합니다. 뷰의 요청에 응답하고 컨트롤러의 명령에 응답하여 자체 업데이트합니다.

보기

데이터를 표시하기로 한 컨트롤러의 결정에 의해 트리거되는 특정 형식의 데이터 표시. AJAX 기술과 쉽게 통합 할 수있는 스크립트 기반 템플릿 시스템입니다.

컨트롤러

컨트롤러는 사용자 입력에 응답하고 데이터 모델 개체에 대한 상호 작용을 수행합니다. 컨트롤러는 입력을 받고 입력을 확인한 다음 데이터 모델의 상태를 수정하는 비즈니스 작업을 수행합니다.

TurboGears는 많은 라이브러리와 도구를 기반으로 구축되었습니다. 이러한 도구는 TurboGears의 다른 버전간에 변경되었습니다. 현재 버전 (ver 2.3.7)의 구성 요소는 다음과 같습니다.

SQLAlchemy

Python 코드에 대한 ORM (Object Relationship Mapping)을 제공하는 오픈 소스 SQL 키트입니다.

겐시

이 템플릿 엔진은 TG 애플리케이션의 프런트 엔드를 구성하는 데 사용됩니다. 웹 템플릿 시스템은 동적 웹 페이지를 렌더링하기 위해 템플릿을 특정 데이터 소스와 결합합니다.

ToscaWidgets

서버 측 컨트롤을 사용하여 HTML 양식을 생성하기위한 위젯 라이브러리입니다. Tosca는 JavaScript 위젯 및 툴킷과 연결하는 미들웨어 역할도합니다.

변속 장치

프로젝트 및 서버 TurboGears 애플리케이션을 관리하기위한 일련의 명령을 제공합니다. TurboGears 애플리케이션은 모든 WSGI 호환 웹 서버에 배포 할 수 있습니다.

WSGI (Web Server Gateway Interface)는 Python 웹 애플리케이션 개발의 표준으로 채택되었습니다. WSGI는 웹 서버와 웹 응용 프로그램 간의 범용 인터페이스 사양입니다. wsgiref 패키지는 WSGI의 참조 구현입니다. 웹 TurboGears 웹 프레임 워크에 WSGI 지원을 추가하는 데 사용됩니다. 이 패키지의 simple_server 모듈은 WSGI 응용 프로그램을 제공하는 간단한 HTTP 서버를 구현합니다. 이 튜토리얼에서 개발 된 애플리케이션을 테스트하는 데 사용합니다.