Programming Languages


Ultimate Practical Java Network Programming Bootcamp

Building Java Thread and Java Socket for TCP/UDP IP, HTTP, FTP, SMTP, POP3, IMAP, IPv6, TLS/SSL, Proxy, NTP, Whois

2.86 (7 reviews)


3 hours


Jul 2020

Last Update
Regular Price

Exclusive  Offer
Unlimited access to 30 000 Premium SkillShare courses

What you will learn

Learn basic Java programming

Learn basic Socket programming using Java

Build Java Multithreading programs

Develop socket programs and client-server applications for TCP/IP and UDP/IP

Develop Java socket program to transfer file over TCP/IP

Build Java socket programs for HTTP, FTP, Mail: SMTP, POP3, IMAP

Learn socket programming and build client-server application for IPv6

Learn SSL socket programming for HTTPS

Develop client-server application with SSL socket

Build Java Socket programs over Proxy server

Java socket programming for NTP and Whois protocols


This bootcamp is designed for everyone who wants to learn and upgrade network programming skill using Java. The bootcamp focuses on Socket programming so that students could understand how network protocol work. Various network protocols are explored in order to get more practices in network programming.

For students without Java programming skill, I'll give a brief Java programming so you can follow this bootcamp. You will learn the following topics:

  • declaring variables

  • working with input/output

  • declaring operators

  • making conditional statements with if and switch

  • making loop statements

  • working with array and collection

  • learning OOP with Java such as Class, Inheritance, Interface

  • handling errors and exceptions

In this bootcamp, you will learn how to write Java Socket programs for network context. Starting to learn basic Socket programming using Java. Then, you will learn about multithreading in Java. You will implement the following protocol using Java Socket:

  • HTTP

  • FTP

  • SMTP

  • POP3

  • IMAP

Next, we explore advanced Socket topics such as SSL Socket, HTTPS, Proxy Server. We also learn how to build Socket programs for NTP and Whois protocols.


Ultimate Practical Java Network Programming Bootcamp
Ultimate Practical Java Network Programming Bootcamp
Ultimate Practical Java Network Programming Bootcamp
Ultimate Practical Java Network Programming Bootcamp



Bootcamp Overview


Basic Java Programming (for students without Java Programming Skills)

Introduction to Java Programming

Preparation for java JDK and Tools

Declare Variables

Java Operators

Java Input and Output


Conditional - switch


Array - Collections




Error Handling and Exception

Socket Programming

What is Socket?

Getting Local IP Address

Socket Programming for TCP/IP

Socket Programming for UDP/IP

Transferring a File over TCP/IP Socket

Java Multithreading

Introduction to Java Multithreading

Building Java Thread

Building a Timer

Java Thread Pooling with ExecutorService

Stopping Java Threads

Thread Synchronization

HTTP Protocol Network Java Socket Programming

Introduction to HTTP Protocol

Accessing Data over HTTP GET with Java Socket

Accessing Data over HTTP POST with Java Socket

Downloading Image File over HTTP using Java Socket

Accessing HTTP with Basic Authentication

Mail Network Programming

Introduction to Mail Network Protocol

Sending Email over SMTP

Socket Programming for SMTP with Authentication

Sending Email with Attachment File

Socket Programming for POP3

Socket Programming for IMAP

FTP Network Programming

Introduction to FTP Protocol

Getting a List of Folders and Files over FTP

Uploading a File to FTP Server

Downloading a File from FTP Server

Deleting a File on FTP server

Java Socket Programming for IPv6

Introduction to IPv6

Getting Local IPv6 Address

Building IPv6 Client-Server Socket Programming

Socket Programming with TLS/SSL

Introduction to TLS/SSL

Building HTTPS/SSL Socket Programming

Setting up Keystore and Certificate

Building TLS/SSL Client-Server Socket Programming

Proxy Network Programming

Introduction to Proxy Network

Accessing HTTP via SOCKS Proxy

Accessing HTTP via SOCKS Proxy with Authentication

*** Bonus Materials***

Whois Network Protocol

NTP Network Protocol


Source Codes


Fhm30 July 2020

Waste of time and money. Reading from the code is not what he should do as a instructor. His teaching is like someone is reading list of instructions from a website. It is not a bootcamp at all. Useless and very difficult to understand what he was telling.

Marina27 May 2020

A lot of practical exemples with code. This cours helped me to make Socket programming project in my school.


Udemy ID


Course created date


Course Indexed date
Course Submitted by