آموزش برنامه To-Do با Jetpack Compose MVVM - توسعه اندروید

To-Do App with Jetpack Compose MVVM - Android Development

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: برای تسریع توسعه UI و برنامه خود، یک برنامه To-Do با استفاده از جعبه ابزار مدرن Declarative UI به نام Jetpack Compose بسازید. توسعه برنامه Android از ابتدا برای انجام برنامه با Jetpack Compose روش جدید اعلامی ایجاد رابط کاربری معرفی با Jetpack Compose چرخه حیات ترکیب اولیه و ترکیب مجدد حالات در Jetpack Compose طرح‌بندی اثرات جانبی در Jetpack Compose ساخت کامپوننت‌های رابط کاربری سفارشی ROOM Database Dedel Navendig Injection with Dagger-Hilt Preferences DataStore پشتیبانی از تم های تیره و روشن متحرک سازی اجزای رابط کاربری متحرک Splash Screen Screen Splash متحرک برای حذف انیمیشن SharedViewModel Clean Architecture MVVM Transition Animations و بسیاری موارد دیگر! پیش نیازها:مبانی زبان برنامه نویسی کاتلین اندروید استودیو انگیزه یادگیری!

سلام و به دوره من خوش آمدید! در این دوره من به شما آموزش می‌دهم که چگونه اولین برنامه اندروید خود را از ابتدا با استفاده از یک جعبه ابزار محبوب رابط کاربری به نام Jetpack Compose بسازید.

می دانم که بسیاری از شما منتظر این لحظه بوده اید، لحظه ای که Jetpack Compose پایدار شد! اکنون زمان مناسبی است که یک توسعه دهنده اندروید باشید! با ساخت Jetpack Compose، برنامه های اندروید هیجان انگیز، سرگرم کننده و بسیار ساده تر از قبل خواهند بود. ما دیگر به XML نیاز نداریم.

در عوض، ما می‌خواهیم رابط کاربری خود را با یک فایل Kotlin معمولی، با استفاده از تمام قدرت زبان برنامه‌نویسی Kotlin بسازیم. همچنین ایجاد مؤلفه رابط کاربری سفارشی آسان‌تر بوده است. بنابراین می‌خواهید یک مؤلفه رابط کاربری سفارشی بسازید، مشکلی نیست، فقط با افزودن یک تابع ساده با حاشیه‌نویسی @Composable شروع کنید.

و البته این دوره بدون یک پروژه واقعی چگونه خواهد بود؟ برنامه To-Do ما که می خواهیم در این دوره توسعه دهیم دارای یک فعالیت واحد و Zero Fragments خواهد بود. غیر ممکن به نظر می رسد؟ خوب این نیست. بنابراین بهتر است به آن عادت کنید، زیرا این کار روند توسعه برنامه های Android را بسیار ساده می کند.

اکنون در ابتدای این دوره قصد دارم شما را با Jetpack Compose به طور کلی و همچنین با برخی از مهمترین مفاهیم آشنا کنم. شما همه چیز را در مورد چرخه حیات یک قطعه ساز و اینکه چگونه Compose Compiler تمام کارهای سخت را در پشت صحنه برای شما انجام می دهد، خواهید آموخت.


در این دوره ما قصد داریم از برخی از مهمترین اجزای معماری اندروید مانند:

استفاده کنیم

- ROOM Database: برای ذخیره و خواندن داده‌ها از یک پایگاه داده محلی، به علاوه، ما می‌خواهیم برخی درخواست‌های SQL سفارشی را نیز بنویسیم.

- Compose Navigation: بنابراین ما می توانیم بین Screen Composable های خود حرکت کنیم. و در پایان دوره همچنین یاد خواهید گرفت که چگونه چند انیمیشن انتقال زیبا را نیز اضافه کنید.

- ViewModel : که شامل تمام منطق مورد نیاز برای کار با برنامه ما است.

- Preference DataStore: برای حفظ یک جفت کلید-مقدار ساده.

- و با یک کتابخانه تزریق وابستگی محبوب به نام Dagger-Hilt آشنا خواهید شد. خواهید دید که چگونه یک ViewModel را با وابستگی های مختلف بدون نیاز به ایجاد ViewModel Factory تزریق کنید.


