منابعی برای یادگیری زبان برنامه‌نویسی اسکالا

منابعی برای یادگیری زبان‌برنامه‌نویسی Scala

سلام. همونطور که تو پست قبلیم گفتم، تصمیم گرفتم برای زبان‌برنامه‌نویسی آینده‌م، Scala رو انتخاب کنم، برای همین میخوام روند یادگیریم رو تا اونجا که می‌تونم تو بلاگ بنویسم. اگر شما هم مثل من به اسکالا علاقه‌مندید، یه سری منابع بعد از گشت و گذار تو اینترنت پیدا کردم که لیستشون می‌کنم شاید به دردتون خورد. البته سعی می‌کنم این لیست رو به روز نگه دارم.

منابع آنلاین:

– Functional Programming Principles in Scala : یک دوره آموزشی توی coursera

– Ninety-Nine Scala Problems:  نود و نه مساله که بیشترشون الگوریتمیکه برای یادگیری اسکالا

– Scala Best Practices : خب از اسمش معلومه، روش‌های درست برنامه‌نویسی با Scala رو یاد می‌گیرید.

Scala School:  محلی برای یادگیری اسکالا که توسط توییتر ایجاد شده

– Effective Scala : اینم یه سایت دیگه که بازم توسط توییتر پشتیبانی میشه. همونطور که میدونید توییتر با زبان اسکالا توسعه داده میشه.

A Tour of Scala : یه سایت برای یادگیری interactive زبان‌ برنامه‌نوسی اسکالا که مرحله به مرحله با نوشتن کد بهتون scala رو یاد میده.

Stackoverflow: اینم لیست مباحث و ویکی‌هایی که توسط کاربران stackoverflow ایجاد شده

A Scala Tutorial for Java Programmers: آموزش‌هایی برای برنامه‌نویسان جاوا که قصد مهاجرت به اسکالا رو دارند.

Scala Tour : یک منبع دیگه که باز هم به صورت interactive و مرحله به مرحله آموزش میده.

 

کتاب‌های آموزشی:

– Scala for the Impatient

 Programming in Scala: A Comprehensive Step-by-Step Guide : کتابی که خیلی خودندنش سفارش شده.

– Scala in Depth

Scala by example

 

به غیر از مواردی که در بالا اشاره کردم، گروه کاربران اسکالای ایران هم می‌تونه برای یادگیری کمک‌حالتون باشه. البته این گروه تا الان فقط به صورت مجازی فعالیت داره.

شما هم اگه منابع دیگه‌ای می‌شناسید می‌تونید معرفی کنید تا این لیست کامل‌تر بشه.

 

از سایت آموزشی udemy برام ایمیل فرستادن که یک بخش آموزشی اسکالا درست کردن و خواستن که اینجا معرفیش کنم. البته این ایمیلو به یکی از حسابام فرستاده بودن که یه ماه میشد بهش سر نزده بودم و چند بار ایمیل زده بودن که واقعن از تلاش و پیگیریشون متعجب شدم و این تلاششو جای تشکر داره.

 

آموزش نصب اسکالا در اوبونتو ۱۴٫۰۴

سلام، خیلی وقته که چیزی ننوشتم و این مطلب خیلی کوتاهو می‌خوام بنویسم که دستم راه بیفته. چند روز پیش با دو تا از دوستام (بهزاد و رضا) این بحث بود که بعد از کار وقت بذاریم واسه یادگیری اسکالا. همین دلیل باعث شد که اگه این حرکت پا گرفت، چیزاییو که یاد میگیرمو اینجا بنوسیم. پارسال هم یه همچین قضیه‌ای پیش اومد همه تو حرف پایه بودن ولی تو عمل نه. خدا که این سری مثل اون‌سری نشه.

Scala را به چند روش میشه نصب کرد که من تو این آموزش روش نصب به وسیله فایل‌های کامپایل‌ شده (باینری) رو میخوام توضیح بدم. برای نصب ابتدا به این آدرس رفته و فایل فشرده حاوی فایل های زبان برنامه‌نویسی اسکالا رو دانلود می‌کنیم: به شکل زیر:

download scala lang bineries

 

بعد که فایل دانلود شد با باز کردن ترمینال به مسیری میریم که فایل دانلود شده اونجا باشه. سپس دستور زیرو وارد می‌کنیم:

حالا با برای استفاده از حالت مفسر اسکالا دستور زیر رو وارد کنید:

 

شروع یادگیری چیزایی که بلد نیستم مثل Ruby

۲-۳ روز پیش تصمیم گرفتم روزانه حداقل ۲-۳ ساعت صرف یادگیری چیزایی که بلد نیستم بکنم. خب برای همینم یه لیست ازشون تهیه کردم که به شکل زیره:

خب همونطور که دیدید حجم مطالبی که می‌خوام یاد بگیرم خیلی زیاده و نمیشه همه‌شو با هم یاد گرفت و باید کم‌کم یادشون گرفت. خب برای شروع با Backbone شروع کردم به کار کردن و مثل همیشه یادگیری طی انجام یه پروژه واقعی رو بیشتر دوست دارم.  یه سری کتاب خوندم و یه چندروزی هم داکیومنت‌هاش جلوم باز بود.(کلا عادت ندارم چیزیو حفظ کنم. مخصوصا تو برنامه‌نویسی که معمولا داکیومنت‌های اون زبون برنامه‌نویسی جلوم بازه اگر چه ممکنه خیلی کم ازشون استفاده کنم). تو بخش‌هایی از پروژه‌ای که در حال انجامش بودم ازش استفاده کردم و کلیاتش اومد دستم ولی خب زیاد وقت نداشتم که عمیق بشم توش و اینکه دوست دارم فریمورک‌های دیگه رو هم امتحان کنم مثل AngularJs.
بعد از Backbone رفتم سراغ زبان برنامه‌نویسی Ruby. منبعم برای یادگیریو Codecademy انتخاب کردم چون هم با کلیات ش آشنا می‌شدم و هم اینکه دست به کد می‌شدم. «دست به کد شدن برای یادگیری برنامه‌نویسی بهترین روشه»(مریلاگ). خلاصه رفتم سراغش و  با سینتکس، دستورات کنترلی، متغیرها، دستورات شرطی و متغیرهاش آشنا شدم و به نظرم زبان خیلی راحتیه و کد زدن باهاش خیلی حال میده دقیقن مثل پایتون.
سعی می‌کنم تو مطالب بعدی، چیزایی رو که یاد گرفتمو اینجا به اشتراک بذارم تا هم برای خودم مرور بشه و هم به یادگار بمونه.
*اگه وقت کنم می‌خوام بلاگو ببرم روی یه هاست شخصی و با دامین شخصی ولی تا اون موقع اینجا می‌نویسم.