반응형

전체 글 2934

7. DJANGO 웹 프로젝트 생성하기

7. DJANGO 웹 프로젝트 생성하기 이제 첫번째 Django 프로젝트를 생성해 봅시다. 작업 순서는 프로젝트 생성, 설정파일 수정, 서버 가동, 브라우저로 확인 순서로 진행합니다. 프로젝트 생성은 명령 프롬프트에서 django-admin 명령을 이용합니다. django-admin startproject [프로젝트 명] 프로젝트를 생성하면 프로젝트 폴더에 manage.py 파일과 프로젝트 명과 같은 이름의 하위 폴더가 만들어집니다. 그리고 하위 폴더에 4개의 파이썬 파일이 만들어진 것을 확인할 수 있어요. 이들 파일의 역할과 해야 할 일에 관해서는 웹 애플리케이션 개발에서 다루기로 할게요. 여기에서는 하위 폴더에 있는 settings.py에 설정 내용만 간략하게 변경합시다. settings.py 파일에..

6. DJANGO 설치, MVC 패턴, MVT 패턴

6. DJANGO 설치, MVC 패턴, MVT 패턴 Django는 파이썬의 웹 프레임워크입니다. 여러분도 잘 아시는 것처럼 프레임워크는 소프트웨어를 구성하는 뼈대를 의미합니다. Djanog는 MVT 패턴을 적용하여 효과적으로 웹 애플리케이션을 개발할 수 있는 프레임워크입니다. 사용자와 상호작용하는 애플리케이션을 개발할 때 구조가 견고하면서 유지보수 비용을 줄일 수 있게 유연성있게 개발하려고 합니다. 이를 위해 관리할 데이터와 비지니스 로직과 사용자와 상호작용하는 뷰 사이의 관계를 느슨하게 구조화하여 개발하는 MVC 패턴을 적용하는 것을 권고합니다. MVC 패턴에서 M은 Model의 약어로 관리할 데이터를 의미합니다. 그리고 V는 View의 약어로 사용자와 상호작용하는 뷰를 의미하고 C는 Control의 ..

5. 웹 서버와 웹 애플리케이션 서버

5. 웹 서버와 웹 애플리케이션 서버 시간이 지나면서 효과적으로 서비스하기 위해 하나의 웹 서버를 계층적으로 나누어 웹 서버와 웹 애플리케이션 서버로 나누어 구성하고 있습니다. 웹 서버는 클라이언트로부터 요청을 받아 웹 애플리케이션 서버에 전달하고 웹 애플리케이션 서버로부터 받은 결과를 다시 클라이언트에게 응답하는 역할을 수행합니다. 웹 서버로 잘 알려진 제품으로는 GNU의 아파치, MS 사의 IIS, 구글의 GWS 등이 있습니다. 웹 애플리케이션 서버는 서버 사이드에서 동적인 웹 페이지를 작성해 주는 PERL, PHP, ASP, JSP 등의 웹 언어로 작성한 웹 애플리케이션을 실행하여 결과를 응답하는 역할을 수행합니다. 웹 애플리케이션 서버로는 아파치 톰캣이나 제우스, 웹 스피어 등이 있습니다. 좀 더..

4. 웹 클라이언트 제작 실습

4. 웹 클라이언트 제작 실습 이번에는 직접 웹 클라이언트를 제작해 봅시다. 먼저 파이썬 프로젝트를 하나 생성하고 코드를 편집하세요. import urllib.request urladdr = "http://example.com" request = urllib.request uc = request.urlopen(urladdr) result = uc.read().decode('utf-8') print(result) • import urllib.request 웹 표준 라이브러리에서 웹 클라이언트를 제작할 때 사용하는 모듈 중에 웹 페이지 요청에 관한 부분은 urllib.request를 참조하여 구현합니다. 웹 클라이언트에서 요청할 페이지의 url 주소를 하드 코딩합시다. • urladdr = http://ex..

3. 웹 프로그래밍

3. 웹 프로그래밍시작에 앞서 웹 프로그래밍이 무엇인지 간략히 살펴보고 갑시다.웹 프로그래밍은 웹 서버를 개발하는 것과 웹 클라이언트를 개발하는 것으로 구분할 수 있어요. 이들 웹 서버와 웹 클라이언트 간에는 HTTP(Hiper Text Transport Protocol)을 사용하여 통신을 진행합니다.대표적인 웹 클라이언트에는 인터넷 익스플로러, 크롬, 오페라 등의 웹 브라우저가 있으며 일반적으로 웹 클라이언트라고 하면 웹 브라우저를 말하다보니 웹 프로그래밍이라고 하면 웹 서버 프로그래밍이라고 생각합니다. 하지만 웹 페이지를 크롤링하고 페이지 내용을 분석하는 등의 검색 로봇 및 분석 로봇 등을 만들어 4차 산업에 활용하는 프로그램들은 웹 클라이언트 프로그래밍에 속합니다. 하지만 이 책에서는 웹 클라이언트..

