آموزش Android Jetpack Compose: The Comprehensive Bootcamp

Android Jetpack Compose: The Comprehensive Bootcamp

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: توسعه برنامه اندروید Kotlin: Firebase Firestore، Hilt & Dagger، ROOM DB، ViewModel، Navigation & Clean Architecture آموزش الگوهای Clean Architecture و MVVM با Android Jetpack Compose Master Jetpack نوشتن و ساخت برنامه های مدرن اندروید ساخت 7 برنامه اندروید با Jetpack Compose و Kotlin - استفاده از Firebase Firestore for the Backend Master توسعه اندروید مدرن بهترین روش با ابزارهای Jetpack و Compose Leverage Hilt and Dagger و افزودن Dependency Injection به Jetpack Compose Android Build، از ابتدا، رابط های کاربری بومی زیبا با Jetpack Compose - یک رویکرد اعلامی برای ساخت برنامه های اندرویدی مدرن ادغام پایگاه داده Android ROOM در یک برنامه Compose پیش نیازها: تجربه برنامه نویسی پایه به طور کلی مفید است اما لازم نیست. این دوره همه چیزهایی را که برای ساختن برنامه‌های اندرویدی با اصول Kotlin و Jetpack Compose Kotlin در این دوره نیاز دارید را پوشش می‌دهد.

**این دوره برای مبتدیان و توسعه دهندگان پیشرفته طراحی شده است**

Android Jetpack Compose یک روش جدید برای ساخت برنامه‌های اندرویدی مدرن در توسعه برنامه‌های اندروید است.

صنعت توسعه نرم‌افزار در حال دور شدن از رویکرد ضروری ساخت برنامه‌ها است - جایی که توسعه‌دهندگان باید کدهای زیادی را بنویسند، در میان APIهای متناقض پیمایش کنند، و نگهداری کد برای ساخت برنامه‌های تلفن همراه ساده دشوار است.

با Jetpack Compose، ساختن Native UI برای پلتفرم Android آسان‌تر، مختصر، سازگارتر و کد کمتری است.

Jetpack Compose ابزار جدید مدرنی است که به توسعه دهندگان اندروید راهی ساده و سریع برای ساختن رابط کاربری بومی در اندروید - با این جعبه ابزار می دهد. توسعه دهندگان می توانند با استفاده از Kotlin برنامه های اندرویدی را با کد کمتری بسازند!

Jetpack Compose یک تغییر پارادایم در توسعه اندروید به ارمغان می آورد - اکنون به جای تعیین مراحل ساخت یک رابط کاربری، رابط کاربری را توصیف می کنیم. با Jetpack Compose، زمان توسعه تسریع می‌شود، زیرا می‌توانیم در حین توسعه رابط‌های کاربری در Android Studio، با پیش‌نمایش‌های زنده سریع تکرار کنیم.

با Jetpack، ایجاد انیمیشن‌های شیک و استفاده از طراحی متریال کار بسیار آسانی است، زیرا این جعبه ابزار توسط APIهای پلتفرم Android و APIهای بصری Kotlin پشتیبانی می‌شود.

این دوره با Jetpack Compose و Kotlin برنامه‌های به‌روز در حال توسعه را برای شما به ارمغان می‌آورد.

شما از اصول عملکرد Composable برای نحوه مدیریت وضعیت در Compose و نحوه ساخت برنامه‌های اندرویدی کامل که از قدرت کامل Jetpack Compose و Kotlin استفاده می‌کنند، یاد خواهید گرفت.


این دانشجوی ایده آل برای این دوره چه کسی است؟

این دوره برای مبتدیان و توسعه دهندگان پیشرفته طراحی شده است

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

من ساختار دوره را به گونه‌ای تنظیم کرده‌ام که حتی اگر هرگز در Kotlin برنامه‌نویسی نکرده‌اید، قبل از اینکه به یادگیری Jetpack Compose بروید، این فرصت را داشته باشید که مفاهیم پایه، متوسط ​​و پیشرفته Kotlin را بیاموزید.

از طرف دیگر، اگر قبلاً به خوبی از Kotlin آگاهی دارید، می توانید از بخش های Kotlin به طور کلی صرف نظر کنید و به بخش Jetpack Compose بروید.


چه چیزی یاد خواهید گرفت؟

