Для изучения сетевого программирования с использованием сетевых протоколов можно рассмотреть построение следующих приложений:
- Распределённые приложения. 2 Например, пиринговые сети, системы распределённых вычислений или ботнеты, где основой функционирования является взаимодействие множества компонентов, запущенных на независимых компьютерах сети. 2
- Приложения с централизованной схемой клиент-сервер. 2 В таком случае программа разделяется на две логические части — клиентскую, которая запускается на компьютере пользователя и предоставляет ему интерфейс, и серверную, которая работает на сервере, принадлежащем разработчику, и может заниматься, например, доступом к базе данных. 2
- Веб-приложения. 24 Они наиболее активно полагаются на протокол HTTP и его защищенную модификацию — HTTPS. 2
- Приложения для скачивания файлов с сайта. 3 Например, скачивание mp3-файлов с сайта с помощью HTTP-клиента, который подключается к серверу и загружает страницу, парсит и подгружает нужные файлы. 3
- Приложения для создания и отправки электронной почты. 35 Для этого используются протоколы POP3 и IMAP. 3
- Видеозвонки (IP-телефония, Skype). 3 Для них применяются сетевые протоколы SIP и SCTP. 3
Выбор конкретного приложения для изучения зависит от личных интересов и целей разработчика.