به‌طور پیش‌فرض برنامه ما از حالت تاریک نیز پشتیبانی می‌کند، و خواهید آموخت که چقدر آسان است که با Jetpack Compose دو موضوع مختلف از برنامه خود داشته باشید. شما همچنین یاد خواهید گرفت که چگونه اجزای رابط کاربری سفارشی خود را بسازید. ما از برخی از محبوب ترین اجزای متریال به همراه یک Scaffold استفاده خواهیم کرد که یک تابع قابل ترکیب شگفت انگیز است که از SLOT API استفاده می کند تا همه اجزای رابط کاربری شما را در مکانی که به آن تعلق دارند قرار دهیم. طبق قوانین مستندات طراحی متریال.

برنامه کاری که می‌خواهیم روی آن کار کنیم، مانند برخی از اجزای دیگر در برنامه ما، دارای یک Splash Screen متحرک خواهد بود. همچنین یک قابلیت Swipe برای حذف متحرک که به ما امکان می دهد به راحتی یک مورد را از لیست حذف کنیم. همراه با آن، ما یک ویژگی ایمنی به نام UNDO deleted item اضافه می کنیم، که هر زمان که یک مورد را از لیست حذف کنیم، SnackBar را نمایش می دهد، بنابراین می توانیم آن را با یک کلیک برگردانیم. شما با سایر موارد مرتبط با روش جدید توسعه برنامه های Android آشنا خواهید شد.

و در نهایت این دوره به طور مداوم با ویدیوهای جدید هر زمان که نیاز باشد به روز می شود. هر زمان که یک اشکال در برنامه خود پیدا کردیم، سپس یک ویدیو در مورد آن ضبط می کنم و با هم آن را برطرف می کنیم. بعلاوه در تمام این دوره با من در تماس خواهید بود و همیشه می توانید یک سوال در رابطه با این دوره از من بپرسید و حتی اگر به اندازه کافی برای یافتن آن مهارت دارید، پاکسازی کدی را برای پروژه پیشنهاد دهید.


به طور کلی این یک سفر بسیار طولانی خواهد بود.

پس چه انتظاری داری دوست من، بیایید شروع به یادگیری کنیم!


سرفصل ها و درس ها

معرفی با Jetpack Compose Introducing with Jetpack Compose

  • معرفی Introduction

  • درباره Jetpack Compose About Jetpack Compose

  • درباره Recomposition About Recomposition

  • ایالات در Jetpack Compose States in Jetpack Compose

  • چرخه زندگی را بنویسید Compose Lifecycle

  • اثرات جانبی Side Effects

  • طرح بندی ها Layouts