این دوره جامع است، به این معنی که تصور نمی‌کنم به طور کلی تجربه زیادی در توسعه برنامه‌های Android داشته باشید، بنابراین تمام مفاهیمی را که برای شروع به آن نیاز دارید آشنا خواهم کرد. این یک دوره جامع با اطلاعات زیادی است. در اینجا چند مفهوم کلیدی وجود دارد که باید یاد بگیرید:

  • Jetpack Compose چیست و مزایای آن نسبت به روش ضروری ساخت برنامه‌های Android

  • اصول برنامه نویسی Kotlin، مفاهیم متوسط ​​و پیشرفته (اختیاری - در صورت نیاز می توانید از آن صرف نظر کنید)

  • مفاهیم Core Jetpack Compose: توابع قابل ترکیب، ویجت‌های چیدمان نوشتن و اصلاح‌کننده‌ها

  • با نحوه سفارشی کردن عناصر UI در Compose آشنا شوید

  • درک کنید که Jetpack Compose چگونه حالت - Recomposition و State Hoisting را مدیریت می کند

  • با نحوه ایجاد یک رابط کاربری بومی برای دستگاه‌های Android با استفاده از توابع Composable که فاقد حالت هستند آشنا شوید

  • درک نحوه کار MutableState و Flow با توابع Composable

  • نحوه ساختن 8 برنامه Jetpack Compose را که از ساده تا پیچیده را شامل می شود (ماشین حساب نکته، برنامه فیلم، برنامه یادداشت، برنامه Trivia، برنامه پیش بینی آب و هوا و موارد دیگر) مسلط شوید

  • در حین یادگیری Jetpack Compose (البته!) برنامه های زیادی بسازید

  • با نحوه ساختار و ساخت برنامه های Compose با Clean Architecture، MVVM، ViewModel، Coroutines آشنا شوید

  • برنامه‌هایی بسازید که از پایگاه داده ROOM Android استفاده می‌کنند

  • با نحوه تجزیه و تحلیل داده‌های JSON از APIها با استفاده از Retrofit آشنا شوید

  • با نحوه استفاده از Jetpack Navigation Components برای کمک به ایجاد ساختار پیمایش در برنامه Compose خود آشنا شوید

  • با نحوه استفاده از Dependency Injection با Hilt و Dagger برای ساختن برنامه‌هایی با قابلیت بازگردانی و آزمایش آسان آشنا شوید

  • یک برنامه capstone (A.Reader) بسازید که از Firebase Firestore برای احراز هویت کاربران و ذخیره کتاب‌ها استفاده می‌کند

  • و خیلی چیزهای دیگر (برنامه درسی را بررسی کنید تا لیست کامل موضوعات را دریافت کنید!)

در پایان دوره، همه چیزهایی را که باید در مورد Kotlin و Jetpack Compose برای ساختن رابط‌های کاربری پیچیده بومی و برنامه‌های Android با Jetpack Compose بدانید، یاد خواهید گرفت.


آن را بدون ریسک امتحان کنید

این دوره با 30 روز ضمانت بازگشت وجه ارائه می شود - اگر متوجه شدید که برای شما مناسب نیست، می توانید پول خود را پس بگیرید، بدون سوال!

امروز ثبت نام کنید و با Jetpack Compose ساختن برنامه‌های Android مدرن را شروع کنید - روشی جدید برای ایجاد رابط کاربری سریع، مختصر و قدرتمند Android Native.

من نمی توانم منتظر باشم تا شما را در دوره ببینم!


به زودی می بینمت.


پائولو :)



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

معرفی Introduction

  • معرفی Introduction

  • مسیر یادگیری دوره - لطفا این را تماشا کنید Course Learning Path - Please Watch this

کد منبع دوره Course Source Code

  • کد منبع را دانلود کنید Download Source Code

پیام مهم Important Message

  • پیام مهم Important Message

راه اندازی ماشین WINDOWS برای توسعه WINDOWS Machine Setup for Development

  • نصب Android Studio و Setup Installing Android Studio and Setup

  • اختیاری: رفع مشکلات VTX در ویندوز OPTIONAL: Fixing VTX Issues on Windows

  • ایجاد یک ماژول Kotlin و اجرای آن Creating a Kotlin Module and Running it

  • Kotlin Playground - ویرایشگر کد آنلاین Kotlin Playground - Online Code Editor

راه اندازی ماشین MAC برای توسعه MAC Machine Setup for Development

  • اندروید استودیو را نصب و راه اندازی کنید Install and Setup Android Studio

  • یک ماژول Kotlin در یک پروژه اندروید ایجاد کنید Create a Kotlin Module in a Android Project

  • Kotlin Playground - ویرایشگر کد آنلاین Kotlin Playground - Online Code Editor

