Общее описание
Книга размером 350 страниц. Помимо текста присутствуют вставки кода и изображения там, где тяжело описать текстом. В конце каждой главы есть вывод пройденного материала, задания для изучения и практические задания. Материал книги местами мне показался сложным.
Введение
Если не считать главы введения и заключения, то книга состоит из 7 глав, каждая из которых состоит из 3 тем. Каждая тема усложняет и дополняет предыдущую. Сами же главы, как правило, содержат совершенно новые и независимые от прошлых глав технологии.
Глава 2. Потоки выполнения и блокировки
- День 1: взаимоисключение и модели памяти
- День 2: помимо встроенных блокировок
- День 3: на плечах гигантов
Глава 3. Функциональное программирование
- День 1: программирование без изменяемого состояния
- День 2: функциональный параллелизм
- День 3: функциональная конкуренция
Глава 4. Путь Clojure – разделение идентичности и состояния
- День 1: атомы и сохраняемые структуры данных
- День 2: агенты и программная транзакционная память
- День 3: погружение в глубину
Глава 5. Акторы
- День 1: сообщения и почтовые ящики
- День 2: обработка ошибок и отказоустойчивость
- День 3: распределённые приложения
Глава 6. Взаимодействие последовательных процессов
- День 1: каналы и блоки do
- День 2: множество каналов и ввод/вывод
- День 3: модель CSP на стороне клиента
Глава 7. Параллелизм данных
- День 1: программирование GPGPU
- День 2: многомерность и рабочие группы
- День 3: OpenCL и OpenGL — храните данные в GPU
Глава 8. Лямбда-архитектура
- День 1: MapReduce
- День 2: пакетный уровень
- День 3: уровень ускорения
Мнение
Книга была рассчитана на то, чтобы её не читать быстро. Я же читал её как и любую другую. При этом я не выполнял практические задания и не изучал дополнительный материал. Поэтому некоторые темы показались сложноватыми. К тому же были выбраны весьма специфические языки и технологии для разбора этих тем. Clojure и Erlang — это не те языки, с которыми знаком среднестатистический разработчик. Так что, приступая к чтению этой книги, будьте готовы, что будет нелегко. С другой стороны, книга информативная и интересная.