دوره آموزشی یادگیری جامع اسکالا برای علوم داده
2 ساعت 14 دقیقهمتوسط2025-07-11
مدرسین

Dan Sullivan
Enterprise Architect, Big Data Expert
جزئیات دوره
توی این دوره آموزشی، با زبان برنامهنویسی اسکالا (Scala) که یه زبان تابعمحور (functional programming) و خیلی قدرتمنده، آشنا میشی. مدرس این دوره، دن سالیوان (Dan Sullivan)، تمرکز اصلی رو گذاشته روی چیزایی که برای دانشمندای داده (Data Scientists) مهمتر و کاربردیتره؛ مثل ساخت توابع سفارشی، پردازش موازی (parallel processing) و برنامهنویسی با Spark به کمک اسکالا.
دن اول یه معرفی کوتاه از اسکالا داره، مخصوص کسایی که قبلاً با زبانهایی مثل پایتون (Python) یا جاوا (Java) کار کردن. بعد از اون میره سراغ اینکه چطور میشه از طریق اسکالا به SQL دسترسی داشت. این بخش خیلی به درد دیتا ساینتیستها میخوره چون معمولاً باید دادهها رو از پایگاه دادههای رابطهای (Relational Databases) استخراج کنن.
در ادامه، وارد دنیای پردازش موازی توی اسکالا میشیم. این روشها برای تحلیل دیتاستهای با اندازه متوسط که میتونن روی یه سرور با چند تا هسته پردازشی انجام بشن، خیلی مفیدن. اما وقتی حجم دادهها بالا میره، دیگه سرورهای معمولی جواب نمیدن. اینجاست که پای پردازش توزیعشده (Distributed Processing) وسط میاد؛ مثل Apache Spark که تو این دوره دو فصل کامل بهش اختصاص داده شده تا یاد بگیری چطور با اسکالا از Spark استفاده کنی.
در آخر هم یه جمعبندی از مزایای اسکالا برای علم داده ارائه میشه. اگه دنبال یه زبان سریع، قدرتمند و قابل اطمینان برای تحلیل دادههای بزرگ هستی، اسکالا یکی از بهترین انتخابهاست.
🎯 اهداف یادگیری
آشنایی با اصول پایه زبان اسکالا برای برنامهنویسهای پایتون و جاوا
یادگیری ساخت توابع سفارشی در اسکالا
استفاده از SQL داخل اسکالا برای استخراج دادهها
پیادهسازی پردازش موازی برای تحلیل دیتاستهای متوسط
برنامهنویسی توزیعشده با Apache Spark به کمک اسکالا
درک مزایای استفاده از اسکالا در پروژههای علم داده
آمادهسازی ذهن برای استفاده حرفهای از Scala در محیطهای واقعی و پیچیده دادهمحور
دن اول یه معرفی کوتاه از اسکالا داره، مخصوص کسایی که قبلاً با زبانهایی مثل پایتون (Python) یا جاوا (Java) کار کردن. بعد از اون میره سراغ اینکه چطور میشه از طریق اسکالا به SQL دسترسی داشت. این بخش خیلی به درد دیتا ساینتیستها میخوره چون معمولاً باید دادهها رو از پایگاه دادههای رابطهای (Relational Databases) استخراج کنن.
در ادامه، وارد دنیای پردازش موازی توی اسکالا میشیم. این روشها برای تحلیل دیتاستهای با اندازه متوسط که میتونن روی یه سرور با چند تا هسته پردازشی انجام بشن، خیلی مفیدن. اما وقتی حجم دادهها بالا میره، دیگه سرورهای معمولی جواب نمیدن. اینجاست که پای پردازش توزیعشده (Distributed Processing) وسط میاد؛ مثل Apache Spark که تو این دوره دو فصل کامل بهش اختصاص داده شده تا یاد بگیری چطور با اسکالا از Spark استفاده کنی.
در آخر هم یه جمعبندی از مزایای اسکالا برای علم داده ارائه میشه. اگه دنبال یه زبان سریع، قدرتمند و قابل اطمینان برای تحلیل دادههای بزرگ هستی، اسکالا یکی از بهترین انتخابهاست.
🎯 اهداف یادگیری
آشنایی با اصول پایه زبان اسکالا برای برنامهنویسهای پایتون و جاوا
یادگیری ساخت توابع سفارشی در اسکالا
استفاده از SQL داخل اسکالا برای استخراج دادهها
پیادهسازی پردازش موازی برای تحلیل دیتاستهای متوسط
برنامهنویسی توزیعشده با Apache Spark به کمک اسکالا
درک مزایای استفاده از اسکالا در پروژههای علم داده
آمادهسازی ذهن برای استفاده حرفهای از Scala در محیطهای واقعی و پیچیده دادهمحور
مهارت ها
ScalaApache SparkApacheData Science FoundationsSQLDatabase AdministrationData EngineeringDatabase DevelopmentDatabase ManagementData AnalysisProgramming LanguagesData ScienceBusiness Analysis and StrategyBusiness Software and ToolsOpen SourceSoftware DevelopmentOne-Off
سرفصل ها
۰. مقدمه
- 01 - خوش آمدید
- 02 - آنچه باید بدانید
- 03 - استفاده از فایلهای تمرین
- 04 - گشتی در CoderPad
۱. مقدمهای بر اسکالا
- 05 - مزایای اسکالا برای علم داده
- 06 - نصب اسکالا
- 07 - انواع داده اسکالا
- 08 - کار با انواع داده در Scala REPL
- 09 - مقدمه چالش - ایجاد متغیرها
- 10 - راه حل - ایجاد متغیرها
- 11 - مجموعههای اسکالا
- 12 - عملیات روی مجموعهها
- 13 - عملیات روی آرایهها، بردارها و محدودهها
- 14 - عملیات روی نقشهها
- 15 - مقدمه چالش - ایجاد آرایهها، بردارها و محدودهها
- 16 - راه حل - ایجاد آرایهها، بردارها و محدودهها
- 17 - عبارات اسکالا
- 18 - مقدمه چالش - ایجاد عبارات
- 19 - راه حل - ایجاد عبارات
- 20 - توابع اسکالا
- 21 - مقدمه چالش - ایجاد توابع
- 22 - راه حل - ایجاد توابع
- 23- ایجاد کلاسها در اسکالا
- 24- ایجاد عملیات در اسکالا
- 25- مقدمه چالش - تعریف یک کلاس
- 26 - راه حل - تعریف یک کلاس
۲. پردازش موازی در اسکالا
- 27 - مزایای مجموعههای موازی
- 28 - ایجاد مجموعههای موازی
- 29- مقدمه چالش - ایجاد مجموعههای موازی
- 30 - راه حل - ایجاد مجموعههای موازی
- 31 - نگاشت توابع روی مجموعههای موازی
- 32 - فیلتر کردن مجموعههای موازی
- 33 - چه زمانی از مجموعههای موازی استفادهکنیم و چه زمانی نکنیم
۳. استفاده از SQL در اسکالا
- 34- نصب PostgreSQL
- 35 - بارگذاری دادهها در PostgreSQL
- 36- اتصال به PostgreSQL
- 37 - کوئری با رشتههای SQL
- 38 - پرسوجو با دستورات آماده
- 39- خلاصه SQL در اسکالا
۴. دیتافریمهای اسکالا و اسپارک
- 40- مقدمهای بر اسپارک
- 41- نصب دسکتاپ داکر
- 42- نصب اسپارک با استفاده از داکر
- 43- ایجاد DataFrames در Spark
- 44- گروهبندی و فیلتر کردن DataFrames
- 45- اتصال DataFrames
- 46 - کار با فایلهای JSON
- 47- چالش - توابع روی DataFrames
- 48- راه حل - توابع روی DataFrames
۵. مجموعه دادههای اسکالا و اسپارک
- 49- مقدمهای بر مجموعه دادههای اسپارک
- 50- ایجاد مجموعه دادههای اسپارک
- 51- اعمال توابع لامبدا به مجموعه دادهها
- 52- چالش - ایجاد یک مجموعه داده
- 53 - راه حل - ایجاد یک مجموعه داده
نتیجهگیری
- 54 - مراحل بعدی