نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
تسلط بر فلاتر حرفهای: ساخت یک اپلیکیشن اجتماعی مقیاسپذیر با استفاده از معماری Clean، Supabase، Riverpod و ساختار Monorepo.
معماری Clean کاربردی: یاد بگیرید چگونه با جداسازی کدها به لایههای Presentation، Domain و Data، ساختارهای اپلیکیشنی مستحکم، مقیاسپذیر و قابل تست طراحی کنید.
فولاستک با Supabase: پیادهسازی و یکپارچهسازی سیستمهای احراز هویت، پایگاه داده، ذخیرهسازی و قابلیتهای Realtime با استفاده از Supabase بدون نیاز به نوشتن بکاندهای پیچیده.
همگامسازی وضعیت با Riverpod و Event Bus: تسلط بر مدیریت وضعیت پیشرفته از طریق پیادهسازی معماری Event Bus برای حفظ یکپارچگی دادهها در صفحات مختلف.
ساخت محیط Monorepo: تجربه توسعه حرفهای با جداسازی قابلیتها در بستههای (packages) قابل استفاده مجدد برای به حداکثر رساندن بهرهوری کد.
قابلیتهای پیشرفته: پیادهسازی استانداردهای صنعتی مانند جستجوی واکنشی با Debounce، اسکرول نامحدود جهانی و سیستمهای اعلان لحظهای (Realtime).
پیش نیازها: دانش پایه فلاتر: توانایی استفاده از ویجتهای پایه و درک مفاهیم برنامهنویسی Asynchronous (async/await).
مبانی Dart: آشنایی با مفاهیم پایه OOP مانند کلاسها و ارثبری.
آشنایی با مدیریت وضعیت: تجربه کار با هر یک از راهکارهای مدیریت وضعیت (Provider, Riverpod, Bloc, GetX و غیره) مفید است. حتی اگر با Riverpod آشنا نیستید، اصول پایه شما را پیش میبرد.
مبانی SQL CRUD: درک اولیه از خواندن و نوشتن دادهها توصیه میشود. کوئریهای پیچیده و سیاستهای RLS به صورت گامبهگام در دوره آموزش داده میشوند.
ذهنیت رشد: نیازی نیست متخصص باشید. اگر اراده یادگیری معماری مقیاسپذیر را دارید، آمادهاید!
«از مبانی فلاتر فراتر بروید و به معماری تبدیل شوید که قادر به طراحی اپلیکیشنهای حرفهای و آماده برای محیط عملیاتی (Production) است.»
آیا آمادهاید تا از اپلیکیشنهای سادهای مثل Counter یا TODO عبور کنید و با چالشهای پیچیده سرویسهای دنیای واقعی روبرو شوید؟ اگر تا به حال تجربه کردهاید که با افزودن قابلیتهای جدید، کدهای شما در هم گره بخورند یا با هر تغییر کوچک، پایداری اپلیکیشن به خطر بیفتد، این دوره برای شما طراحی شده است.
این دوره فراتر از یک آموزش ساده برای ساخت اپلیکیشن است؛ این یک غوطهوری عمیق در متدولوژیهای اثباتشده توسعه برای ایجاد اپلیکیشنهای مقیاسپذیر و قابل نگهداری است که در طول زمان کارآمد باقی میمانند.
چرا این دوره در عصر هوش مصنوعی اهمیت دارد؟
در عصری که AI میتواند قطعه کدهای کوچک را در چند ثانیه تولید کند، نقش یک توسعهدهنده حرفهای چیست؟
فراتر از قطعه کدها: هوش مصنوعی در نوشتن توابع عالی است، اما هنوز نمیتواند یک سیستم پیچیده و به هم پیوسته را طراحی کند. درک معماری Clean به این معناست که شما میدانید چگونه آن قطعات تولید شده توسط AI را در یک کل مقیاسپذیر سازماندهی کنید.
مزیت معمار: همانطور که AI سد ورود به دنیای کدنویسی را پایین میآورد، بازار با «کدهای تکهتکه» پر خواهد شد. ارزش واقعی در معمار خواهد بود؛ کسی که میتواند بدهی فنی (Technical Debt) را مدیریت کند، قابلیت نگهداری را تضمین کند و یک «ظرف» مستحکم (معماری) برای نگه داشتن منطق برنامه طراحی کند.
آیندهسازی مسیر شغلی: این دوره شما را از یک «کدنویس» که دستورات را دنبال میکند، به یک «معمار» تبدیل میکند که AI را به عنوان ابزاری به خدمت میگیرد، به جای اینکه جایگزین شود.
سه ستون اصلی این دوره
ما یک اپلیکیشن «تخته گفتگوهای اجتماعی» (Community Board) با کارایی بالا را از صفر خواهیم ساخت که بر سه ستون فنی ضروری برای پروژههای بزرگ استوار است:
معماری مستحکم (Clean Architecture): نظم بخشیدن به کدهای آشفته. یاد بگیرید چگونه مسئولیتها را در لایههای مجزا تقسیم کنید و ساختاری ایجاد کنید که تست، نگهداری و تکامل آن آسان باشد.
بکاند مدرن (Supabase): عبور از تنظیمات پیچیده سرور. بهرهگیری از Supabase (یک سرویس Backend-as-a-Service قدرتمند) برای پیادهسازی پایگاه داده، احراز هویت و قابلیتهای Realtime در کمترین زمان ممکن.
مدیریت وضعیت بهینه (Riverpod و Event Bus): تسلط بر Riverpod، استاندارد صنعت برای فلاتر، و ترکیب آن با معماری Global Event Bus برای همگامسازی دادهها در صفحات مختلف با ظرافت و دقت.
ویژگیهای کلیدی یادگیری
ساخت یک اپلیکیشن اجتماعی واقعی: پیادهسازی قابلیتهای استاندارد صنعتی شامل احراز هویت، عملیات CRUD پستها، لایک/کامنت لحظهای، مدیریت پروفایل و جستجوی واکنشی.
راهاندازی حرفهای Monorepo: یاد بگیرید چگونه قابلیتها را به بستههای مستقل تقسیم کنید تا قابلیت استفاده مجدد از کد به حداکثر برسد و پروژههای بزرگ را مانند یک حرفهای مدیریت کنید.
استریمهای پیشرفته و کنترل Real-time: تسلط بر Supabase Realtime برای همگامسازی آنی دادهها و استفاده از تکنیکهای پیشرفته استریم مانند Debounce و کنترل ورودی مبتنی بر تایمر برای تجربه جستجوی بهینه.
جوهر مقیاسپذیری: طراحی معماریای چنان منعطف که بتوانید ابزار مدیریت وضعیت خود را بدون تغییر حتی یک خط از منطق اصلی کسبوکار (Business Logic) تعویض کنید.
نقشه راه برنامه آموزشی
پایهها: تسلط بر محیط VS Code و ابزارهای ضروری بهرهوری برای حذف کدهای تکراری (Boilerplate).
معماری: استقرار اصول محوری معماری Clean با تمرکز بر قانون وابستگی و جداسازی مسئولیتها.
زیرساخت: ایجاد محیط Monorepo و طراحی بکاند Supabase (شامل SQL، RLS، توابع و تریگرها).
توسعه: پیادهسازی قابلیتهای اصلی (احراز هویت، پستها، جستجو) با استفاده از Riverpod در ترکیب با Global Event Bus.
پیشرفته: بررسی عمیق Supabase Realtime برای تشخیص لحظهای دادهها و همگامسازی رابط کاربری.
سطح بعدی: بررسی نهایی پروژه و نگاه استراتژیک به نحوه گسترش این معماری به سایر کتابخانههای مدیریت وضعیت.
این دوره برای چه کسانی است؟
توسعهدهندگان فلاتری که اپلیکیشنهای پایه ساختهاند و آمادهاند تا با معماریهای حرفهای و آماده برای تولید روبرو شوند.
توسعهدهندگانی که با رشد پروژههایشان در نگهداری کد دچار مشکل شدهاند و به دنبال «معماری Clean» به عنوان یک راهکار قطعی هستند.
توسعهدهندگان مستقل یا مهندسان استارتاپی که میخواهند سریعاً اپلیکیشنهای با کارایی بالا را با استفاده از Supabase (BaaS) عرضه کنند.
جویکارانی که میخواهند مهارتهای «طراحی اپلیکیشن مقیاسپذیر» و «مدیریت Monorepo» را در پورتفولیوی حرفهای خود به نمایش بگذارند.
پیش نیازها
مبانی فلاتر و دارت: باید با ویجتهای پایه راحت باشید و درک اولیهای از برنامهنویسی ناهمگام (async/await) داشته باشید.
آشنایی با مدیریت وضعیت: تجربه کار با هر راهکاری مانند Provider، Riverpod 2، BLoC، GetX و غیره مفید است. حتی اگر با Riverpod تازهکار هستید، میتوانید مطالب را دنبال کنید.
دانش پایه SQL: درک اولیه از خواندن و نوشتن دادهها توصیه میشود. سیاستهای پیچیده پایگاه داده (RLS) و توابع به صورت گامبهگام آموزش داده میشوند.
ارائه متریال آموزشی و سورس کد
اسلایدهای PDF با کیفیت: ارائه مطالب ارائه در قالب PDF شامل تئوریهای کلیدی و نمودارهای معماری برای هر بخش. (دانلود از تب Resources هر بخش)
ارائه سورس کد نهایی:
سطح پایه: کد کامل ابزارهای بهرهوری و سینتکسهای اصلی (مانند data_class) پوشش داده شده در بخش ۲ ارائه میشود.
پروژه اصلی: ساختار Monorepo و کد پیادهسازی نهایی برای کل اپلیکیشن community_board از بخش ۴ به بعد ارائه میگردد.
لینکهای سورس کد و دستورالعملهای استفاده به طور دقیق در اولین درس از بخشهای ۲ و ۴ ارائه خواهد شد.
فقط یاد نگیرید «چطور» بسازید؛ درک کنید «چرا» اینگونه طراحی میکنیم. در این مسیر برای ارتقای مهارتهای توسعه خود به سطح بعدی با من همراه شوید!
سرفصل ها و درس ها
مقدمه
Introduction
مرور کلی آموزش
Tutorial Overview
مرور کلی اپلیکیشن Community Board
Community Board App Overview
ویژگیهای خاص و مقیاسپذیری اپلیکیشن
Special Feature & App Scalability
اپلیکیشن todo_mutation (۳): تست اپلیکیشن
todo_mutation app (3): app test
اپلیکیشن todo_mutation (۴): [عیبیابی] نمایش امن اسنکبار پس از unmount
todo_mutation app (4): [Troubleshooting] Safely showing a snackbar after unmount
اپلیکیشن todo_mutation (۵): مقایسه provider و mutation
todo_mutation app (5): provider vs mutation
اپلیکیشن login_legacy
login_legacy app
اپلیکیشن login_mutation
login_mutation app
کار با Mutation با تایپهای غیر void
Mutation with non-void type T
قابلیت احراز هویت
Authenticatioin Feature
مرور کلی سیستم احراز هویت
Authentication Overview
بخش core: خطاها و استثناها، رابط UseCase
core: Failures & Exceptions, UseCase Interface
پارامترهای نامگذاری شده خصوصی
Private Named Parameters
بخش domain: موجودیت UserEntity، رابط AuthRepository و UseCaseها
domain: UserEntity, AuthRepository Interface, UseCases
نکات احتیاطی هنگام استفاده از فایلهای barrel
Cautions when using barrel files
بخش data: مدل UserModel
data: UserModel
بخش data: رابط AuthRemoteDataSource و پیادهسازی Supabase
data: AuthRemoteDataSource Interface, SupabaseAuthRemoteDataSource
بخش data: پیادهسازی AuthRepositoryImpl
data: AuthRepositoryImpl
نمایش نظرات