[ساخت برنامه - BizCard] - اولین برنامه نوشتن Jetpack خود را بسازید [Build an App - BizCard] - Build Your First Jetpack Compose App

  • نسخه نمایشی برنامه App Demo

  • راه‌اندازی برنامه BizCard - طرح‌بندی و پیش‌نمایش سطح نوشتن Android Setting Up BizCard App - Android Compose Surface Layout and Preview

  • ایجاد یک کارت و تغییر ویژگی های آن با Modifier Creating a Card and Changing Its Properties with Modifier

  • افزودن تصویر نمایه Adding the Profile Image

  • اضافه کردن یک ستون و یک تقسیم کننده Adding a Column and a Divider

  • [چالش] - پارامترهای تقسیم کننده را تغییر دهید [CHALLENGE] - Change Divider's Parameters

  • [راه حل چالش] - پارامترهای تقسیم کننده [CHALLENGE SOLUTION] - Divider Parameters

  • افزودن بخش اطلاعات کارت Adding the Card Info Section

  • اضافه کردن دکمه نمونه کارها Adding the Portfolio Button

  • عملکرد قابل ترکیب محتوا را ایجاد کنید Create the Content Composable Function

  • اضافه کردن LazyColumn Layout و Toggle Functional Adding a LazyColumn Layout and the Toggle Functionality

  • لمس نهایی به برنامه BizCard Final Touches to the BizCard App

  • چه خبر بعدی What's Next

اصول زبان برنامه نویسی کاتلین - انواع متغیر Kotlin Programming Language Fundamentals - Variable Types

  • بخش مقدمه Section Introduction

  • کلمات کلیدی Kotlin var و val Kotlin var and val Keywords

  • مقداردهی اولیه متغیرها Initializing Variables

  • مقدمه ای بر انواع متغیر - Int و String Intro to Variable Types - Int and String

  • انواع پایه در کاتلین Basic Types in Kotlin

  • نوع بلند The Long Type

  • انواع نقطه شناور Floating Point Types

  • اپراتورهای کاتلین Kotlin Operators

  • خلاصه بخش Section Summary

اصول کاتلین - حلقه ها و شاخه ها Kotlin Fundamentals - Loops and Branching

  • مقدمه بخش - حلقه ها و انشعاب ها Section Introduction - Loops and Branching

  • عبارت If و When عبارت The If Statement and When Expression

  • وقتی بیان - محدوده When Expression - Range

  • حلقه برای The For Loop

اصول کاتلین - توابع Kotlin Fundamentals - Functions

  • بخش مقدمه - توابع Section Introduction - Functions

  • یک تابع ساده کاتلین ایجاد کنید Create a Simple Kotlin Function

  • توابع با پارامترهای Int Functions with Int Parameters

  • افزودن پارامترهای بیشتر به یک تابع Adding More Parameters to a Function

  • آرگومان های پیش فرض و آرگومان های نامگذاری شده Default Arguments & Named Arguments

  • توابع و انواع بازگشت Functions and Return Types

  • برگرداندن یک بولی Returning a Boolean

  • عبارات لامبدا - مقدمه Lambda Expressions - an Introduction

  • [راه حل چالش] - CatAge - به بیان لامبدا [CHALLENGE SOLUTION] - CatAge - To Lambda Expression

  • با استفاده از کلمه کلیدی لامبدا "it". Using the "it" Lambda Keyword

  • عبارات لامبدا که واحد را بر می گرداند - بی اعتبار Lambda Expressions that Return Unit - Void

  • دنباله دار لامبدا Trailing Lambda

Kotlin Fundamentals - مجموعه ها Kotlin Fundamentals - Collections

  • مقدمه ای بر مجموعه ها Introduction to Collections

  • فراخوانی روش ها در فهرست ها Invoking Methods on Lists

  • مجموعه‌های کاتلین و مجموعه‌های نقشه Kotlin Sets and Maps Collections

  • راه اندازی لیست ها Initializing Lists

  • مجموعه های خالی Empty Collections

  • فیلترهای مجموعه Collection Filters

  • خلاصه بخش - مجموعه ها Section Summary - Collections

کاتلین - مفاهیم برنامه نویسی شی گرا متوسط Kotlin - Intermediate Object Oriented Programming Concepts

  • مقدمه ای بر OOP - ایجاد کلاس اول Introduction to OOP - Create First Class

  • کلاس های کاتلین و سازندگان اولیه Kotlin Classes and the Primary Constructors

  • بلوک init The init Block

  • اضافه کردن یک تابع کلاس با پارامترها Adding a class Function with Parameters

  • وراثت و لغو Inheritance and Override

  • مراحل طراحی وراثت Inheritance Design Steps

  • مقدمه ای بر کلاس های رابط Introduction to Interface Classes

  • ایجاد یک رابط و استفاده از آن Creating an Interface and Using It

  • توابع افزونه در Kotlin Extension Functions in Kotlin

  • حذف اولین و آخرین کاراکتر پسوند - راه حل چالش Remove First and Last Character Extension Function - CHALLENGE SOLUTION

  • کلاس داده Data Class

  • خلاصه بخش - Kotlin OOP Section Summary - Kotlin OOP

کاتلین - مفاهیم پیشرفته Kotlin - Advanced Concepts

  • مقدمه ای بر ژنریک Introduction to Generics

  • با استفاده از Generics Using Generics

  • مقدمه ای بر Enums و State Introduction to Enums and State

  • بهبود Enums - کلاس های مهر و موم شده Improving Enums - Sealed Classes

  • ایجاد کلاس های مهر و موم شده Sealed Classes Creation

