برای دستیابی به مهارت در برنامه نویسی فانکشنال از کجا شروع کنیم؟

به نظر من یادگیری این سه زبان خیلی کمک می کنه Elixir ,Haskell, Clojure
اینم چند کتاب بسیار خوب برای شروع
Learn You a Haskell
Clojure For the Brave and True
Programming Elixir

یادگیری هر سه اینها واقعا عالیه.

از دوستان خواهش می کنم نظر بدن :blush:

6 پسندیده

دو کتاب که خوب

Structure and Interpretation of Computer Programs

برای خرید کتاب

ویدیو های تدریس این کتاب

و کتاب دوم
Functional Programming in Scala

4 پسندیده
  • چرا برای یادگیری برنامه نویسی فانکشنال اصلا زبان لیسپ رو مدنظر نگرفتین؟

  • آقای @samdvr کتاب اولی که معرفی کردین Structure and Interpretation of Computer Programs چطور به برنامه نویسی فانکشنال ربط داره؟

  • قبل از شروع برنامه نویسی فانکشنال یادگیری oop و دیزاین پترن هاش رو توصیه میکنین؟ :grimacing:

  • من با زبان کاتلین آشنایی دارم بنظرتون با زبان هایی که از بیس فانکشنال هستن (شما معرفی کردین) شروع کنم یا همین کاتلین خوبه؟

Structure and Interpretation of Computer Programs تمام کتابش با scheme نوشته شده که lisp هستش

خیر لزومی نداره

با یک زبان کامل فانکشنال شاید بهتر باشه ولی این کاملا بستگی به خوده شما داره
برخی از برنامه نویس ها دوست دارند FP رو با زبانی که بهش مسلط هستند یاد بگیرند
اگه میخواهی تو کاتلین FP کار کنی از کتابخانه Arrow استفاده کن

اول خودت باید انتخاب کنی که میخواهی دینامیک تایپ باشه زبان FP یا نه
اگه دینامیک بیشتر دوست داری برو سراغ لیسپ و Clojure . Elixir
اگه ستاتیک Haskell , سکالا , Kotlin …

5 پسندیده

یه نکته بگم اونم اینه که Kotlin به اندازه بقیه فانکشنال نیست اگر با مثلا scala مقایسه کنیم هرچند امکانات فانکشنال خوبی داره.
بنظر من هر زبان فانکشنالی که یاد بگیریم خوبه، اما من همیشه پیشنهاد میکنم که در کنارش حتما کمی روی Haskell هم کار بشه چون کلا دید جالبی در برنامه نویس ایجاد میکنه که در هر پردایم یا زبان دیگه ای بکار میاد.

4 پسندیده

به نظرم بستگی داره چه کسی با چه بیوگرافی شروع کنه شخصی که تازه برنامه نویسی رو می خواد شروع کنه؟ یا شخصی که قبلا روی oop کار کرده؟
چون اونی که برنامه نویسی رو با روال فانکشنال بخواد شروع کنه براش کنگ نمیشه زیاد ولی کسه که قبلا oop کار کرده یکم تغییر رویه براش سخت خواهد بود و باید قبل شروع حتما مفاهیم برنامه نویسی فانکشنال رو درک کنه تا تفاوتش رو با oop بدونه این خیلی بهش کمک می کنه چون خیلی از افراد از oop وارد fp می شن
در مورد اینکه با کدوم زبان شروع کنن Haskell پیشنهاد خوبه برای شروع fp یه جورایی میشه گفت تو این روال سکانداره اما برای برنامه نویسای oop که روی java هم کار کردن scala مورد خوبی می تونه باشه که حتی چند کتاب هم براش هست که کمک می کنه از java رو به scala بیارن مثل

image

به شخصه این کتاب رو خیلی قبول دارم حتما پیشنهاد می کنم بخونین
image

2 پسندیده