Книги для программистов
166K subscribers
1.96K photos
15 videos
5.1K links
Лучшие книги из мира IT.

Список наших каналов: https://t.me/proglibrary/8353
Учиться у нас: https://proglib.io/w/907158ab

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv
Прайс: @proglib_advertising
Download Telegram
​​Learning C++ Functional Programming (2017)
Автор: Wisnu Anggoro

#cpp #book #english

Язык: английский.

Целевая аудитория: опытные разработчики на С++.

Как и объектно-ориентированное, функциональное программирование позволяет разделить программы на более мелкие, повторное используемые компоненты, призванные облегчить создание, тестирование и рефакторинг приложения в будущем. Настоящее руководство на многочисленных примерах покажет вам все возможности С++ 17 в области функционального программирования.

В книге рассматриваются следующие темы:
основы современного С++;
управление функциями;
иммутабельное состояние функций;
рекурсивные алгоритмы;
метапрограммирование;
параллелизм и многое другое.

Преимущества:
актуальный материал по теме;
многочисленные примеры кода.

Недостатки:
грамматические ошибки;
ошибки в коде.
​​Метапрограммирование шаблонов С++ в задачах математической физики
Автор: М. М. Краснов

#cpp #book #rus #cpp

Язык: русский.

Целевая аудитория: опытные программисты на С++.

Это короткое, но важное руководство было посвящено теме метапрограммирования шаблонов с целью упростить работу с алгоритмами и перенести часть вычислений на стадию компиляция для экономии времени и ресурсов. Руководство идеально подойдёт инженерам-физикам и разработчикам, участвующим в сложных математических разработках, где эффективность программы - первоначальное требование.

В книге рассматриваются следующие темы:
простейшие функции;
на стыке компиляции;
цикл времени компиляции;
символьное дифференцирование;
метод Ньютона и многое другое.

Преимущества:
небольшой объём;
уникальный материал по теме;
хорошо комментируемый код.

Недостатки:
не замечено.
​​API Design for C++ (2011)
Автор: Martin Reddy

#cpp #book #english

Язык: английский.

Целевая аудитория: опытные разработчики на С++.

Если вы уже прошли курс начинающего разработчика на С++, вам, вероятно, захочется попробовать свои силы и сделать на языке что-то действительно полезное и непростое. Настоящее руководство посвящено разработке API от основ проектирования до реализации, тестирования и документирования итогового приложения. Также вы узнаете про основные стратегии создания API приложений и лучшие практики проектирования дизайна.

В книге рассматриваются следующие темы:
паттерны проектирования API;
создание API на C++;
версионирование;
документирование;
тестирование API и многое другое.

Преимущества:
полезный материал по теме;
рассмотрен полный жизненный цикл создания API;
многочисленные примеры.

Недостатки:
не замечено.
​​C++ Programming, 6th Edition (2012)
Автор: D. S. Malik

#cpp #book #english

Язык: английский.

Целевая аудитория: начинающие программисты на С++.

Шестое издание это популярной книги познакомит вас с современным С++, его функциональными возможностями и обновлениями как в самом языке, так и в стандартной библиотеке шаблонов. Руководство рассматривает не только синтаксис языка, операторы и функции, но и структуры данных и популярные алгоритмы. Также вы научитесь писать код в стиле ООП и работать со стандартной библиотекой шаблонов.

В книге рассматриваются следующие темы:
основы С++;
управляющие конструкции;
классы и абстракция данных;
наследование и композиция;
указатели и виртуальные функции;
перегрузка;
рекурсия, поиск и сортировка;
структуры данных и многое другое.

Преимущества:
актуальный материал по языку;
множество примеров кода;
полный обзор языка.

Недостатки:
большой объём;
на данный момент существует стандарт С++ 17.
​​Data Mining Algorithms in C++ (2018)
Автор: Masters T.

#cpp #algorithms #machine_learning #book #english

Язык: английский.

Целевая аудитория: опытные программисты на С++ и в области машинного обучения.

В обычном случае данные выполняют те функции, которые от них ждут, - предоставляют информацию о предмете, человеке или явлении. Однако машинное обучение видит между данными скрытые отношения, которые использует для развития сложных систем. В этой книге представлен набор алгоритмов интеллектуального анализа данных, используемый в создании приложений прогнозирования и классификации. Все алгоритмы включают хорошие объяснения и пример кода на С++.

В книге рассматриваются следующие темы:
энтропия;
отношения в данных;
демонстрация аномалий в отношениях;
создание приложений машинного обучения и многое другое.