[Jetpack Compose] - مقدمه ای بر Jetpack Compose و Fundamentals [Jetpack Compose] - Introduction to Jetpack Compose and Fundamentals

  • مقدمه - Jetpack چیست و درک رویکرد ضروری Introduction - What's Jetpack & Understanding the Imperative Approach

  • درک یک پروژه نوشتن - مبانی - پیش نمایش و نوشتن حاشیه نویسی Understanding a Compose Project - Basics - Preview and Compose Annotation

  • ایجاد یک تابع قابل ترکیب ساده Creating a Simple Composable Function

  • توابع اصلاح کننده و ترکیب پذیر - آنها چیست؟ Modifier and Composable Functions - What are they?

  • ایجاد یک برنامه نوشتن ساده - ایجاد یک دایره Creating a Simple Compose App - Create a Circle

  • افزودن دایره به سطح اصلی Adding the Circle into the Main Surface

  • تکمیل رابط کاربری Finishing Up the User Interface

  • معرفی MutableState - افزایش شمارنده Introduction to MutableState - Incrementing a Counter

  • [رویکرد امری در مقابل اعلانی] - تفکر در نوشتن [Imperative vs Declarative Approach] - Thinking in Compose

  • بالا بردن وضعیت برنامه شمارنده پول ما Hoisting the State of Our Money Counter App

  • خلاصه بخش - Jetpack Compose و Paradigm Shift Section Summary - Jetpack Compose and Paradigm Shift

[اختیاری] راه اندازی دستگاه واقعی Android [Optional] Android Real Device Setup

  • چگونه یک دستگاه اندروید را برای توسعه راه اندازی کنیم How to Setup an Android Device for Development

[Jetpack Compose] - یک برنامه ماشین حساب نکته بسازید [Jetpack Compose] - Build a Tip Calculator App

  • نسخه نمایشی برنامه JetTip JetTip App Demo

  • ساختار JetTip و تنظیم عملکرد کانتینر The Structure of JetTip & Setting up the Container Function

  • تابع TopHeader - پایان The TopHeader Function - Finish up

  • افزودن مرز گرد برای محتوای اصلی Adding the Rounded Border for the Main Content

  • فیلدهای ورودی - ایجاد یک تابع قابل تنظیم InputField قابل تنظیم Input Fields - Creating a Customizable InputField Composable Function

  • نمایش فیلد ورودی Showing the Input Field

  • Refactoring تابع Compose InputField Refactoring the InputField Compose Function

  • ایجاد دکمه های آیکون گرد Creating Round Icon Buttons

  • تثبیت عرض فیلد ورودی Fixing the Input Field Width

  • افزودن TipRow و Slider Adding the TipRow and Slider

  • در حال تکمیل Slider Composable Finishing up the Slider Composable

  • توابع افزایش و کاهش Incrementing and Decrementing Functions

  • نمایش درصد نکته در تغییر ارزش اسلاید Showing the Tip Percentage on Slide Value Change

  • محاسبه مبلغ انعام Calculating the Tip Amount

  • مجموع محاسبات به ازای هر نفر Total per Person Calculations

  • حالت بالابر - کد Refactor و خلاصه بخش State Hoisting - Code Refactor and Section Summary

[Jetpack Compose] - ساخت برنامه فیلم - مقدمه ای بر Scaffold و LazyColumn [Jetpack Compose] - Build a Movie App - Introduction to Scaffold and LazyColumn

  • بخش مقدمه Section Introduction

  • بخش مقدمه Section Introduction

  • درک ساختار داربست Understanding the Scaffold Composable

  • استفاده از LazyColum و نمایش فیلم Using LazyColum and Showing Movies

  • هر ردیف را قابل کلیک کنید Make Each Row Clickable

  • مقدمه ای بر کامپوننت ناوبری Introduction to Navigation Component

  • راه اندازی ساختار ناوبری Setting up the Navigation Structure

  • تنظیم ساختار ناوبری - صفحه اصلی و صفحه نمایش جزئیات Setting up Navigation Structure - Home Screen and Details Screen

  • پیمایش و عبور از استدلال ها Navigating and Passing Arguments

  • پیمایش بازگشت روی دکمه برگشت کلیک کرد Navigating Back on Back button Clicked

  • افزودن TopAppBar و Back Navigation Adding the TopAppBar and Back Navigation

  • خلاصه مولفه ناوبری Navigation Component Summary

