본문 바로가기

HTTP4

[C/C++ 프로그래밍 : 중급] 14. 네트워크 프로그래밍 Chapter 14. 네트워크 프로그래밍 네트워크 프로그래밍은 컴퓨터들이 서로 정보를 주고받는 통신 과정을 소프트웨어로 구현하는 것입니다. C/C++ 언어를 통해 네트워크 프로그래밍의 중요성을 이해하고, 주요 네트워크 프로토콜과 소켓 프로그래밍의 기초를 배웁니다. 또한, 실제 네트워크 프로그래밍 예제를 통해 이론을 실제로 적용해 봅니다. 이어서 네트워크 보안의 개념을 배우고, C/C++을 이용하여 SSL/TLS를 사용하는 방법을 실습합니다. 마지막으로, 고급 네트워크 프로그래밍에 대해서도 간략히 알아보며, 최적화 기법을 익힙니다. [Chapter 14. 네트워크 프로그래밍] 14.1. 네트워크 프로그래밍 개요 14.1.1. 네트워크 프로그래밍이란 14.1.2. 네트워크 프로그래밍의 중요성 14.1.3. .. 2023. 6. 15.
[파이썬(PYTHON) : 중급] 네트워크 프로그래밍 (계속) 7. 네트워크 프로그래밍 (계속) 7.5. 멀티스레딩과 소켓 프로그래밍 7.5.1. 멀티스레딩 개념 이해 7.5.1.1. 스레드와 프로세스의 차이 프로세스는 운영체제로부터 자원을 할당받아 독립적으로 실행되는 작업의 단위를 말합니다. 반면, 스레드는 프로세스 내에서 실행되는 독립적인 실행 흐름입니다. 즉, 같은 프로세스 내의 스레드들은 코드, 데이터 섹션 등을 공유하며 실행됩니다. 7.5.1.2. Python에서의 멀티스레딩 활용 Python에서는 threading 모듈을 이용해 멀티스레딩을 구현할 수 있습니다. 다음은 간단한 멀티스레딩 예제입니다: import threading def print_numbers(): for i in range(10): print(i) def print_letters(): .. 2023. 5. 11.
[파이썬(PYTHON) : 중급] 네트워크 프로그래밍 7. 네트워크 프로그래밍 네트워크 프로그래밍에서는 소켓 프로그래밍을 통해 네트워크 통신을 구현하는 방법을 배웁니다. HTTP 요청 및 응답 처리를 다루며, RESTful API 개념 및 활용 방법에 대해 알아봅니다. 웹 스크레이핑 기법을 통해 웹사이트에서 데이터를 추출하는 방법을 학습하게 됩니다. 7.1. 소켓 프로그래밍 7.1.1. 소켓 프로그래밍 이해하기 7.1.1.1. 소켓의 개념 및 이해 소켓(socket)은 컴퓨터 네트워크에서 데이터를 주고받는 두 컴퓨터 간의 통신을 가능하게 하는 연결점입니다. 기본적으로 하나의 컴퓨터(서버)가 특정 포트에 소켓을 열어두면, 다른 컴퓨터(클라이언트)가 그 소켓에 연결하여 데이터를 주고받을 수 있습니다. 7.1.1.2. 클라이언트와 서버 소켓의 차이점 서버 소켓은.. 2023. 5. 11.
[자바(JAVA)] 자바와 웹 프로그래밍 27. 자바와 웹 프로그래밍 27.1. 웹 프로그래밍 개요 자바를 이용한 웹 프로그래밍은 서버 측에서 데이터를 처리하고 클라이언트에게 HTML, CSS, JavaScript 등의 정적 리소스와 함께 동적으로 생성된 데이터를 제공하는 방식이다. 이를 위해 자바에서는 웹 애플리케이션을 구현하는 여러 가지 기술과 프레임워크를 제공하고 있다. 27.2. HTTP 프로토콜 및 웹 서버 HTTP(Hyper Text Transfer Protocol)는 웹 브라우저와 웹 서버 간에 데이터를 주고받기 위한 통신 프로토콜이다. 자바에서는 웹 서버를 만들기 위해 서블릿(Servlet)과 JSP(Java Server Pages)를 사용할 수 있다. 또한, 여러 가지 웹 서버 프레임워크와 라이브러리를 사용하여 간단하게 웹 서버.. 2023. 4. 30.