강의

멘토링

커뮤니티

NEW
Programming

/

Web Development

Web Network Communication - From Basics to HTTP, SSE, WebSocket, and WebRTC P2P Communication

Learning about various communication techniques and understanding their differences helps you develop the ability to select and implement the most appropriate communication method.

3 learners are taking this course

  • sir24is
HTTP
SSE
websocket
WebRTC
P2P
JavaScript
React
Java
Network
Spring Boot

What you will gain after the course

  • Learn the fundamentals of network communication and communication techniques using HTTP and SSE

  • Learn beyond the basics of WebSocket to practical applications

  • Let's create a Signaling Server to enable true P2P communication

  • Develop the ability to compare and analyze various network communication technologies, and to select and apply appropriate techniques


How far have you explored web communication?
Starting from [HTTP]

[WebSocket], [WebRTC]and beyond

Properly understanding network communication is an essential skill for web developers.
This course covers various communication techniques in depth, including HTTP, SSE, WebSocket, and WebRTC, helping you learn the characteristics and usage of each technology to develop the ability to select and implement the optimal communication method.


[Pain Point Scenario 1]
Have you ever experienced slow development progress due to complex server communication logic, and felt overwhelmed about which technology to use when actually implementing it?

[Pain Point Scenario 2]
While implementing services that require real-time bidirectional communication between client and server (such as chat or games), were you curious about WebSocket usage beyond the basics?

[Pain Point Scenario 3]
Have you ever been interested in P2P communication that doesn't go through a server, specifically WebRTC technology, but found it difficult to even attempt due to the complexity of setting up a signaling server or the complicated connection process?

We provide the best learning experience to help you overcome all these challenges and become a web communication expert.
Start now and elevate your development skills to the next level!


HTTP, SSE, WebSocket, and WebRTC
Master the core technologies of web communication

Become a real-time network communication expert by seamlessly navigating between server and client.




When this course is completed, you will


Develop the ability to understand and utilize network communication.

  • You will gain a deep understanding of the principles behind various web communication techniques such as HTTP, SSE, WebSocket, and WebRTC, and clearly understand the differences between each technology. Through this, you will develop the ability to independently determine which communication method to use in different situations and implement them accordingly.

Gain hands-on experience implementing various web communication technologies.

  • We go beyond simple theoretical learning by directly building a Signaling Server and implementing WebRTC-based P2P communication. Additionally, through hands-on practice using WebSocket, you'll experience the process of creating complex communication features yourself, developing practical skills that can be immediately applied to real service development.

Acquire practical communication technology skills focused on real-world applications.

  • From web development beginners to developers struggling with WebSocket or WebRTC implementation, this course will help you improve your practical communication feature implementation skills. You'll understand the pros and cons of each communication method and develop the insight to select the optimal technology for your projects.

Develop both server and client development skills together.

  • It covers both backend development using Java and frontend development using JavaScript. Through this, you can gain an integrated understanding of how web communication works between the server and client sides, and strengthen the core competencies needed as a full-stack developer.






✔️

How much do you know about web communication?
Mastering core technologies

Various Web Communication Techniques
From Core Principles to Practical Application

This course provides an in-depth understanding of network communication, an essential element of web development. From HTTP, SSE, WebSocket, to WebRTC P2P communication, you can systematically learn from the basic principles of each technology to actual implementation methods. By comparing and analyzing various communication methods, you will develop the ability to select and apply the most optimized technology for your projects.

Hands-on
Real-world Communication Implementation

The course doesn't stop at just theoretical learning. Through frontend implementation using JavaScript and React, and backend development using Java and Spring Boot, you'll directly build real chat services, WebRTC-based P2P communication, and more. This allows you to immediately apply what you've learned and strengthen your practical skills.

Code and Resources
for Developers

We provide all source code used in the course. Through Java-based projects for backend development and JavaScript code for frontend development, you can solidly understand the learning content and improve your network communication development skills by running the code directly. Lecture notes are also provided to enhance learning efficiency.

