개발 · 프로그래밍

/

백엔드

C# TCP/IP 소켓 프로그래밍

TCP 소켓의 기초 이론과 특징을 배울 수 있습니다. 소켓의 다양한 옵션과 Task 기반 비동기 프로그래밍을 할 수 있습니다.

(4.6) 수강평 8개

수강생 180명

Thumbnail

초급자를 위해 준비한
[웹 개발, 네트워크] 강의입니다.

이런 걸
배워요!

  • 소켓을 기반으로 한 네트워크 프로그래밍

  • 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분)

수업 자료

가 제공되는 강의입니다.

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!