[Jetpack Compose] - برنامه فیلم - بهبودها [Jetpack Compose] - Movie App - Improvements

  • افزودن کلاس Movie Data و Dummy Data Adding Movie Data class and Dummy Data

  • استفاده از کویل برای افزودن تصاویر Using Coil to Add Images

  • افزودن قابلیت Expand روی کارت برای نمایش اطلاعات بیشتر Adding Expand Capability on the Card to show More Info

  • افزودن اطلاعات بیشتر فیلم به ردیف Adding more Movie Info into the Row

  • اتمام صفحه جزئیات Finishing Up the Details Screen

  • خلاصه بخش - بهبود برنامه فیلم Section Summary - Movie App Improvements

[Jetpack Compose] - مقدمه ای بر ViewModel - ساخت یک برنامه یادداشت [Jetpack Compose] - Introduction to ViewModel - Build a Note App

  • نسخه نمایشی برنامه را یادداشت کنید Note App Demo

  • برنامه یادداشت - راه اندازی پروژه و ایجاد یک TextField Note App - Project Setup & Creating a TextField

  • اضافه کردن TextField و یک دکمه Adding TextField and a Button

  • اضافه کردن یک کلاس منبع داده - داده های ساختگی Adding a DataSource Class - Dummy Data

  • ایجاد یک ردیف یادداشت و نمایش یادداشت های ساختگی Creating a Note Row and Showing Dummy Notes

  • افزودن و حذف یادداشت ها - نمایش آنها روی صفحه Adding and Removing Notes - Showing them on Screen

  • مدیریت وضعیت و داده در Compose - مقدمه ای بر ViewModel Managing State and Data in Compose - Introduction to ViewModel

  • ایجاد ViewModel و پیاده سازی آن Creating a ViewModel and Implementing It

[Jetpack Compose] - بهبودهای برنامه یادداشت - ROOM و Dependency Injection - Hilt [Jetpack Compose] - Note App Improvements - ROOM and Dependency Injection - Hilt

  • کاری که ما انجام خواهیم داد What We'll do

  • درک اتاق اندروید و تزریق وابستگی (DI): Hilt & Dagger Understanding Android ROOM and Dependency Injection (DI): Hilt & Dagger

  • [وابستگی های مهم] [Important Dependencies]

  • درک DI (تزریق وابستگی) و مزایای آن Understanding DI (Dependency Injection) and Its Advantages

  • دستی DI در مقابل هیلت Manual DI vs Hilt

  • راه اندازی وابستگی های Hilt در Gradle Setup Hilt Dependencies in Gradle

  • راه اندازی App Hilt AppModule و NoteAplicatio Component Setting up App Hilt AppModule and the NoteApplicatio Component

  • معماری پایگاه داده اتاق اندروید The Android ROOM Database Architecture

  • افزودن ROOM و وابستگی های Coroutine به پروژه Adding ROOM and Coroutine Dependencies to Project

  • ایجاد یک موجودیت یادداشت Creating a Note Entity

  • ایجاد کلاس RoomDatabase و DAO Creating a RoomDatabase Class and DAO

  • درک کوروتین ها و توابع تعلیق Understanding Coroutines and Suspend Functions

  • افزودن حالت جریان به توابع getNotes Adding Flow State to getNotes Functions

  • اضافه کردن ارائه دهندگان در کلاس AppModule Adding Providers in AppModule Class

  • ایجاد کلاس Repository Creating the Repository Class

  • به روز رسانی کلاس NoteViewModel Updating the NoteViewModel Class

  • تست NoteApp با پایگاه داده ROOM Testing the NoteApp with the ROOM Database

  • اضافه کردن TypeConverters و شروع به کار برنامه Adding TypeConverters and getting the App to Work

  • خلاصه بخش Section Summary

[Jetpack Compose] برنامه JetTrivia - تجزیه JSON: Retrofit and Clean Architecture [Jetpack Compose] JetTrivia App - Parsing JSON: Retrofit and Clean Architecture

  • نسخه نمایشی برنامه JetTrivia JetTrivia app Demo

  • راه اندازی پروژه - اضافه کردن تمام وابستگی ها Setting up the Project - adding all dependencies

  • Trivia JSON Payload The Trivia JSON Payload

  • راه اندازی ساختار برنامه - افزودن وابستگی های Retrofit Setup the App Structure - Adding Retrofit Dependencies

  • اضافه کردن کلاس های Hilt و Retrofit Adding Hilt Classes and Retrofit

  • ایجاد یک کلاس Wrapper برای انتشار متادیتا Creating a Wrapper Class for Emitting Metadata

  • اتمام کلاس Repository Finishing up the Repository Class

  • ایجاد کلاس ViewModel Creating the ViewModel Class

  • تست ViewModel ما و ثبت سوالات چیزهای بی اهمیت Testing our ViewModel and Logging Trivia Questions

  • Refactoring کد و نمایش نوار پیشرفت Refactoring Code and Showing the Progress Bar

  • ایجاد UI - Question Tracker Composable Creating the UI - Question Tracker Composable

  • ایجاد رابط کاربری - خط نقطه چین قابل ترکیب Creating UI - Dotted Line Composable

  • ایجاد UI - ردیف دکمه رادیویی Creating UI - Radio Button Row

  • ایجاد رابط کاربری - ردیف دکمه های رادیویی و بررسی پاسخ ها Creating UI - Radio Button Row & Checking Answers

  • اتمام منطق - برنامه کار می کند Finishing up the Logic - App Working

  • یک امتیاز سنج ایجاد کنید Create a Score Meter

  • نهایی کردن امتیاز سنج Finalizing the Score Meter

  • دریافت تعداد کل سوالات Getting Total Question Count

  • خلاصه بخش Section Summary