بیایید یک اپلیکیشن بسازیم Let's Build an App

  • پروژه جدید را ایجاد کنید Create the New Project

  • افزودن وابستگی ها Add Dependencies

  • کلاس های مدل ایجاد کنید Create Model Classes

  • معرفی با پایگاه داده ROOM Introducing with ROOM Database

  • راه اندازی پایگاه داده ROOM Setup ROOM Database

  • معرفی با تزریق وابستگی Introducing with Dependency Injection

  • معرفی با کتابخانه Dagger-Hilt Introducing with Dagger-Hilt Library

  • Dagger-Hilt را راه اندازی کنید Setup Dagger-Hilt

  • ToDoRepository را ایجاد کنید Create ToDoRepository

  • SharedViewModel را ایجاد کنید Create SharedViewModel

  • معرفی با Navigation در Jetpack Compose Introducing with Navigation in Jetpack Compose

  • تنظیم مؤلفه ناوبری Setup Navigation Component

  • صفحه فهرست - FAB List Screen - FAB

  • صفحه فهرست - نوار برنامه فهرست پیش فرض List Screen - Default List App Bar

  • فهرست صفحه - فهرست اقدامات نوار برنامه List Screen - List App Bar Actions

  • صفحه فهرست - نوار برنامه جستجو List Screen - Search App Bar

  • صفحه فهرست - نوار برنامه جستجو - قسمت 2 List Screen - Search App Bar - Part 2

  • نمایش همه وظایف - آیتم وظیفه طراحی Display All Tasks - Design Task Item

  • نمایش همه وظایف - مشاهده پایگاه داده Display All Tasks - Observe Database

  • نمایش همه وظایف - نمایش محتوای خالی Display All Tasks - Show Empty Content

  • نمایش همه وظایف - ایجاد RequestState Display All Tasks - Create RequestState

  • Task Screen - نوار برنامه جدید Task Task Screen - New Task App Bar

  • صفحه کار - نوار برنامه کار موجود Task Screen - Existing Task App Bar

  • صفحه کار - وظیفه انتخاب شده را دریافت کنید Task Screen - Get Selected Task

  • صفحه کار - کشویی اولویت Task Screen - Priority Drop-Down

  • صفحه کار - محتوای وظیفه Task Screen - Task Content

  • Task Screen - نمایش محتوای پویا Task Screen - Display Dynamic Content

  • عملیات CRUD - محدود کردن طول عنوان CRUD Operations - Limit Title Length

  • عملیات CRUD - رفع اشکال و اعتبارسنجی فیلدها CRUD Operations - Bug Fix & Fields Validation

  • عملیات CRUD - اضافه کردن کار CRUD Operations - Add Task

  • عملیات CRUD - نمایش اسنک بار CRUD Operations - Display Snack Bar

  • عملیات CRUD - به روز رسانی وظیفه CRUD Operations - Update Task

  • عملیات CRUD - حذف تک کار CRUD Operations - Delete Single Task

  • عملیات CRUD - واگرد وظیفه حذف شده CRUD Operations - Undo Deleted Task

  • عملیات CRUD - پایگاه داده جستجو CRUD Operations - Search Database

  • عملیات CRUD - حذف همه وظایف CRUD Operations - Delete All Tasks

  • گفتگوی هشدار - حذف تک کار Alert Dialog - Delete Single Task

  • گفتگوی هشدار - حذف همه وظایف Alert Dialog - Delete All Tasks

  • معرفی با DataStore Introducing with DataStore

  • مرتب سازی لیست - ایجاد DataStoreRepository List Sorting - Create DataStoreRepository

  • مرتب‌سازی فهرست - مرتب‌سازی را در فهرست اعمال کنید List Sorting - Apply Sorting in a List

  • مرتب‌سازی اولویتی کشویی و رفع تکلیف Priority Sort Drop-Down & TaskComposable FIX

  • کشیدن انگشت برای حذف - پیاده سازی Swipe to Delete - Implementation

  • برای حذف تند بکشید - قابلیت مشاهده آیتم را متحرک کنید Swipe to Delete - Animate Item Visibility

  • Splash Screen - طراحی Splash Screen Splash Screen - Design Splash Screen

  • Splash Screen - اجرای Splash Screen Splash Screen - Implement Splash Screen

  • Splash Screen - انیمیشن Splash Screen Splash Screen - Animate Splash Screen

  • ناوبری - انیمیشن های انتقال Navigation - Transition Animations

کلمه پایانی Final Word

  • کلمه پایانی Final Word

به روز رسانی دوره Course Updates

  • به روز رسانی شماره 1 - دکمه بازگشت رهگیری Update #1 - Intercept Back Button

  • به روز رسانی شماره 2 - پاکسازی کد - handleDatabaseActions() Update #2 - Code Cleanup - handleDatabaseActions()

  • به روز رسانی شماره 3 - به روز رسانی وابستگی و پاکسازی کد Update #3 - Dependency Update and Code Cleanup

  • به روز رسانی شماره 4 - تغییر پیکربندی، اسنک بار، اشکالات SearchAppBar رفع شد و موارد دیگر.. Update #4 - Configuration Change, SnackBar, SearchAppBar Bugs Fixed and more..

  • به روز رسانی شماره 5 - پاکسازی پروژه Update #5 - Project Cleanup

  • به روز رسانی شماره 6 - تنظیم کننده های خصوصی Update #6 - Private Setters

  • به روز رسانی شماره 7 - مهاجرت به API جدید Splash Update #7 - Migrating to the new Splash API

  • به روز رسانی شماره 8 - مهاجرت کتابخانه ناوبری همراه + صفحه کلید نرم به روز شد Update #8 - Accompanist Navigation library migration + Soft keyboard updated

نمایش نظرات

آموزش برنامه To-Do با Jetpack Compose MVVM - توسعه اندروید
جزییات دوره
9.5 hours
64
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,116
4.6 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Stefan Jovanovic Stefan Jovanovic

برنامه نویس/طراح اندروید