Цель работы — изучение основ сетевого взаимодествия и серверной разработки с использованием языка Golang.
В рамках данной лабораторной работы предлагается продолжить изучение Golang и познакомиться с набором стандартных библиотек, используемых для организации сетевого взаимодествия и разработки серверных приложений.
Основной базис необходимых теоретических сведений для данной лабораторной работы содержится в курсе https://stepik.org/course/54403/info в разделе "4. Списки, сеть и сервера". Здесь основное внимание стоит уделить урокам "4.2 Работа с сетью" и "4.3 Веб-сервера".
Поскольку на момент выполнения данной лабораторной работы у нас отсутствует Front-End, то в качестве клиента для тестирования и отладки рекомендуется использовать Postman, Insomnia или Curl.
Для успешного выполнения лабораторной работы необходимо проделать следующие шаги:
- Ознакомиться с разделом "4. Списки, сеть и сервера" курса https://stepik.org/course/54403/info
- Сделать форк данного репозитория в GitHub, склонировать получившуюся копию локально, создать от мастера ветку дев и переключиться на неё
- Выполнить задания. Ссылки на задания можно найти в README-файлах в директории projects
- (опционально) Проверить свой код линтерами с помощью команды
make lint
- Сделать отчёт и поместить его в директорию docs
- Зафиксировать изменения, сделать коммит и отправить получившееся состояние ветки дев в личный форк данного репозитория в GitHub
- Через интерфейс GitHub создать Pull Request dev --> master
- На защите лабораторной работы продемонстрировать открытый Pull Request. PR должен быть направлен в master ветку форка, а не исходного репозитория
- ???
- PROFIT!!!
- Титульный лист
- Цель работы
- Задание
- Ход работы со скриншотами и листингами результатов
- Заключение
- Ответы на контрольные вопросы (если они есть)
- Список использованных источников
- В чём разница между протоколами
TCP
иUDP
? - Для чего нужны
IP Address
иPort Number
у веб-сервера и в чём разница? - Какой набор методов в
HTTP-request
в полной мере релализует семантикуCRUD
? - Какие группы
status code
существуют уHTTP-response
(желательно, с примерами) ? - Из каких составных элементов состоит
HTTP-request
иHTTP-response
?
Поскольку первый рубежный контроль будет по языку Golang, то рекомендуется для успешного написания РК1 к 6-7 неделе семестра выполнить следующие лабораторные работы:
- "3. Основы Golang"
- "5. Основы асинхронного программирования на Golang"
- "6. Основы Back-End разработки на Golang"