[Jetpack Compose] - یک برنامه پیش بینی آب و هوا بسازید [Jetpack Compose] - Build a Weather Forecast App

  • نسخه نمایشی برنامه پیش بینی آب و هوا Weather Forecast App Demo

  • راه اندازی پروژه و افزودن همه وابستگی های Gradle Setting up Project and Adding All Gradle Dependencies

  • مهم - تغییرات OpenWeather API IMPORTANT - OpenWeather API Changes

  • OpenWeather - دریافت کلید API OpenWeather - Getting the API Key

  • راه اندازی بسته ها و ساختارهای DI Setting up Packages and DI Structures

  • راه‌اندازی پیمایش برنامه - Splash Screen - قسمت 1 Setting Up App Navigation - Splash Screen - Part 1

  • نمایش SplashScreen - ادامه راه اندازی ناوبری Showing the SplashScreen - Navigation Setup Continuation

  • کنار هم قرار دادن رابط کاربری Splash Screen Putting together the Splash Screen UI

  • انیمیشن Splash Screen و حرکت به صفحه اصلی Splash Screen Animation and Navigating to Main Screen

  • کاری که تا به حال انجام داده ایم What We've Done So Far

  • راه اندازی کلاس های مدل Setting up Model Classes

  • راه اندازی رابط API آب و هوا برای بازسازی - کتابخانه HTTP Setting up the Weather API Interface for Retrofit - HTTP Library

  • ایجاد Main ViewModel و کلاس های Repository Creating the Main ViewModel and the Repository Classes

  • راه اندازی ViewModel و بازیابی JSON Payload Setting up the ViewModel and Retrieving JSON Payload

  • راه اندازی AppBar - قسمت 1 Setting up the AppBar - Part 1

  • نهایی کردن WeatherAppBar Finalizing the WeatherAppBar

  • ایجاد ابزارک های صفحه اصلی - دایره بالا Creating the Main Screen Widgets - Top Circle

  • ایجاد صفحه اصلی - نهایی کردن دایره بالا و داده ها Creating the Main Screen - Finalizing the Top Circle and Data

  • افزودن ردیف رطوبت و باد Adding Humidity Wind and Pressure Row

  • ایجاد ردیف غروب و طلوع خورشید Creating the Sunset and Sunrise Row

  • ردیف جزئیات آب و هوا Weather Detail Row

  • تکمیل ردیف جزئیات آب و هوا و صفحه اصلی Finalizing the Weather Detail Row and the Main Screen

  • اصلاح مجدد کد Refactoring the Code

  • استراحت - کاری که ما تاکنون انجام داده ایم Break - What We've Done So far

  • تنظیم فیلد جستجو در صفحه جستجو Setting up the Search Field in Search Screen

  • انتقال نام شهر به صفحه اصلی و نمایش داده های پیش بینی Passing the City Name Back to Main Screen and Showing the Forecast Data

  • تنظیم دیالوگ و منوی کشویی Setting up the Dialog and the Dropdown Menu

  • پیمایش به About، Favorites و Settings و ایجاد صفحه About Navigating to About, Favorites and Settings & Creating the About Screen

  • مقدمه ای بر ROOM و ساختار صفحه نمایش مورد علاقه Introduction to ROOM and Favorite Screen Structure

  • ایجاد یک موجودیت مورد علاقه و کلاس DAO Creating a Favorite Entity and DAO Class

  • راه اندازی پایگاه داده اتاق و مخزن Setting up Room Database and Repository

  • ایجاد کلاس FavoriteViewModel Creating the FavoriteViewModel Class

  • افزودن نماد دلخواه و ذخیره شهرهای مورد علاقه در پایگاه داده Adding the Favorite Icon and Saving Favorite Cities to Database

  • نمایش همه شهرهای مورد علاقه Showing all Favorite Cities

  • نمایش پیام نان تست هنگام ذخیره یک شهر Showing a Toast Message when a City is Saved

  • شکست - آنچه تا کنون انجام داده ایم - صفحه تنظیمات بعدی Break - What We've Done So Far - Next up The Settings Screen

  • ایجاد مدل نمای تنظیمات Creating the Settings View Model

  • کنار هم قرار دادن صفحه تنظیمات Putting Together the Settings Screen

  • ذخیره واحدهای اندازه گیری در پایگاه داده Saving Measurement Units to the Database

  • افزودن یک واحد پیش فرض Adding a Default Unit

  • نمایش واحدهای متریک و امپریال در صفحه اصلی - لمس نهایی Showing Metric and Imperial Units in Main Screen - Final Touches

  • خلاصه برنامه پیش بینی آب و هوا Weather Forecast App Summary

