وقتی سفر خود را بهعنوان توسعهدهنده Scala آغاز میکنیم، اولین برداشت ما از زبان ممکن است "جاوای بهتر" باشد. ما در مورد کلاس ها، ویژگی ها، تطبیق الگو و برخی ساختارهای دیگر که زندگی ما را آسان تر می کند، یاد می گیریم. در برخی مواقع با روش های شگفت انگیز مرتبه بالاتر مانند نقشه، فیلتر و فولد مواجه می شویم. اینها اولین طعم عالی از برنامه نویسی کاربردی هستند.
اما اگر به شما بگویم که خیلی بیشتر از این وجود دارد چه؟ در این دوره به شما نشان خواهم داد که چگونه برنامهنویسی تابعی استاندارد میتواند به شما کمک کند کدی را بنویسید که عمومیتر، قویتر و قابل آزمایشتر باشد.
این دوره به 3 بخش اصلی تقسیم شده است.
در بخش اول با typeclasses آشنا می شویم. ما به عنوان مثالی از مشکل رمزگذاری و رمزگشایی اشیاء به بایت و از بایت ها استفاده خواهیم کرد. در پایان این بخش می توانید کلاس های نوع خود را ایجاد کنید و از الگوی typeclass برای نوشتن کد چند شکلی استفاده کنید.
در بخش دوم، ما نگاهی به برخی از رایجترین کلاسهای نوع در برنامهنویسی تابعی، از جمله Monads، Applicatives، Functors و بسیاری دیگر خواهیم انداخت. ما از کتابخانه معروف Cats استفاده خواهیم کرد تا پیاده سازی های آنها را در اختیار ما قرار دهد و از Discipline به همراه ScalaCheck و ScalaTest برای آزمایش قوانین آنها استفاده خواهیم کرد. تا پایان این بخش، میتوانید نمونههای قانونی این کلاسهای نوع را برای هر یک از انواع خود بنویسید و اعتبار آنها را به صورت خودکار آزمایش کنید.
در بخش سوم و آخر، انجام بسیاری از کارهای برنامه نویسی رایج با ساختارهای تابعی را یاد خواهیم گرفت. این وظایف عبارتند از:
- اعتبارسنجی از طریق نوع داده معتبر
- تزریق وابستگی با Reader monad
- ردیابی داده ها در محاسبات ما با Writer monad
- مدیریت ایالت با موناد ایالت
- نوشتن محاسبات ایمن پشته ای با ترامپولین
- تنبل کردن محاسبات با موناد Eval
- ساخت پشته های موناد از طریق ترانسفورماتورهای موناد مانند ReaderT و OptionT
- تعلیق جلوه ها با اجرای ساده اما مفید IO monad
من به یادگیری با انجام این کار اعتقاد زیادی دارم، تمرینهای ویدیویی زیادی را همراه با آزمونها و تکالیف در پایان هر بخش قرار دادهام. امیدوارم از انجام آنها به همان اندازه که من از کنار هم قرار دادن آنها لذت بردم لذت ببرید!
بدون مقدمه، میخواهم از شما به این دوره و دنیای هیجانانگیز برنامهنویسی کاربردی خوش آمد بگویم!
نظری ارسال نشده است.
مهندس ارشد نرم افزار
یودمی یکی از بزرگترین پلتفرمهای آموزشی آنلاین است که به میلیونها کاربر در سراسر جهان امکان دسترسی به دورههای متنوع و کاربردی را فراهم میکند. این پلتفرم امکان آموزش در زمینههای مختلف از فناوری اطلاعات و برنامهنویسی گرفته تا زبانهای خارجی، مدیریت، و هنر را به کاربران ارائه میدهد. با استفاده از یودمی، کاربران میتوانند به صورت انعطافپذیر و بهینه، مهارتهای جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.
یکی از ویژگیهای برجسته یودمی، کیفیت بالای دورهها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد میدهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و میتوانند به بهترین شکل ممکن از آموزشها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرمهای آموزشی آنلاین، به افراد امکان میدهد تا به راحتی و با کیفیت، مهارتهای مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.