Thumbnail
개발 · 프로그래밍 백엔드

C# TCP/IP 소켓 프로그래밍 대시보드

(4.4)
5개의 수강평 ∙  138명의 수강생

33,000원

지식공유자: 에릭권
총 28개 수업 (3시간 29분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변: 미제공
폴더에 추가 공유

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

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분의 수업
이 강의는 영상, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 1. 소켓 프로그래밍
Socket 객체 미리보기 08:06
직렬화, 바이트 오더 07:36
Echo 프로그램 06:43
Echo 프로그램 개선 07:20
3-way handshake, 4-way handshake 04:30
섹션 2. TCP의 특징과 옵션
입출력버퍼, 슬라이딩 윈도우 04:55
우아한 종료, Half-close 05:32
Time-wait, SO_REUSEADDR 04:27
SO_LINGER 01:38
SocketFlags 02:45
Nagle 알고리즘 03:47
섹션 3. 비동기 프로그래밍
프로세스, 스레드 03:54
스레드 동기화 04:39
EAP 17:53
APM 09:06
TAP 08:24
섹션 4. 채팅 프로그램
프로젝트 소개 미리보기 01:47
로그인 27:16
방 만들기, 방 목록 새로고침 25:21
유저 입장, 퇴장 16:58
메시지 전송, 예외 처리 08:31
중복 접속 차단 05:44
Heartbeat 05:44
섹션 5. 부록
TcpClient, TcpListener 01:01
Select 01:44
C 언어의 소켓 입출력 모델 01:37
강의 게시일 : 2023년 01월 11일 (마지막 업데이트일 : 2023년 01월 14일)
수강평 총 5개
수강생분들이 직접 작성하신 수강평입니다.
4.4
5개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
Sobee thumbnail
5
우선 델리게이트, 프로퍼티, 딕셔너리, 리스트, 람다 등 C# 지식을 알고 수강하면 이해도를 높일 수 있는 강의 입니다. 소켓 프로그래밍 지식과 TCP 지식들을 얻기 좋은 강의이고 비동기 동기 나눠서 설명해줘서 너무 좋은 강의 같습니다! 욕심이지만.. 부록으로 Winform 다루는거 강의만 살짝 더 있었으면 더 좋을거 같습니다!
2023-01-13
지식공유자 에릭권
감사합니다^^ 말씀하신 피드백 검토해보겠습니다.
2023-01-14
이재근 thumbnail
5
어렵지 않게 따라 할 수 있는 좋은 강의 였습니다.
2023-07-17
dantae923 thumbnail
5
너무 알기 쉽게 잘 설명해 주셨어요. 덕분에 업무에 많은 도움이 되었습니다 감사합니다!
2024-03-01
dokebi7 thumbnail
5
구글링 결과로 나온 소스로 소켓 프로그램을 작성하다 개념을 가지고 할 수 있게 만들어주셔서 감사합니다. 다음 강의도 기대하겠습니다.
2024-04-22
jlim thumbnail
2
강의 방식을 변경하는게 좋아보입니다. 특히 마지막 winform 통한 강의는 어떻게 진행할지 설계 내용을 자세히 알려주고 미리 짜놓은 코드를 기반으로 코드 설명을 하시는게 좋아보입니다. 싱글톤을 사용한 이유등.. (인프런에 cpp로 tcp/ip 강의하시는 분 강의내용 참고하면 좋을 듯합니다.) 강의 방식은 그대로 라이브코딩으로 진행한다고하면, 설명을 충분히 해주시면 좋겠습니다.
2024-04-10