[Jetpack Compose] - Capstone App - Reader App - Navigation and Login [Jetpack Compose] - Capstone App - Reader App - Navigation and Login

  • نسخه نمایشی برنامه Reader Reader App Demo

  • راه اندازی Firebase Firebase Setup

  • راه اندازی Hilt و افزودن وابستگی های بیشتر Setting up Hilt and adding More dependencies

  • ذخیره یک کاربر در پایگاه داده Firestore - کاربر آزمایشی Saving a User to Firestore Database - Test User

  • راه اندازی Di - Dependency Injection با Hilt Setting Up Di - Dependency Injection with Hilt

  • ساختار پروژه و اضافه کردن همه اجزای صفحه نمایش Structuring the Project and Adding all Screen Composables

  • تنظیم ReaderScreen Enum & App Routing Setting up the ReaderScreen Enum & App Routing

  • ایجاد Navigation Composables و افزودن NavController و NavHost Classs Creating the Navigation Composables & Adding NavController and NavHost Classes

  • استفاده از Navigation برای نمایش SplashScreen Using the Navigation to Show the SplashScreen

  • ایجاد Splash Screen Creating the Splash Screen

  • متحرک سازی صفحه اسپلش Animating the Splash Screen

  • حرکت به صفحه ورود Navigating to Login Screen

  • ایجاد فرم کاربر Composable Creating the User Form Composable

  • راه اندازی Email InputField Setting up the Email InputField

  • تنظیم فرم کاربر Setting up the User Form

  • نمایش فرم ورود و دکمه ورود Showing Login Form and Login Button

  • پایان ورود و ایجاد منطق حساب Finishing Login and Create Account Logic

  • خلاصه بخش Section Summary

[Jetpack Compose] - Capstone App - Reader App: Firebase Firestore - ورود و احراز هویت [Jetpack Compose] - Capstone App - Reader App: Firebase Firestore - Login & Auth

  • معرفی بخش - Firebase Auth Section Introduction - Firebase Auth

  • راه اندازی FirebaseAuth - ورود کاربران Setting up FirebaseAuth - Login Users

  • ورود کاربر به Firebase Signing User In to Firebase

  • ایجاد کاربر در Firebase Auth Creating a User in Firebase Auth

  • ذخیره یک کاربر در Firestore هنگام ایجاد کاربران Saving a User to Firestore when Users are Created

  • دور زدن صفحه ورود اگر کاربر قبلاً احراز هویت شده باشد Bypassing the Login Screen If User is Authenticated Already

  • ایجاد مدل MUser Creating the MUser Model

  • خلاصه بخش Section Summary

[Jetpack Compose] - برنامه Capstone - برنامه Reader - صفحه اصلی [Jetpack Compose] - Capstone App - Reader App - The Home Screen

  • بخش معرفی - صفحه اصلی Section Introduction - Home Screen

  • ایجاد نوار برنامه برتر - لوگو و عنوان Creating the Top App Bar - Logo and Title

  • افزودن نماد خروج و خروج از سیستم کاربر Adding the Logout Icon and Sign out User

  • افزودن بخش TopReading Adding the TopReading Section

  • پایان بخش بالا - خواندن و نمایه کاربر Finishing up the Top Section - Reading and User Profile

  • ایجاد کارت فهرست کتاب Creating a Book Listcard

  • افزودن ساختارهای رتبه‌بندی و عنوان و نویسنده به کارت فهرست Adding the Rating and Title and Author Structures to List Card

  • ListCard - نمایش بر روی صفحه نمایش The ListCard - Showing on Screen

  • نمایش تصویر در کارت لیست Showing an Image on the List Card

  • ایجاد منطقه Reading List و افزودن کتابهای ساختگی Creating the Reading List Area and Adding Dummy Books

  • نهایی کردن صفحه اصلی (در حال حاضر) Finalizing the Home Screen (For now)

