Có một hướng dẫn kinh điển hoặc cuốn sách về các khái niệm lập trình chức năng? [đóng cửa]


22

Xuất thân từ một nền tảng lập trình thủ tục / OO, tôi có xu hướng viết các chương trình Scheme theo kiểu thủ tục. Tôi sẽ được xen vào việc học Scheme hoặc Lisp theo cách có chức năng từ đầu, để thiết lập lại tâm trí lập trình viên của tôi.

Có một hướng dẫn hoặc cuốn sách nào đó là tiêu chuẩn thực tế để mô tả các thực tiễn tốt nhất, phương pháp thiết kế và thông tin hữu ích khác về các khái niệm lập trình chức năng? Điều gì về cuốn sách làm cho nó đặc biệt?


Tôi sẽ bắt đầu với ccs.neu.edu/home/matthias/BTLS Lập trình hàm giống như toán học thuần túy hơn là lập trình OO. Nếu bạn nghĩ về nó theo cách đó nó có thể giúp đỡ.
Brian Makin

Nếu bạn thích nghe đọc, SICP cũng có các bài giảng video . Tôi đang ở giảng bài 6b bây giờ. :)
Dysaster

Kiểm tra Land of Lisp và làm tất cả các bài tập.
Sardathrion - Phục hồi Monica

Câu trả lời:


14

Sử dụng nó.

Nếu bạn lập trình chức năng hàng ngày, có thể là các ứng dụng hoặc bài tập nhỏ hơn từ sách, thì bạn sẽ giỏi hơn về nó.

Tôi đã sử dụng nó kể từ bài giảng lập trình đầu tiên ở trường đại học. Lúc đầu nó rất khó, vì nó quá khác biệt, nhưng bây giờ tôi thích nó hơn là lập trình bắt buộc.

Nếu bạn đang tìm kiếm một cuốn sách hay, tôi muốn giới thiệu Lập trình chức năng của Real World: Với các ví dụ trong F # và C # của Tomas PetricekJon Skeet


1
Cuốn sách cũng có thể được kiểm tra tại đây- msdn.microsoft.com/en-us/l
Gulshan

11

Cuốn sách tôi luôn thấy được đề xuất khi nói về Scheme hoặc Lisp là Cấu trúc và diễn giải các chương trình máy tính . Nó có sẵn miễn phí trên trang web đó và tôi nghĩ rằng nó được cung cấp dưới dạng PDF nếu bạn tìm kiếm xung quanh.

Tôi đã có ý định vượt qua nó, nhưng tôi không chắc khi nào mình có thời gian. Tôi không thể nhận xét về cuốn sách thực sự tốt như thế nào. Nhưng nó được nhiều người khuyên dùng, vì vậy tôi đoán nó khá tốt.

Nếu bạn quan tâm đến các ngôn ngữ lập trình chức năng khác, tôi đã được thông báo rằng việc thực hiện các bài tập bằng các ngôn ngữ như Haskell hoặc F # khá dễ dàng. Tôi nghĩ cũng có một blogger đang làm việc thông qua SICP bằng cách sử dụng Haskell và đăng các giải pháp của mình cho các bài tập, nhưng tôi không thể tìm thấy liên kết ngay bây giờ.


Bill Bill Lizard billthelizard.com là ai cho 500 xin vui lòng. Mặc dù tôi nghĩ rằng anh ấy đang sử dụng chương trình.
Brian R. Bondy

Có, tôi đồng ý với SICP là một cuốn sách tuyệt vời để học FP trong Đề án. Nếu bạn chưa kết hôn với Scheme, nhưng sẽ cân nhắc việc học Haskell thì Real World Haskell cũng là một bài đọc tuyệt vời.
Magnus

+1 cho SICP. Tôi đã làm việc với các phần của nó với Clojure, miễn là bạn sẵn sàng tập một chút thể dục dụng cụ tinh thần, tôi nghĩ rằng nó sẽ hoạt động với bất kỳ ngôn ngữ chức năng hoặc giống như Lisp nào.
mikera

2
Ngoài ra còn có Cách thiết kế chương trình , được thiết kế đặc biệt để giải quyết một số thiếu sót trong SICP, được nêu trong bài báo có tiêu đề rất dễ tiếp cận và thông minh Cấu trúc và diễn giải của Chương trình khoa học máy tính .
Jörg W Mittag

-2

Cố gắng học một số toán học và thích nghi với phong cách của nó. Chức năng là gì? Một biến là gì? Làm thế nào để các biến khác nhau từ hằng và làm thế nào để chúng không?


Điều đó không thực sự trả lời câu hỏi mà là về nơi để tìm câu trả lời cho câu hỏi bạn đang cung cấp.
Matthieu
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.