C# TCP/IP 소켓 프로그래밍
TCP 소켓의 기초 이론과 특징을 배울 수 있습니다. 소켓의 다양한 옵션과 Task 기반 비동기 프로그래밍을 할 수 있습니다.
초급자를 위해 준비한
[웹 개발, 네트워크] 강의입니다.
이런 걸
배워요!
소켓을 기반으로 한 네트워크 프로그래밍
TCP 소켓의 특징과 다양한 옵션 다루기
Task 기반 비동기 소켓 프로그래밍
기초 개념부터 실전까지,
TCP/IP 소켓 프로그래밍을 강의 하나로 꽉! 🙏
C#으로 배우는
TCP/IP 소켓 프로그래밍 📌
잠깐 ✋ TCP란?
TCP(Transmission Control Protocol, 전송 제어 프로토콜)는 두 개의 네트워크 사이를 연결하고 데이터를 작은 패킷으로 나눠 전송해요. 근거리 통신망, 인터넷 등에 연결된 컴퓨터에서 실행되는 프로그램 사이의 데이터를 순서대로, 에러 없이 교환할 수 있게 합니다.
게임 서버나 채팅 서버를 만들 때 TCP 소켓을 주로 사용합니다. 하지만 C 언어로 서버를 만들자니 언어의 장벽이 높고 여러 플랫폼에서 사용하기 힘들죠.
C#은 이러한 문제를 해결해줍니다. C#은 난이도가 쉽고 게임, 모바일, 웹, 서버 등 다양한 방면에서 사용이 가능합니다. 이 강의를 통해 이런 서버의 기반이 되는 TCP 소켓의 주요 특징과 다양한 옵션을 배울 수 있습니다. C# 소켓의 비동기 프로그래밍이 어떻게 발전했는지를 알 수 있으며, 현대적인 Task 방식의 비동기 프로그래밍을 하실 수가 있게 됩니다.
강의 특징 ✨
데이터를 주고받는 과정에서
각 함수의 역할을 자세히 알 수 있어요.
TCP 소켓의 다양한 특징과 옵션을
알 수 있어요.
C# 소켓의 현대적인 Task 방식의
비동기 프로그래밍을 할 수 있어요.
채팅 프로그램을 통해 실무 위주의
TCP 서버 기반을 다질 수 있어요.
이런 걸 배워요 📚
1. 서론
- 소켓 프로그래밍을 하기 전 네트워크 기초 용어와 소켓에 대한 기초 용어를 설명합니다.
2. 소켓 프로그래밍
- 서버와 클라이언트 간의 메시지를 주고받는 프로그램을 만듭니다. 메시지를 주고받기 위한 다양한 함수들을 소개합니다.
3. TCP 소켓의 특징과 옵션
- TCP 소켓의 특징과 여러 옵션을 바꾸는 법을 알아봅니다.
4. 비동기 프로그래밍
- C# 소켓의 비동기 프로그래밍 방식이 어떻게 발전됐는지 알아봅니다. 또한 한 서버에서 여러 클라이언트를 받아서 메시지를 주고받는 법을 배웁니다.
5. 실전 채팅 프로그램
- 채팅 프로그램을 만들면서 실무에서 TCP 서버가 어떻게 만들어지는지 기반을 다져봅시다.
- 또한 쉽게 배울 수 없는 계정 동시 접속 차단도 알아봅시다.
6. 부록
- 알아두면 좋은 상식이 될 수 있는 부분을 소개합니다.
강의를 통해 만드는 채팅 프로그램
예상 질문 Q&A 💬
Q. C# 문법을 알아야 하나요?
네. 기초적인 수준의 문법은 알아야 합니다.
Q. 네트워크 선수 지식이 필요한가요?
미리 공부하시면 좋지만, 기초 용어는 따로 설명합니다.
Q. 게임 서버 만들 수 있나요?
기본 베이스만 배우실 수 있을 뿐 게임 서버를 위한 테크닉은 따로 공부하셔야 합니다.
지식공유자 소개 ✒️
2017년부터 Xamarin, Wpf로 개발을 시작한 C# 개발자입니다. 현재는 안드로이드 모바일 게임을 운영 중이며 게임 서버와 웹 서버를 C#으로 개발하였습니다. C언어 소켓 강의는 많지만 제대로 된 C# 소켓 강의는 찾아보기 힘듭니다. 여러분이 추후에 멋진 서버를 만들기 위한 C# TCP 소켓의 기본기를 알려주기 위해 지식공유자가 되었습니다.
수강 전 참고 사항 📢
실습 환경
- 운영 체제 및 버전(OS): Windows
- 사용 도구: Visual Studio 2022, .Net6
선수 지식
- C# 문법의 기초적인 이해
- Visual Studio 사용법
이런 분들께
추천드려요!
학습 대상은
누구일까요?
TCP 소켓 기초 프로그래밍을 해보고 싶은 분
게임 서버 및 채팅 서버의 기반을 다지고 싶은 분
선수 지식,
필요할까요?
C# 기초 문법
Visual Studio 사용법
안녕하세요
에릭권입니다.
2017년 부터 Xamarin, Wpf 개발을 시작으로한 C# 개발자입니다. 현재는 안드로이드 모바일 게임을 운영중이며 게임 서버와 웹 서버를 C#으로 개발하였습니다. 기본이 안되어 있으면 어떤 서버를 만들든간에 안정적이지 못할것입니다. 여러분이 추후에 멋진 서버를 만들기 위한 TCP 소켓의 기본기를 알려주기 위해 지식공유자가 되었습니다.
커리큘럼
전체
28개 ∙ 3시간 29분
수업 자료
가 제공되는 강의입니다.
네트워크 기초 용어
06:37
소켓 기초 용어
06:13
Socket 객체
08:06
직렬화, 바이트 오더
07:36
Echo 프로그램
06:43
Echo 프로그램 개선
07:20
입출력버퍼, 슬라이딩 윈도우
04:55
우아한 종료, Half-close
05:32
SO_LINGER
01:38
SocketFlags
02:45
Nagle 알고리즘
03:47
마지막 업데이트일: 2023년 01월 14일