[Jetpack Compose] - برنامه Capstone - برنامه Reader - صفحه جستجو [Jetpack Compose] - Capstone App - Reader App - The Search Screen

  • بخش معرفی - صفحه جستجو Section Introduction - Search Screen

  • اضافه کردن نوار بالای صفحه جستجو Adding the TopBar of Search Screen

  • افزودن فیلد متنی جستجو Adding the Search TextField

  • تنظیمات رابط کاربری صفحه جستجو به پایان رسید Search Screen UI Setup Finished

  • راه اندازی Retrofit و Hilt DI - قسمت 1 Setting up Retrofit and Hilt DI - Part 1

  • راه اندازی کلاس Repository و Data Wrapper Setting up the Repository and Data Wrapper Class

  • بازیابی کتاب ها از Book API Retrieving Books from the Book API

  • بارگیری کتاب ها در یک مدل ترکیبی و نمونه سازی HiltViewModel Loading Books in a Composable & Instantiating a HiltViewModel

  • راه اندازی مخزن Setting Up Repository

  • ایجاد ViewModel BookSearch Creating the BookSearch ViewModel

  • آزمایش ViewModel BookSearch و نمایش کتاب ها روی صفحه Testing the BookSearch ViewModel and Showing Books on Screen

  • افزودن نشانگر پیشرفت isLoading Adding a isLoading Progress Indicator

  • در حال تکمیل رابط کاربری صفحه جستجو Finishing up the Search Screen UI

  • خلاصه بخش - صفحه جستجوی کتاب Section Summary - Search Book Screen

[Jetpack Compose] - Capstone App - Reader App: The Details Screen & Saving Books [Jetpack Compose] - Capstone App - Reader App: The Details Screen & Saving Books

  • صفحه نمایش جزئیات کتاب Book Details Screen

  • ایجاد صفحه جزئیات و ارسال شناسه کتاب Creating the Details Screen and Passing a Book Id

  • بازیابی اطلاعات کتاب از ViewModel - مقدمه ای بر ProduceState Retrieving a Book Data from ViewModel - Introduction to ProduceState

  • تنظیم صفحه جزئیات - افزودن تصویر و عنوان Setting up the Details Screen - Adding Image and Title

  • اضافه کردن توضیحات کتاب Adding the Book Description

  • افزودن دکمه های ذخیره و لغو و ایجاد کلاس مدل MBBook Adding the Save and Cancel Buttons & Creating the MBook model Class

  • ذخیره یک کتاب در پایگاه داده Firestore Saving a Book to Firestore Database

  • خلاصه بخش - جزئیات کتاب و ذخیره کتاب در Firestore Section Summary - Book Details and Saving Book to Firestore

[Jetpack Compose] - برنامه Capstone - برنامه Reader: به‌روزرسانی و حذف کتاب‌ها [Jetpack Compose] - Capstone App - Reader App: Update and Delete Books

  • بخش معرفی - صفحه اصلی - نمایش کتاب های ذخیره شده Section Intro - Home Screen - Showing Saved Books

  • راه اندازی FireRepository Setting up FireRepository

  • بازیابی و نمایش کتاب های کاربر در صفحه اصلی Retrieving and Showing User Books in Home Screen

  • راه اندازی صفحه به روز رسانی Setting up the Update Screen

  • افزودن قسمت بالای صفحه به‌روزرسانی کتاب Adding the Top Part of the Book Update Screen

  • اضافه کردن یک یادداشت TextField Adding a Note TextField

  • افزودن دکمه های متن شروع و پایان خواندن Adding the Start and Finished Reading TextButtons

  • اضافه کردن نوار امتیاز Adding the Rating Bar

  • به روز رسانی یک کتاب Updating a Book

  • قالب بندی تاریخ و نمایش پیام نان تست Formatting the Date and Showing a Toast Message

  • افزودن AlertDialog روی دکمه حذف کلیک شد Adding AlertDialog on Delete Button Clicked

  • خلاصه بخش - صفحه به روز رسانی Section Summary - Update Screen

[Jetpack Compose] - Capstone App - Reader App: Reading and Book list [Jetpack Compose] - Capstone App - Reader App: Reading and Book list Categories

  • معرفی بخش - کتاب صفحه اصلی - فیلترینگ Section Introduction - Home Screen Book - Filtering

  • فیلتر کردن کتاب‌ها به دسته‌های خوانده شده و هنوز خوانده نشده Filtering Books into Read and Not yet Categories

  • صفحه آمار کتاب - نمایش شماره کتاب خواندن و خواندن The Book Stats Screen - Showing Read and Reading Book Number

  • اتمام صفحه آمار Finishing the Stats Screen

  • لمس نهایی روی برنامه Final Touches on the App

  • [رفع] رتبه بندی کتاب نشان داده نمی شود [FIX] Book Rating Not Showing

چه خبر بعدی What's Next

  • مراحل بعدی Next Steps

جایزه Bonus

  • جایزه Bonus

نمایش نظرات

آموزش Android Jetpack Compose: The Comprehensive Bootcamp
جزییات دوره
36.5 hours
285
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
9,340
4.6 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Paulo Dichone  Software Engineer, AWS Cloud Practitioner   Instructor Paulo Dichone Software Engineer, AWS Cloud Practitioner Instructor

Android، Flutter، AWS، پرفروش ترین مربی