Pierwsze kroki z F # [zamknięte]

139

Jak przejść do programowania w języku F #?

Jakie są dobre przykłady na początek do nauki języka lub poznania niektórych jego zalet w porównaniu z innymi językami?

Jakich narzędzi potrzebuję (np. Windows, Visual Studio, ...)?

Brian
źródło
4
Czy po 120 głosach pozytywnych należy ponownie otworzyć to pytanie? Zapewnia dobre odpowiedzi na dobre pytanie, które było czytane wiele razy.
rolki

Odpowiedzi:

137

Oficjalny punkt wejścia jest tutaj: Microsoft F # Developer Center

Aby szybko spróbować, rozważ wypróbowanie F # w przeglądarce (Silverlight). (zawiera interaktywne samouczki instruktażowe)

Zacznij od obejrzenia filmów i prezentacji (BTW, An Introduction to Microsoft F # autorstwa Luca Bolognese to wciąż jedna z najlepszych prezentacji na ten temat). Następnie przeczytaj następujące dwie książki, które musisz przeczytać:

a dodatkowo ...

Szybkie linki

Społeczność

Pytania i odpowiedzi

Blogowanie / publikowanie

Grupy spotkań

Filmy

Inne książki

Potrzebne narzędzia

Visual Studio:

  • F # jest wbudowany w profesjonalne wydania VS2010 i VS2012.
  • F # jest dostępny jako składnik dodatkowy do programu Visual Studio 2012 Express dla sieci Web.
  • Alternatywnie możesz również zainstalować zintegrowaną powłokę VS2010 ( do pobrania za darmo ). Następnie zainstaluj CTP MSI , aby uzyskać bezpłatną wersję VS2010 F # 2.0.

MonoDevelop:

  • Możesz znaleźć wiele informacji o używaniu F # w MonoDevelop tutaj . Kompilator F # i fsi.exe są teraz częścią dystrybucji Mono.
Brian
źródło
1
Nie spotkałem się jeszcze z książką, którą trzeba przeczytać, jeśli chodzi o programowanie, stąd jestem raczej sceptyczny co do takich rekomendacji…
HB
3
A jeśli to zostało dodane do informacji o tagu? stackoverflow.com/tags/f%23/info
bytebuster
2
Jeśli to może pomóc, ja i ja, okazało się, że korzystać z różnych książek do różnych celów. Ekspert F # bardziej jako odniesienie (choć nie jest to czyste odniesienie) do wyszukiwania rzeczy, zaczynając F # jako książkę o kulturze, w której zawsze uczę się czegoś bardzo użytecznego, niezależnie od tego, który rozdział przeczytam, nawet podstawowych rzeczy, a RWFP jako podsumowanie tematu .
nicolas
3
Bardzo polecam też książkę Jona Harropa. Naprawdę do rzeczy, po stronie algo z fajnymi podstawowymi rzeczami. 0% odpadów. Jon lubi też noobie.
nicolas
1
@HB Myślę, że trzeba przeczytać, ale nie są one wystarczająco podstawowe i ogólne, aby zakwalifikować IMHO
nicolas
31

Sposób, w jaki nauczyłem się języka F #, polegał na wykonaniu następujących 3 kroków.

Najpierw przejrzałem wprowadzenie w witrynie Try F #, która zawiera dobre (ale lekkie) interaktywne wprowadzenie do składni i stylu języka.

Następnie, aby poczuć, jak faktycznie rozwiązywać problemy w języku, zacząłem rozwiązywać niektóre łamigłówki na stronie projektu Euler . Rozwiązałem o pierwszych dziesięciu problemów i po każdej udanej problemu, spojrzałem w górę alternatywny F # realizację tutaj . Dało to dobre wyczucie, jak pracować z sekwencjami i używać rekurencji, a także ogólnie czuć się swobodnie ze składnią.

Na koniec przeczytałem naprawdę doskonały 30-punktowy przewodnik Dlaczego używać F # na http://fsharpforfunandprofit.com/ . Prowadzi Cię krok po kroku przez wszystkie główne części języka, opisując, jak możesz je wykorzystać - z myślą o programistach C #. Następnie zachęcam do rozejrzenia się za innymi zasobami na stronie, wszystkie są bardzo dobrze napisane i bardzo wnikliwe.

Po wykonaniu tych czynności powinieneś być gotowy do rozpoczęcia tworzenia prawdziwego projektu w F #.

Morten Christiansen
źródło
3
Bardzo podoba mi się rekomendacja Eulera. Rzeczywiste rozwiązywanie problemów jest (dla mnie) najlepszym sposobem, aby naprawdę się zgłębić. Również fsharpforfunandprofit jest świetnym źródłem, które również okazało się pomocne.
Ostkontentitan
Na przykładzie projektu Euler rozwiązania dla języka f # nie wydają się być najbardziej wydajne. Problem pierwszy działa dużo lepiej z: niech problem1 = [1..999] |> List.filter (fun x -> (x% 5 = 0 || x% 3 = 0)) |> Seq.sum ;; Proponuję zmierzyć czas twojego rozwiązania i dostarczonych. stackoverflow.com/questions/4528355/…
Ostkontentitan
Zrobiłem to samo. Nauczyłem się trochę języka / składni / sposobu myślenia i poszedłem do Project Euler.
Grzegorz Gierlik
24

Brian przygotował już świetną listę, ale pokornie przedstawiam swój niewielki wkład w bogaty ekosystem materiałów do nauki języka F #, F # Koans - prosty, zabawny i interaktywny sposób nauki języka F # poprzez testowanie.

Chris Marinos
źródło
2
+1 To świetne interaktywne wprowadzenie do podstawowych pojęć, czekające na niektóre koany na poziomie zaawansowanym.
79E09796
1
Dziękuję Ci. Nauczyłem się mnóstwo z koanów i byłbym całkowicie zainteresowany niektórymi z poziomu zaawansowanego.
Tyler Smith