The lecture notes can be accessed at the following URL.

https://wikidocs.net/book/17989


📚

Network Communication
Core Mastery Curriculum

Section 1

Course Introduction and Environment Setup

This section covers the overall introduction to the course, along with how to set up a practice environment for learning network communication. It includes the process of creating backend and frontend projects.


Section 2

Web and Network Fundamentals

We will learn the fundamental concepts of networking that form the foundation of web communication and the operating principles of sockets. By understanding the core principles of socket communication, we will establish a foundation for various communication techniques to be covered later.


Section 3

Understanding HTTP

This course covers HTTP protocol in detail, from its origins and fundamental principles to server and client implementation. You'll learn communication methods using XMLHttpRequest and external libraries, as well as solutions for resolving CORS issues.


Section 4

Understanding Server-Sent Events (SSE)

You will learn the basics of SSE, which enables unidirectional real-time data transmission from server to client. You will write server and client programs and learn how to implement and apply SSE using the EventSource API.


Section 5

WebSocket Basics

This introduces the basic principles of WebSocket, which supports bidirectional real-time communication between client and server. You will learn how to write server programs using WebSocketHandler and methods for sending and receiving messages from the client.


Section 6

Using WebSocket (Server)

This covers server-side development for implementing real-time applications using WebSocket. It defines application protocols and message formats, and implements concurrency control and message processing logic for ChatRoom.


Section 7

Using WebSocket (Client)

We will proceed with client-side development for integration with the WebSocket server. Starting with UI creation, we will implement application protocol transmission, chat room participation, and server event handling features.


Section 8

WebRTC and Signaling Server

Learn the concept of WebRTC, which enables direct browser-to-browser communication (P2P). Understand MediaStream processing, permission requests, and the role of Signaling Server for P2P connections and message handling methods.


Section 9

Implementing WebRTC Client

You will learn how to implement P2P communication on the client side using WebRTC. You will practice writing the user interface and establishing peer-to-peer connections through the Offer and Answer process.


These are the concerns
we can help solve!

📌

Web Development Beginners

Web development is new to you, so you feel vague about what exactly HTTP or WebSocket is,
and how they work

📌

Frontend Developer

If you need real-time communication technologies like WebSocket or WebRTC,
but feel overwhelmed about where to start

📌

Backend Developer

You can create REST APIs quite well with Spring Boot,
but are curious about other communication methods using SSE, WebSocket, etc.




Notes Before Taking the Course


Practice Environment

  • Operating System: You can learn on both Windows and macOS.

  • Development Tools: You can use VS Code or your preferred IDE.

  • Installation Program: Install and use JavaSDK and NodeJS.

Prerequisites and Important Notes

  • An understanding of Java and JavaScript is required.

  • Basic knowledge of web development using React is required.

    • If you're new to this, you can follow along with the course after just reading through the "Quick Start" page in the official documentation.

  • Even those encountering network communication concepts for the first time can take this course.

Learning Materials

  • You can view the lecture notes online.

  • Practice with example code by writing it yourself, and complete source code is provided


Recommended for
these people

Who is this course right for?

  • Someone who is entering web development and wants to use network communication features

  • Anyone who wants to master not only the basics of WebSocket but also its practical applications

  • Those who want to learn about WebRTC P2P communication where you can actually establish real connections

  • Those who want to develop the ability to understand, compare, and select various network communication techniques

Need to know before starting?

  • Knowledge of Java syntax is required, and familiarity with SpringBoot would be beneficial

  • You'll need knowledge of JavaScript syntax, and it would be helpful if you're familiar with React. (If you're new to it, you can follow along with the course after learning just the "Quick Start" page from the official documentation.)

Hello
This is

새로운 것을 꿈꾸는 개발자 입니다.

Curriculum

All

69 lectures ∙ (7hr 54min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

Not enough reviews.
Please write a valuable review that helps everyone!

Limited time deal

$42.90

29%

$60.50

sir24is's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!