Всем привет!
Пятый модуль состоит из четырех тем:
- теория по сетям (сетевые утилиты, адресация, протоколы)
- представление данных в формате JSON (сериализация и десериализация)
- обращение к веб-серверу по протоколу HTTP методами GET и POST
- библиотека Retrofit (удобная при работе с разными API)
Я подготовил список контрольных вопросов:
1) Для чего служат сетевые утилиты ipconfig (Windows), ifconfig (Linux), nslookup (Windows), ping. Краткое описание всех
https://lifehacker.ru/8-cmd-commands-for-windows/2) Как задать размер подсети (количество доступных адресов) с помощью маски? Калькулятор в помощь
https://ip-calculator.ru/ - написать программу для расчёта маски для размера подсети.
3) Как происходит установление соединения TCP, отправка HTTP-запроса.
4) Из чего состоит HTTP-запрос и ответ, какие коды ответа сервера бывают. Отличия GET и POST.
5) Почему обращение к серверу в ОС Android нужно осуществлять в отдельном потоке (что будет, если этого не сделать) и какие изменения нужно вносить в manifest?
6) Какие библиотеки для работы с сетью существуют для ОС Android?
7) Что такое JSON-объект, JSON-массив? Какие типы данных допускаются в JSON? См. пояснения
https://www.w3schools.com/js/js_json_datatypes.aspКак преобразовать JSON в XML и наоборот.
7а) Библиотека GSON, примеры использования, как сериализовать объект в строку и обратно. Хорошее описание у Климова
http://developer.alexanderklimov.ru/android/library/gson.php 8) Библиотека Retrofit - формирование запросов и обработка ответов. Уяснить, какие строки за что отвечают (в т.ч. аннотации) См. пояснения с примерами
https://git.io/fjsnD9) Что такое API, какую роль несет токен. Приведите примеры открытых API.