F# - это мультипарадигмальный язык программирования, который не только помогает повысить производительность труда за счет использования функционального стиля разработки, но и позволяет применять при создании приложений уже имеющиеся навыки объектно-ориентированного и императивного программирования. Книга "Программирование на F#" поможет открыть множество преимуществ этого языка, включая возможность доступа ко всем замечательным инструментам и библиотекам платформы .NET.
Это исчерпывающее руководство, написанное Крисом Смитом, одним из основных разработчиков F# компании Microsoft, знакомит с синтаксисом языка, реализацией асинхронных и параллельных вычислений, с расширенными концепциями языка F#, такими как цитируемые и вычислительные выражения.
От читателя не требуется знание конкретных технологий, хотя общий опыт программирования, безусловно, желателен. Единственное требование - это желание воспользоваться преимуществами функционального программирования при разработке своих проектов, будь то реализация численных алгоритмов, анализ данных или сценарии для личного использования. В этом случае издание послужит хорошей отправной точкой на пути изучения фундаментальных и расширенных концепций языка F#.
Об авторе
Крис Смит работает в Microsoft в группе разработки языка F#. Его должность инженера-программиста в отделе тестирования позволила ему в совершенстве овладеть языком F#. Крис имеет степень магистра информатики, полученную в Вашингтонском университете. Вы можете встретиться с ним в Интернете, в его персональном блоге "Chris Smith\'s Completely Unique View" (совершенно уникальный взгляд Криса Смита) по адресу: http://blogs.msdn.com/chrsmith/.
Отзывы читателей
Самая простая книга о F# из существующих На ноябрь 2009 года это, пожалуй, самая простая книга о языке F# из существующих. В своей книге Крис Смит (Chris Smith) не предполагает наличие у читателя знаний о функциональном программировании. Он избегает излишних сложностей и не использует мудреных терминов. Какой смысл в книге, читать которую мои глаза отказываются только потому, что она слишком сложная.
Книга разбита на две части. Первая часть в основном посвящена синтаксису языка F#, и после ее прочтения вы легко сможете приступить к созданию программ на языке F#. Даже при том, что я использую язык F# уже пару лет, некоторые сведения для меня оказались новыми. Эту книгу можно использовать как справочник, несмотря на наличие очень неплохой документации по языку F#. Особого внимания заслуживает раздел о списках, который я нашел особенно простым и понятным.
Во второй части книги автор приглашает читателя подняться на следующую ступеньку. В книге она называется «прикладным» программированием на F#. Во многих книгах по программированию такое название подразумевает, что автор будет знакомить читателей с некоторыми наиболее часто используемыми функциями и методами. Но только не в этой книге. Во второй части приводятся некоторые весьма интересные и практичные мысли о том, что позволяет язык F#. Введение в вычислительные выражения (рабочие потоки, или потоки операций) просто восхитительно – я не встречал объяснения проще, особенно для тех, кому ранее не приходилось иметь дела с подобными конструкциями (автору удалось избежать использования этого жуткого термина «монады»!).
Что по-настоящему удивило меня, так это то, что в дополнение к вычислительным выражениям в этой книге идет целый раздел, посвященный цитируемым выражениям. В этом разделе приводится не только краткое описание, что из себя представляют цитируемые выражения, но и дается достаточно глубокое исследование их возможностей, позволяющее читателю сразу же приступить к их использованию.
Даже приложения заслуживают пристального внимания, так как в них вы найдете раздел, посвященный интеграции F# с другими языками программирования. Несмотря на то, что программный код, написанный на языке F#, выполняется под управлением CLR, в F# существуют такие конструкции, которые необязательно сохранят свою привлекательность при попытке организовать взаимодействие с ними на языке C#. В приложении описывается, как избежать подобных проблем и реализовать более «дружественный к .NET» API.
Вообще я считаю, что эта книга наполнена ценными сведениями. Это отличное приобретение даже для опытных пользователей языка F#. Если вы только приступаете к изучению F# и у вас нет опыта функционального программирования, эта книга послужит вам хорошей отправной точкой.
Кроме того, отмечу, что содержимое этой книги совсем незначительно пересекается с содержимым книги «Functional Programming for the Real World». Поэтому если вы подумываете о приобретении обеих книг, вы не будете разочарованы. Фактически они дополняют друг друга, и я не мог бы сказать, какая из них лучше, если вы можете позволить себе только одну из них.
Майкл Гьягнокаво (Michael Giagnocavo) (Денвер, Колорадо, США)
Леди и джентльмены, это настоящая книга!
Уже довольно давно я не получал такого удовольствия от книг по программированию, какое получил от книги «Программирование на F#». У меня есть все книги о языке F#, которые только можно найти в магазинах (включая «Functional Programming for the Real World: With Examples in F# and C#», выпущенную издательством Manning). Но, должен сказать, что эта книга – самая лучшая для тех, кто собирается изучать язык F# и не имеет опыта функционального программирования. Я не уверен, что эта книга будет полезной для тех, кто вообще не знаком с программированием (возможно, правда, она станет для них судьбоносной). Но тем, кто хорошо знаком с императивным программированием, эта книга позволит начать программировать на языке F# в частности и использовать функциональный стиль программирования в целом.
Не хочу преуменьшать ценность книги «Expert F# (Expert\'s Voice in .Net)» Дона Сайма (Don Syme) (создателя языка F#), но она не так хороша для начинающих осваивать функциональное программирование, как книга «Программирование на F#». При этом книга Дона Сайма могла бы служить отличным продолжением после прочтения этой книги.
Самое важное качество этой книги – простота описания различных концепций и хорошо подобранные примеры, поясняющие эти концепции, краткие и всегда по существу. Благодаря этому книга получилась на удивление небольшой (менее 400 страниц). Но это не является ее недостатком – здесь вы найдете все необходимые начальные сведения о языке F#.
Эта книга действительно заслуживает пяти звезд. Настоятельно рекомендую.
PC (Сиэтл, Вашингтон, США)
Отличная книга для начинающих осваивать функциональное программирование и язык F#
Книга «Программирование на F#» Криса Смита (Chris Smith) представляет собой удивительно простое и исчерпывающее описание нового и перспективного языка программирования F#, созданного в компании Microsoft, и функционального программирования вообще. Я внимательно следила за ходом разработки языка F#, хотя и издалека, потому что сфера моих профессиональных интересов – математика, и с нетерпением ждала возможности использовать F#. С выходом второй бета-версии Visual Studio 2010 мы получили очень стабильную реализацию этого функционального языка программирования, который книга Криса Смита объясняет с достаточной глубиной и выразительностью.
Я настоятельно рекомендую эту книгу всем, кто хотел бы получить общее представление, а также изучить особенности новой парадигмы программирования, которая позволяет человеку выражать свои мысли более естественным способом.
Марджери Пигнателли (Margery Pignatelli) (Личфилд, Коннектикут, США)
Отличная книга для любого разработчика
Эта книга – фантастическое введение не только в язык F#, но также в функциональное программирование и в иной способ решения задач. Я рекомендую ее всем разработчикам, даже тем, кто придерживается императивных языков программирования. Она поможет вам расширить кругозор и стать более квалифицированным и более всесторонним разработчиком.
Кроме того, не хотелось бы отрицательно отзываться о другой книге, тем не менее, есть другая книга подобного рода, которую невозможно читать. Несвязная, растекающаяся мыслью по древу. Эта же книга, напротив, гораздо более методичная и последовательная.
Майкл Дж. Баррейро (Michael J. Barreiro ) (Сакраменто, Калифорния, США)
С 2011 года книга «Программирование на F#» переиздавалась 4 раза.
Дата первого издания «Программирование на F#»: марта 2011 года, последнее, 4-е издание вышло
в мартае 2011 года.
Сейчас книгу можно купить в 2 изданиях на бумаге, скачать файл с электронной книгой.