Bắt đầu với F # [đã đóng]


139

Làm thế nào để tôi đi vào lập trình F #?

Một số mẫu khởi đầu tốt để học ngôn ngữ, hoặc tìm hiểu về một số lợi thế của nó so với các ngôn ngữ khác là gì?

Tôi cần những công cụ nào (ví dụ: Windows, Visual Studio, ...)?


4
Với 120 phiếu bầu nên câu hỏi này được mở lại? Nó cung cấp câu trả lời tốt cho một câu hỏi hay đã được đọc nhiều lần.
cuộn

Câu trả lời:


137

Điểm vào chính thức tại đây: Trung tâm nhà phát triển Microsoft F #

Để thưởng thức nhanh, hãy xem xét thử F # trong trình duyệt của bạn (Silverlight). (chứa các hướng dẫn tương tác)

Bắt đầu bằng cách xem video và bản trình bày (BTW, Giới thiệu về Microsoft F # của Luca Bolognese vẫn là một trong những bài thuyết trình hay nhất về chủ đề này). Sau đó đọc hai cuốn sách phải đọc sau đây:

và thêm vào đó ...

đường dẫn nhanh

cộng đồng

Hỏi và đáp

Viết blog / xuất bản

Nhóm họp

Video

Những quyển sách khác

Công cụ cần thiết

Visual Studio:

  • F # được tích hợp sẵn cho các phiên bản chuyên nghiệp của VS2010 và VS2012.
  • F # có sẵn như là một thành phần bổ sung cho Visual Studio 2012 Express cho Web.
  • Ngoài ra, bạn cũng có thể cài đặt shell tích hợp VS2010 ( tải xuống miễn phí ). Sau đó cài đặt CTP MSI , cho phiên bản VS2010 miễn phí của F # 2.0.

Phát triển đơn nhân:

  • Bạn có thể tìm thấy nhiều thông tin về việc sử dụng F # trong MonoDevelop tại đây . Trình biên dịch F # và fsi.exe hiện là một phần của bản phân phối Mono.

1
Tôi vẫn chưa bắt gặp một cuốn sách "phải đọc" khi nói về lập trình, do đó tôi khá hoài nghi về các khuyến nghị sách như vậy ...
HB

3
Điều gì nếu điều này đã được thêm vào thông tin thẻ? stackoverflow.com/tags/f%23/info
bytebuster

2
Nếu nó có thể giúp, tôi và tôi, thấy rằng tôi sử dụng các cuốn sách khác nhau cho các mục đích khác nhau. Chuyên gia F # hơn là một tài liệu tham khảo (mặc dù không phải là tài liệu tham khảo thuần túy) để tìm kiếm mọi thứ, bắt đầu F # như một cuốn sách văn hóa nơi tôi luôn học được điều gì đó rất hữu ích cho dù tôi đọc chương nào, ngay cả những thứ cơ bản và RWFP như là một chủ đề .
nicolas

3
Tôi cũng rất khuyến khích cuốn sách của Jon Harrop. Thực sự đến mức, về phía algo với những thứ cơ bản tốt đẹp. Chất thải 0%. Jon cũng thích noobie.
nicolas

1
@HB Tôi nghĩ là phải đọc, nhưng những thứ đó không đủ cơ bản và chung chung để đủ điều kiện IMHO
nicolas

31

Cách tôi học F # là trải qua 3 bước sau.

Đầu tiên, tôi đã xem qua phần giới thiệu trên trang web Thử F # , giới thiệu tương tác tốt (nhưng nhẹ) về cú pháp và phong cách của ngôn ngữ.

Tiếp theo, để có cảm giác thực sự giải quyết các vấn đề bằng ngôn ngữ, tôi bắt đầu giải một số câu đố trên trang Project Euler . Tôi đã giải quyết mười vấn đề đầu tiên và sau mỗi vấn đề thành công, tôi đã tìm kiếm một triển khai F # thay thế ở đây . Điều này mang lại cảm giác tốt cho cách làm việc với các chuỗi và sử dụng đệ quy và nói chung trở nên thoải mái với cú pháp.

Cuối cùng, tôi đọc hướng dẫn 30 điểm thực sự xuất sắc Tại sao nên sử dụng F # trên http://fsharpforfunandprofit.com/ . Nó đưa bạn từng bước qua tất cả các phần chính của ngôn ngữ mô tả cách bạn có thể tận dụng lợi thế của chúng - để mắt tới các nhà phát triển C #. Sau đó tôi khuyến khích bạn tìm kiếm các tài nguyên khác trên trang web, tất cả chúng đều được viết rất tốt và rất sâu sắc.

Sau khi hoàn thành các bước này, bạn nên sẵn sàng bắt đầu tạo một dự án thực sự trong F #.


3
Tôi thực sự thích khuyến nghị Euler. Giải quyết vấn đề thực tế là (với tôi) cách tốt nhất để thực sự đào sâu. Ngoài ra fsharpforfunandprofit là một nguồn tuyệt vời tôi thấy cũng thực sự hữu ích.
Ostkontentitan

Trên các giải pháp ví dụ về dự án euler cho f # dường như không hiệu quả nhất. Vấn đề người ta thực hiện tốt hơn rất nhiều với: let Problem1 = [1..999] |> List.filter (fun x -> (x% 5 = 0 || x% 3 = 0)) |> Seq.sum ;; Tôi đề nghị đo thời gian của giải pháp của bạn và những người được cung cấp. stackoverflow.com/questions/4528355/ cường
Ostkontentitan

Tôi làm giống vậy. Đã học một chút về ngôn ngữ / cú pháp / cách suy nghĩ và đã đến Project Euler.
Grzegorz Gierlik

24

Brian đã đưa ra một danh sách tuyệt vời, nhưng tôi khiêm tốn gửi đóng góp nhỏ của mình cho hệ sinh thái phong phú của tài liệu học tập F #, F # Koans - một cách đơn giản, thú vị và tương tác để học ngôn ngữ F # thông qua thử nghiệm.


2
+1 Đây là phần giới thiệu tương tác tuyệt vời cho các khái niệm cơ bản, mong muốn một số công án cấp cao.
79E09796

1
Cảm ơn bạn. Tôi đã học được một tấn từ công án, và tôi sẽ hoàn toàn hứng thú với một số cấp độ nâng cao.
Tyler Smith
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.