2. PYTHON 설치

2. PYTHON 설치 이번 장은 파이썬 설치를 진행할게요. 먼저, 파이썬 사이트의 다운로드 페이지(로 이동하여 설치할 컴퓨터에 맞는 설치 파일을 다운로드 받으세요. *윈도우즈 버전 다운로드 사이트: https://www.python.org/downloads/windows 다운로드 받은 파일로 설치를 하세요. 이 때 경로를 환경 변수에 자동 추가하기 위해 "Add ... Path" 체크 박스를 선택한 후에 설치하세요. 정상적으로 설치하였는지 확인하려면 명령 프롬프트에서 python 명령이 동작하는지 확인해 보세요. 또한 GUI 환경인 IDLE을 메뉴에 포함된 것을 확인할 수 있을 거예요. 이를 클릭하여 IDLE을 실행해 보세요. 다음은 IDLE을 통해 "Hello, Python!"을 출력하는 예입니다. ..

1. 들어가기에 앞서

1. 들어가기에 앞서 이 책은 Python 언어로 웹 프로그래밍 할 때 효과적으로 웹 서버를 제작할 수 있게 해 주는 Django 프레임워크를 활용하는 방법에 관한 책입니다. 따라서 여러분은 이 책을 통해 Django 프레임워크를 활용하여 웹 서버를 제작하는 방법을 얻을 수 있을 것입니다. 하지만 이 책을 효과적으로 학습하려면 우선 Python 언어의 문법과 HTML 등의 기초적인 웹 지식을 갖고 있어야 합니다. 이 책에서는 Django 프레임워크를 살펴보기 전에 파이썬 웹 표준 라이브러리에 관해 살펴볼 거예요. 파이썬 웹 표준 라이브러리는 어떠한 모듈로 구성하고 있으면 기본적인 모듈에서 제공하는 것을 간략하게 사용하는 방법을 다루고 있어요. Django 프레임워크도 파이썬 웹 표준 라이브러리의 일부입니..

3. 에코 클라이언트 만들기

3. 에코 클라이언트 만들기 앞에서 TCP 에코 서버를 구현했는데 이번에는 TCP 에코 클라이언트를 구현합시다. 2. 에코 서버 만들기 에코 클라이언트도 콘솔 응용프로그램 만들기로 할게요. 먼저 콘솔 응용프로그램(콘솔 앱)을 만드세요. 그리고 에코 클라이언트를 정의할 EchoClient 이름의 클래스를 추가하세요. 여기에서는 EchoClient를 별도의 라이브러리로 제작할 수 있게 클래스의 접근 수준을 public으로 지정할게요. namespace 에코_클라이언트 { public class EchoClient { } } EchoClient도 EchoServer처럼 클라이언트가 연결 시도할 때 필요한 서버의 IP 주소와 포트를 입력인자로 전달하여 개체를 생성합니다. 그리고 이는 비대칭 자동 속성으로 정의한..

2. 에코 서버 만들기

2. 에코 서버 만들기 여기에서는 에코 서버 프로그램을 콘솔 응용프로그램 만들기로 할게요. 먼저 콘솔 응용프로그램(콘솔 앱)을 만드세요. 그리고 에코 서버를 정의할 EchoServer 이름의 클래스를 추가하세요. 여기에서는 EchoServer를 별도의 라이브러리로 제작할 수 있게 클래스의 접근 수준을 public으로 지정할게요. namespace 에코_서버 { public class EchoServer { } } EchoServer 개체는 생성할 때 클라이언트가 연결 시도할 때 필요한 서버의 IP 주소와 포트를 입력인자로 전달합니다. 그리고 이는 비대칭 자동 속성으로 정의한 멤버에 설정하게 작성하세요. public string IPStr { get; private set; } public int Port..

1. TCP 통신 절차

1. TCP 통신 절차 네트워크 프로그래밍에 앞서 간단한 TCP 통신 절차를 소개하기로 할게요. [네트워크 및 보안/TCPIP 프로토콜] TCP 프로토콜을 이용한 통신은 서버와 클라이언트 사이에 연결을 형성한 후에 스트림 방식으로 패킷을 송수신합니다. 스트림 방식의 통신에서는 전송한 패킷의 순서대로 도착하며 패킷 전송 중에 전송이 실패하면 다시 전송하여 신뢰성을 보장하는 방식입니다. TCP 통신에서 서버는 대기 소켓을 생성하고 로컬 소켓 주소로 네트워크 인터페이스와 결합한 후에 백 로그 큐를 설정합니다. 이 상태에서 클라이언트 측의 연결 요청이 오면 이를 수락하여 송수신에 사용할 소켓을 만듭니다. 이 후 송수신 소켓으로 클라이언트와 패킷을 주고 받는 작업을 수행하며 더 이상 송수신할 패킷이 없으면 소켓을..

반응형