Д.В.Сошников | Функциональное программирование на F# [2011] [PDF]
Автор: Д.В.Сошников
Название: Функциональное программирование на F#
Год: 2011
Издательство: ДМК Пресс
ISBN: 978-5-94074-689-8
Формат: PDF
Качество: Изначально электронное (ebook)
Описание:Автор этой книги имеет богатый опыт преподавания курсов функционального программирования на базе F# в ведущих российских университетах, он умеет доходчиво объяснить концепции функционального программирования даже начинающему разработчику ПО, не прибегая к сложным понятиям лямбда-исчисления. Книга содержит много полезных примеров использования F# для решения практических задач: доступа к реляционным или слабоструктурированным XML-данным, использование F# для веб-разработки и веб-майнинга, визуализация данных и построение диаграмм, написание сервисов для облачных вычислений. Используя фрагменты кода, рассмотренные в книге, читатели могут немедленно приступить к решению своих практических задач на F#.
Скриншоты:
- 0. Введение
- 0.1. Зачем изучать функциональное программирование
- 0.2. О чем и для кого эта книга
- 0.3. Как установить и начать использовать F#
- 1. Основы функционального программирования
- 1.1. Применение функций vs. Присваивание
- 1.2. Упорядоченные кортежи, списки и вывод типов
- 1.3. Функциональные типы и описание функций
- 1.4. Каррирование
- 1.5. Условный оператор и опциональный тип
- 1.6. Типы данных, размеченное объединение и сопоставление с образцом
- 1.7. Рекурсия, функции-параметры и цикл for
- 1.8. Конструкции >>, |>
- 1.9. Пример – построение множества Мандельброта
- 1.10. Интероперабельность с .NET
- 2. Рекурсивные структуры данных
- 2.1. Списки и конструкторы списков
- 2.2. Сопоставление с образцом
- 2.3. Простейшие функции обработки списков
- 2.4. Функции высших порядков
- 2.5. Генераторы списков
- 2.6. Хвостовая рекурсия
- 2.7. Сложностные особенности работы со списками
- 2.8. Массивы
- 2.9. Многомерные массивы и матрицы
- 2.10. Деревья общего вида
- 2.11. Двоичные деревья
- 2.12. Другие структуры данных
- 3. Типовые приемы функционального программирования
- 3.1. Замыкания
- 3.2. Динамическое связывание и mutable-переменные
- 3.3. Генераторы и ссылочные переменные ref
- 3.4. Ленивые последовательности (seq)
- 3.5. Ленивые и энергичные вычисления
- 3.6. Мемоизация
- 3.7. Продолжения
- 4. Императивные и объектно-ориентированные возможности F#
- 4.1. Мультипарадигмальность языка F#
- 4.2. Элементы императивного программирования на F#
- 4.3. Объектно-ориентированное программирование на F#
- 5. Метапрограммирование
- 5.1. Языково-ориентированное программирование
- 5.2. Активные шаблоны
- 5.3. Квотирование
- 5.4. Конструирование выражений, частичное применение функции и суперкомпиляция
- 5.5. Монады
- 5.6. Монадические выражения
- 6. Параллельное и асинхронное программирование
- 6.1. Асинхронные выражения и параллельное программирование
- 6.2. Асинхронное программирование
- 6.3. Асинхронно-параллельная обработка файлов
- 6.4. Агентный паттерн проектирования
- 6.5. Использование MPI
- 7. Решение типовых задач
- 7.1. Вычислительные задачи
- 7.2. Доступ к данным
- 7.3. Веб-программирование
- 7.4. Визуализация и работа с графикой
- 7.5. Анализ текстов и построение компиляторов
- 7.5. Создание F#-приложений для Silverlight и Windows Phone 7
- Вместо заключения
- Рекомендуемая литература
Время раздачи: По возможности круглосуточно