Преимущества:
современный обзор новых и популярных алгоритмов машинного обучения;
множество примеров;
небольшой объём.

Недостатки:
не замечено.
​​Problem Solving with C++, 10th Edition (2017)
Автор: Savitch W.

#cpp #book #english #advanced

Язык: английский.

Целевая аудитория: опытные разработчики.

Подход автора к изучению С++ можно считать самым эффективным — в процессе чтения вы изучаете язык на лучших примерах решения задач, обзоре стандартных ошибок и упражнениях. Вы научитесь не языку, по словам автора, а решать с помощью него проблемы программирования, так что десятое издание — подтверждение успешности его подхода к обучению.

В книге рассматриваются следующие темы:
введение в компьютерные системы и программирование на С++;
основы языка;
процедурное и функциональное программирование;
массивы;
строки и числа;
объектно-ориентированное программирование;
абстрактные классы, дружественные функции;
наследование, полиморфизм инкапсуляция;
указатели и многое другое.

Преимущества:
актуальный материал;
подходит начинающим;
классика программирования;
множество примеров и упражнений.

Недостатки:
не переведена.
​​С++. Мастер-класс в задачах и примерах (2007)
Авторы: М. Кузнецов, И. Симдянов

#cpp #book #rus

Язык: русский.

Целевая аудитория: начинающие программисты на С++.

Трудно найти книгу, которая соответствовала бы ожиданиям и содержала одновременно и интересный, и образовательный материал. В то же время С++ достаточно сложный язык программирования, сочетающий в себе различные парадигмы, элементы низкоуровневого программирования и возможности манипуляции памятью. Обо всём этом расскажут авторы этого учебника, объясняя материал на множестве полезных примерах и задачах.

В книге рассматриваются следующие темы:
базовые конструкции языка;
указатели, ссылки, массивы и строки;
функции;
объекты и классы;
исключения;
стандартная библиотека;
ввод/вывод.

Преимущества:
много интересных примеров и задач;
иллюстрации.

Недостатки:
старый стандарт языка.
​​Test Driven Development for Embedded C (2016)
Автор: James W. Grenning

#cpp #book #advanced #english

Язык: английский.

Целевая аудитория: опытные разработчики.

Вы можете сказать, что тестирование  -  это ещё один лишний слой разработки, и окажетесь неправы. Тестирование не только экономит ваше время на поиск ошибки, но и делает разработку гибче и быстрее. В этом руководстве вы познакомитесь с основами тестирования на примере двух главных принципов - BDD и TDD.

В книге рассматриваются следующие темы:
основы TDD;
пишем первый тест для приложения на языке C;
тестируем модули;
моки;
паттерны проектирования;
рефакторинг и многое другое.

Преимущества:
качественный материал по теме;
многочисленные примеры.

Недостатки:
многие примеры кода устарели и не работают.
​​C++ Programming for the Absolute Beginner (2009)
Автор: Mark Lee

#cpp #book #beginner #english

Язык: английский.

Целевая аудитория: начинающие разработчики.

Язык С++ является, наверно, одним из лучших кандидатов для языка, который начинающий программист может спокойно изучать. Поскольку он сочетает в себе свойства как низкоуровневых, так и высокоуровневых языков, объектно-ориентированные и императивные возможности, разработчик покроет знаниями большую область разработки и в будущем без проблем сможет выбрать другой популярный язык. Данное руководство поможет всем начинающим изучить язык на многочисленных примерах разного уровня.

В книге рассматриваются следующие темы:
переменные;
управляющие конструкции;
функции;
объектно-ориентированное программирование;
управление памятью;
шаблоны;
обработка ошибок и исключений;
работа с файлами.

Преимущества:
широкий охват тем;
многочисленные примеры.

Недостатки:
старый стандарт языка.
​​C++ Programming in easy steps, (2017)
Автор: Mike McGrath

#cpp #book #english

Язык: английский.

Целевая аудитория: полные новички в программировании.

Книга не предполагает, что у вас есть знания какого-либо языка программирования вообще, поэтому проводит вас самого начала изучения С++, с подробными примерами и объяснением. Также в книге полно иллюстраций и методов нестандартного изображения работы с языком, так что всем тем, кто не любит строгое объяснение технологии, книга обязательно понравится.

В книге рассматриваются следующие темы:
операторы и выражения;
обработка ошибок;
чтение и запись в файл;
создание классов и объектов;
полиморфизм;
тестирование программы и многое другое.

Преимущества:
актуальный материал по теме;
интересный язык повествования;
множество иллюстраций, примеров кода.

Недостатки:
не замечено.