Хорошо написанный код легче тестировать и использовать повторно, его проще распараллелить, и он меньше подвержен ошибкам. Владение приемами функционального программирования поможет вам писать код, соответствующий требованиям к современным приложениям, проще выражать сложную логику программ, изящно обрабатывать ошибки и элегантно оформлять параллельные алгоритмы. Язык C++ поддерживает функциональное программирование с использованием шаблонов, лямбда-выражений и других своих базовых возможностей, а также алгоритмов из библиотеки STL.
Функциональное программирование на C++ поможет вам раскрыть свои способности к функциональному мышлению, продемонстрировав новый взгляд на программирование на C++.
В этой книге вы найдете десятки примеров, диаграмм и иллюстраций, описывающих идеи функционального программирования, которые вы сможете применять в C++, включая ленивые вычисления, объекты-функции и вызываемые объекты, алгебраические типы данных и многое другое. В процессе чтения вы увидите множество практических сценариев применения методов функционального программирования, где они могут принести наибольшую выгоду.
Содержание
1 Введение в функциональное
программирование
2 Первые шаги в функциональном
программировании
5 Функциональные объекты
4 Средства создания новых функций из
имеющихся
5 " Чистота функций: как избежать
изменяемого состояния
6 Ленивые вычисления
7 Диапазоны
8 Функциональные структуры данных
9 Алгебраические типы данных и
сопоставление с образцом
10 Монады
11 Метапрограммирование на шаблонах
12 Функциональный дизайн параллельных
систем
Тестирование и отладка
Переводчик: Винник Вадим Юрьевич, Киселев А. Н.
Редактор: Мовчан Д. А.
Khorosho napisannyj kod legche testirovat i ispolzovat povtorno, ego prosche rasparallelit, i on menshe podverzhen oshibkam. Vladenie priemami funktsionalnogo programmirovanija pomozhet vam pisat kod, sootvetstvujuschij trebovanijam k sovremennym prilozhenijam, prosche vyrazhat slozhnuju logiku programm, izjaschno obrabatyvat oshibki i elegantno oformljat parallelnye algoritmy. Jazyk C++ podderzhivaet funktsionalnoe programmirovanie s ispolzovaniem shablonov, ljambda-vyrazhenij i drugikh svoikh bazovykh vozmozhnostej, a takzhe algoritmov iz biblioteki STL.
Funktsionalnoe programmirovanie na C++ pomozhet vam raskryt svoi sposobnosti k funktsionalnomu myshleniju, prodemonstrirovav novyj vzgljad na programmirovanie na C++.
V etoj knige vy najdete desjatki primerov, diagramm i illjustratsij, opisyvajuschikh idei funktsionalnogo programmirovanija, kotorye vy smozhete primenjat v C++, vkljuchaja lenivye vychislenija, obekty-funktsii i vyzyvaemye obekty, algebraicheskie tipy dannykh i mnogoe drugoe. V protsesse chtenija vy uvidite mnozhestvo prakticheskikh stsenariev primenenija metodov funktsionalnogo programmirovanija, gde oni mogut prinesti naibolshuju vygodu.
Soderzhanie
1 Vvedenie v funktsionalnoe
programmirovanie
2 Pervye shagi v funktsionalnom
programmirovanii
5 Funktsionalnye obekty
4 Sredstva sozdanija novykh funktsij iz
imejuschikhsja
5 " Chistota funktsij: kak izbezhat
izmenjaemogo sostojanija
6 Lenivye vychislenija
7 Diapazony
8 Funktsionalnye struktury dannykh
9 Algebraicheskie tipy dannykh i
sopostavlenie s obraztsom
10 Monady
11 Metaprogrammirovanie na shablonakh
12 Funktsionalnyj dizajn parallelnykh
sistem
Testirovanie i otladka
Perevodchik: Vinnik Vadim Jurevich, Kiselev A. N.
Redaktor: Movchan D. A.