До 30 ноября

Скидки до 81 000 руб и вторая профессия в подарок!

Главная | Все статьи | Дневник студента

Рецензия на книгу «Компьютерные сети. Нисходящий подход»

Время чтения статьи ~1 минута
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Рецензия на книгу «Компьютерные сети. Нисходящий подход» главное изображение

Привет, Hexlet! Хочу поделится в впечатлениями от прочтения книги «Компьютерные сети. Нисходящий подход», авторы: Джеймс Куроуз, Кит Росс.

Тема компьютерных сетей меня интересовала давно, тем более программист, который создаёт Web-приложение, должен не только уметь писать код, но и понимать как его приложение взаимодействует по сети (хотя бы на базовом уровне).

Почему нисходящий подход?

Вообще существует два пути изучения компьютерных сетей:

  1. Сверху вниз по модели взаимодействия открытых систем(OSI), начиная с прикладного уровня и кончая физическим;
  2. Соответственно снизу от физического к прикладному.

Не знаю кому как, мне понравился первый вариант, он мне более понятен (данные от приложения через сокет спускаются на транспортный уровень, там инкапсулируются в дейтаграмму и спускаются на сетевой).

О самой книге:

  • Книга читается довольно легко, за исключением мест, где производятся различные математические расчеты (типа двойной экспоненциальный алгоритм выдержки для расчета времени задержки в протоколе разделяемого доступа к среде), но эти места я пропускал, для базового понимания они и не нужны.
  • На сайте издательства можно скачать упражнения и лабораторные работы по анализу сетевого трафика. (ссылка в книге есть)
  • В книге разобраны все основные протоколы стека TCP/ip (особенно для нас, как для разработчиков, важны HTTP, DNS, TCP, UDP)
  • Есть примеры программирования сокетов (правда, на Python)
  • Особенно меня поразило, какое прикладное применение в компьютерных сетях нашла теория графов — это и построение маршрутов, и предотвращение петель коммутации (протокол дерева). Раньше я думал, что графы — это структура данных, которая применяется в программировании.
  • Еще мне понравилась глава: «Один день из жизни запроса веб-страницы». В этой главе описываются 24 шага получения веб-станицы конечным хостом, начиная от подключения хоста к сети, и заканчивая отображением веб-страницы. На каждом шаге описываются протоколы, которые были задействованы. Это так сказать своеобразный маркер — если понял все шаги, значит книгу прочел не зря. Это очень круто!

Вообщем книга мне понравилась, не жалею потраченного времени, всем советую! Всем удачи, добра и успехов в обучению программированию!

Рекомендуемые программы
профессия
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 28 ноября
профессия
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 28 ноября
профессия
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 28 ноября
профессия
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 28 ноября
профессия
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 28 ноября
профессия
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 28 ноября
профессия
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 28 ноября
профессия
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
Старт 28 ноября