Начало работы с F#
Как мне начать изучать F#?
Какие хорошие начальные примеры для изучения языка или изучения некоторых его преимуществ перед другими языками?
Какие инструменты мне нужны (например, Windows, Visual Studio, ...)?
3 ответа
Официальная точка входа здесь: Microsoft F# Developer Center
Для быстрого вкуса, попробуйте F# в вашем браузере (Silverlight). (содержит интерактивные учебные руководства)
Начните с просмотра видео и презентаций (кстати, "Введение в Microsoft F# " Луки Болоньезе до сих пор остается одной из лучших презентаций по этому вопросу). Затем прочитайте следующие две обязательные к прочтению книги:
- Программирование на F#: Крис Смит : подробное руководство по написанию простого кода для решения сложных задач
- Эксперт F# 2.0 (голос эксперта в F#) Дона Сайма, Адама Гранича и Антонио Чистернино
и в дополнение к этому...
Быстрые ссылки
- Visual Studio (F# является стандартной функцией профессиональных выпусков VS2010 и VS2012)
- Получить инструменты F# для Visual Studio 2012 Express для Web (информация о бесплатном выпуске инструментов 2012)
- Загрузите F# Ноябрь 2010 CTP ( информация о выпуске бесплатных инструментов 2010)
- Изучите F# через ресурсы MSDN
- Спецификация языка F# 2.0 ( PDF) (появится спецификация F# 3.0)
- Документы MSDN для F# ( справочник по языку, справочник по библиотеке)
- Программирование на F# в Wikibooks (есть много примеров)
- Образцы и прохождения F#
- Образец пакета F# 3.0
- Обучающие программы в браузере на Try F# (требуется Silverlight)
- Фонд F# имеет много ресурсов
сообщество
Вопрос &
- F# теги здесь, на Stackru
- Форум F# MSDN
- F# на fpish
Блоггинг / издательство
- Блоги сообщества F#
- агрегатор http://fpound.net/
- F# в твиттере
- F# на github ( fsharpx)
- Блог команды F#
Встречи Группы
- New York City F# Группа пользователей
- Чикаго F# Пользователи
- Группа пользователей F# Сиэтл
- Группа пользователей San Francisco Bay Area F#
- F# Неофициальные лондонцы Meetup Group
- Цюрих FSharp Users Meetup Group
Видео
- F# видео на 9 канале
- F# "Как я...?" видео на MSDN
Другие Книги
- Основы F# (Голос эксперта в.Net) Роберта Пикеринга (май 2007)
- Начало F# Робертом Пикерингом (декабрь 2009)
- Функциональное программирование в реальном мире, Томас Петричек и Джон Скит (январь 2010)
- Visual F# 2010 для технических вычислений, доктор Джон Харроп (апрель 2010)
- Дружественный F# Джулией Костантини и Джузеппе Маджоре (август 2011)
Необходимые инструменты
Visual Studio:
- F# встроен в профессиональные издания VS2010 и VS2012.
- F# доступен как дополнительный компонент для Visual Studio 2012 Express для Web; получить инструменты здесь.
- В качестве альтернативы вы также можете установить интегрированную оболочку VS2010 ( скачать бесплатно). Затем установите CTP MSI для бесплатной версии F# 2.0 для VS2010.
MonoDevelop:
Способ, которым я узнал F#, должен был пройти следующие 3 шага.
Сначала я ознакомился с введением на веб-сайте Try F#, которое дает хорошее (но легкое) интерактивное введение в синтаксис и стиль языка.
Затем, чтобы почувствовать реальное решение проблем на языке, я начал решать некоторые головоломки на сайте Project Euler. Я решил первые десять проблем, и после каждой успешной проблемы я искал альтернативную реализацию F# здесь. Это дало хорошее представление о том, как работать с последовательностями и использовать рекурсию, и просто в целом освоиться с синтаксисом.
Наконец, я прочитал действительно превосходное руководство из 30 пунктов. Зачем использовать F# на http://fsharpforfunandprofit.com/. Он шаг за шагом знакомит вас со всеми основными частями языка, в которых описывается, как вы можете их использовать - с оглядкой на разработчиков на C#. После этого я призываю вас поискать другие ресурсы на сайте, они все очень хорошо написаны и очень проницательны.
После выполнения этих шагов вы должны быть готовы начать создание реального проекта на F#.
Брайан уже собрал большой список, но я смиренно представляю свой небольшой вклад в богатую экосистему учебных материалов F#, Коанов- простой, увлекательный и интерактивный способ изучения языка F# с помощью тестирования.