[웹프로그래밍]
1. 가상환경
- 무엇인가?
: 가상 환경은 독립된 공간을 만들어주는 기능
- 파이썬에서 가상환경은?
: 하나의 PC에서 프로젝트 별로 독립된 파이썬 실행 환경(runtime/interpreter)을 사용할 수 있도록 해줌.
- 왜 필요할까?
: 프로젝트를 여러개 개발할 때는 패키지의 버전 문제 발생하지 않도록 하기 위해
- 어떻게 만들까?
pip install venvs
cd \
mkdir venvs
cd venvs
python -m venv 가상환경이름
cd 가상환경이름/Scripts
activate
deactivate
2. 프레임워크
- 무엇인지?
프로그래밍에서 특정 운영 체제를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리 모임
- 어떤 것들이 있는지?
스트럿츠 프레임워크 (STRUTS Framework)
자바기반의 JSP만을 위한 프레임워크로, 다양한 운영체제에서 활용할 수 있으며, 오픈소스
*자바기반의 JSP만을 위한 프레임워크
스프링 프레임워크 (Spring Framework)
스프링프레임워크란 엔터프라이즈급 애플리케이션 개발에 필요로하는 경량형 프레임워크
앵귤러 JS( AngularJS)
자바스크립트 기반의 프레임워크
장고 프레임워크 (Django Framework)
장고프레임워크란 파이썬으로 작성된 오픈 소스 웹 애플리케이션 프레임워크로 쉽고 빠르게 웹사이트를 개발
*Django는 WAS를 포함하고 있음.
- 왜 필요한지?
프레임워크는 기업 프로젝트에 있어 편리한 유지보수, 개발 생산성 증대를 위해 필수적인 기술
(작업 속도를 크게 높이고 단순화 할 수 있으며 반응이 좋고 매력적인 웹앱을 만들 수 있다는 장점이 있음.)
3. 웹 서버, 웹 어플리케이션 서버(WAS)
- 무엇인지?
1) 웹 서버: 주로 웹 브라우저에서의 하이퍼텍스트 전송 프로토콜(HTTP) 요청에 응답하여
정적 웹 콘텐츠(예: HTML 페이지, 파일, 이미지, 동영상)를 제공.
- 웹서버는 HTTP 기반으로 동작.
- 정적 리소스와 기타 부가기능 제공. (정적(파일) HTML, CSS, JS, 이미지, 영상 등)
- 서버는 NGINX와 APACHE 주로 사용.
2) WAS (웹 애플리케이션 서버) : 웹 콘텐츠를 제공할 수도 있지만,
주요 작업은 일반 사용자 클라이언트와 서버측 애플리케이션 코드 간의 상호작용을 통해
트랜잭션 결과, 의사결정 지원 또는 실시간 분석 등의 동적 콘텐츠를 생성하고 제공하는 것.
애플리케이션 서버의 클라이언트는 애플리케이션의 일반 사용자 UI, 웹 브라우저 또는 모바일 앱일 수 있으며,
클라이언트-서버 상호작용은 임의의 수의 통신 프로토콜들을 통해 발생할 수 있음.
- HTTP 기반으로 동작.
- 웹 서버 기능에 정적 리소스 포함하여 제공 가능.
- 프로그램 코드를 실행해서 애플리케이션 로직 수행.
- 동적 HTML, HTTP API(JSON)를 사용.
- 서블릿, JSP, 스프링 MVC를 사용할 수 있음.
- 서버로는 톰캣(Tomcat) Jetty, Undertow이 있음.
'[Back-End] django+bootstrap' 카테고리의 다른 글
서버 개발 환경 구축 (Django 앱 생성, 실행하기) (0) | 2022.06.10 |
---|