آموزش معماری چند ماژولار کامل برای توسعه اندروید

Complete Multi-Modular Architecture for Android Development

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با Kotlin، Authentication و Mongo DB's Device Sync به عنوان پایگاه داده، یک برنامه اندرویدی چند ماژول و آماده برای صنعت بسازید. معماری چند ماژولار برای توسعه اندروید Mongo DB Mongo احراز هویت Mongo DB Realm Mongo DB Realm/Device Sync Mongo Atlas Realm Kotlin SDK همگام سازی داده ها بین مشتری و سرور Jetpack Compose Material 3 Dagger-Hilt ROOM پایگاه داده پایگاه داده Firebut authentication یک Firebuthen S. -روی ورود به سیستم با Google Splash API ضربه بزنید JWT Authentication Animation کامپوننت های UI سفارشی نرم افزار دفترچه خاطرات مجوزهای همگام سازی انعطاف پذیر نسخه کاتالوگ و موارد دیگر... پیش نیازها:زبان برنامه نویسی Kotlin اصول اولیه استودیو اندروید Jetpack Compose دانش اولیه اجزای معماری اندروید یک امتیاز مثبت است

در این دوره به شما آموزش می‌دهم که چگونه با پیاده‌سازی معماری چند ماژولار، یک برنامه اندروید بسازید. شما همه چیز را در مورد پیکربندی صحیح پروژه به منظور ایجاد یک ساختار قابل نگهداری که به راحتی رشد می کند، یاد خواهید گرفت!


Modularization یک معماری اجتناب‌ناپذیر است که روی پایه‌های کد بزرگ و سطح صنعتی کار می‌کنید که وانمود می‌کنند بیشتر گسترش می‌یابند. تقریباً هر کارفرمای ما در آنجا از تجربه شما در کار بر روی پروژه های چند ماژولار قدردانی خواهد کرد. اما زمانی که مبتدی هستید، ممکن است سخت باشد، زیرا یافتن منبع اطلاعاتی با کیفیت در مورد این موضوع دشوار است. با این حال، با این دانش، به این معنی است که در هنگام درخواست شغل، قطعاً از سایرین متمایز خواهید شد. شما احساس اعتماد به نفس خواهید داشت!


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


به این ترتیب شما نه تنها یاد خواهید گرفت که چگونه یک پروژه چند ماژول را ایجاد و نگهداری کنید، بلکه چگونه یک پروژه موجود را بازسازی کنید تا از همان معماری و ساختار پیروی کند!


ما قصد داریم با استفاده از جدیدترین APIها و فناوری‌ها برای توسعه Android، یک برنامه Diary زیبا بسازیم. مانند کتابخانه ROOM برای پایگاه داده محلی، Jetpack Compose برای ایجاد رابط کاربری برنامه ما، New Splash API، Material 3، Kotlin Coroutines، کتابخانه تزریق وابستگی Dagger-Hilt، ورود با یک ضربه با Google، احراز هویت Firebase، ذخیره سازی Firebase، احراز هویت Mongo، پایگاه داده Mongo Realm، و همچنین یک سرویس Mongo Realm/Device Sync.


با Device Sync می‌توانیم به راحتی داده‌ها را بین یک پایگاه داده سمت سرویس گیرنده (Android) و یک بک‌اند قدرتمند و کاملاً مدیریت‌شده در Atlas همگام‌سازی کنیم. با کد شبکه خارج از جعبه و حل تعارض. Device Sync مخصوصاً برای برنامه‌هایی که باید در حالت آفلاین به کار خود ادامه دهند یا برنامه‌هایی که همکاری بی‌درنگ ارائه می‌دهند مفید است.


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


با همگام‌سازی دستگاه Mongo، می‌توانید به راحتی و با کمترین تلاش، برنامه‌های آماده برای صنعت بسازید!


در پایان، این دوره چیزهای زیادی را به شما آموزش می‌دهد.

دیگر منتظر نمانید و اکنون ثبت نام کنید!


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

معرفی Introduction

  • معرفی Introduction

  • پیش نمایش پروژه کاربردی Application Project Preview

  • آیا این دوره برای شما مناسب است؟ Is this the right course for you?

  • ساختار این دوره چگونه است؟ How is this course structured?

  • ایجاد پروژه جدید Creating the new Project

  • اضافه کردن یک تم متریال سفارشی 3 Adding a Custom Material 3 Theme

  • کد منبع پروژه Project's Source Code

صفحه معرفی Splash Screen

  • Splash Screen را طراحی کنید Design the Splash Screen

  • Splash Screen را پیاده سازی کنید Implement the Splash Screen

راه اندازی Mongo DB Mongo DB Setup

  • معرفی با Mongo DB Introducing with Mongo DB

  • معرفی با Realm Sync Introducing with Realm Sync

  • Mongo DB Atlas - ایجاد یک پروژه جدید Mongo DB Atlas - Create a New Project

  • Mongo DB Compass را نصب کنید Install Mongo DB Compass

  • Mongo DB Atlas - ورود به سیستم Google را فعال کنید Mongo DB Atlas - Enable Google Sign in

راه اندازی ناوبری Navigation Setup

  • نمودار ناوبری را تنظیم کنید Setup the Navigation Graph

صفحه احراز هویت Authentication Screen

  • طراحی صفحه تایید هویت Design Authentication Screen

  • ورود با یک ضربه با گوگل را اجرا کنید Implement One-Tap Sign in with Google

  • یک کاربر در Mongo DB Atlas ایجاد کنید Create a User on a Mongo DB Atlas

  • ارائه دهنده احراز هویت JWT با Mongo DB JWT Authentication Provider with Mongo DB

  • به‌صورت پویا مقصد شروع را به‌روزرسانی کنید Dynamically Update the Start Destination

  • نوار وضعیت و ناوبری شفاف Transparent Status and Navigation Bar

صفحه اصلی Home Screen

  • یک HomeTopBar ایجاد کنید Create a HomeTopBar

  • کشو ناوبری را اجرا کنید Implement the Navigation Drawer

  • کلاس های مدل خاطرات و حالت خلق کنید Create Diary and Mood model classes

  • یک DateHeader به عنوان یک سربرگ چسبنده ایجاد کنید Create a DateHeader as a Sticky Header

  • یک مؤلفه DiaryHolder ایجاد کنید Create a DiaryHolder Component

  • یک مؤلفه گالری ایجاد کنید Create a Gallery Component

  • یک طرح کلکسیونی را تعریف کنید Define a Collection Schema

  • قوانین مجوز همگام سازی انعطاف پذیر را تعریف کنید Define Flexible Sync Permission Rules

  • قلمرو را پیکربندی کنید Configure the Realm

  • طرحواره را با حالت توسعه ایجاد کنید Generate the Schema with Development Mode

  • طراحی یک محتوای خانگی Design a HomeContent

  • تمام خاطرات روزانه را در برنامه بخوانید Read all Diaries inside the App

  • بعد از Splash Screen صفحه خالی را رفع کنید Fix Blank Screen after the Splash Screen

  • انیمیشن DiaryHolder's Gallery Animate DiaryHolder's Gallery

  • TopBar را در اسکرول متحرک کنید Animate TopBar on Scroll

صفحه نوشتن Write Screen

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

  • WriteContent ایجاد کنید Create WriteContent

  • شناسه خاطرات را به عنوان یک استدلال پاس کنید Pass Diary Id as an Argument

  • واکشی اطلاعات دفترچه خاطرات انتخاب شده Fetch Selected Diary Information

  • اطلاعات دفترچه خاطرات را در یک WriteTopBar تجزیه کنید Parse Diary Info within a WriteTopBar

  • درج یک دفترچه خاطرات Insert a Diary

  • تابع getSelectedDiary() را تغییر دهید Modify getSelectedDiary() function

  • به روز رسانی یک دفتر خاطرات Update a Diary

  • افزودن تاریخ/زمان سفارشی Adding a custom Date/Time

  • به روز رسانی DateTime لامبدا را برطرف کنید Fix updatedDateTime lambda

  • یک دفتر خاطرات را حذف کنید Delete a Diary

  • وقتی صفحه کلید باز می شود، صفحه را فشار دهید Push Screen when Keyboard is opened

  • تمرکز فیلدهای ورودی Input Fields Focusing

آپلود کننده گالری Gallery Uploader

  • یک مؤلفه GalleryUploader ایجاد کنید Create a GalleryUploader component

  • با Firebase وارد شوید Sign in with Firebase

  • یک مسیر تصویر از راه دور ایجاد کنید Generate a Remote Image Path

  • تصاویر گالری را در Firebase Storage بارگذاری کنید Upload Gallery images to Firebase Storage

  • URL های دانلود را از Firebase Storage دریافت کنید Get Download URL's from Firebase Storage

  • ایجاد ImagesToUpload DAO و پایگاه داده Create ImagesToUpload DAO & Database

  • مدیریت زمانی که آپلود تصویر ناموفق بود Handle when Image Upload Failed

  • پیاده سازی تصویر قابل بزرگنمایی Implement a Zoomable Image

  • بعد از تغییر جهت، صفحه سیاه نوشتن را برطرف کنید Fix a Black Write Screen after the Orientation Change

  • هنگام حذف یک دفترچه خاطرات، تصاویر را از Firebase حذف کنید Delete Images from Firebase when a Diary is Deleted

  • هنگام به روز رسانی دفتر خاطرات، تصاویر را از Firebase حذف کنید Delete Images from Firebase when Updating a Diary

  • ImagesToDelete DAO و Entity را ایجاد کنید Create ImagesToDelete DAO and Entity

فیلتر کردن خاطرات - صفحه اصلی Filtering the Diaries - Home Screen

  • حذف همه خاطرات Delete all Diaries

  • فیلتر کردن خاطرات بر اساس روز ماه Filter Diaries by the Day of the Month

مدولارسازی پروژه Project Modularization

  • معرفی با Modularization Introducing with the Modularization

  • انواع ماژول Module Types

  • معماری مدولار پروژه ما Modular Architecture of our Project

  • کاتالوگ نسخه را تعریف کنید Define a Version Catalog

  • یک دایرکتوری buildSrc ایجاد کنید Create a buildSrc Directory

  • بیایید اولین ماژول - UI را ایجاد کنیم Let's create the first Module - UI

  • یک ماژول Utility ایجاد کنید Create a Utility Module

  • یک ماژول داده ایجاد کنید Create a Data Module

  • ماژول ویژگی - احراز هویت Feature Module - Authentication

  • ماژول ویژگی - صفحه اصلی Feature Module - Home

  • ماژول ویژگی - بنویسید Feature Module - Write

  • اعمال اصلاح کننده های دید Apply Visibility Modifiers

  • پرس و جو فیلتر را برطرف کنید Fix the Filter Query

مشق شب Homework

  • تکلیف برای تمرین Homework for practice

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

  • شماره 1 «ObjectId» منسوخ شده است. به جای آن از BSON ObjectId استفاده کنید #1 'ObjectId' is deprecated. Use BSON ObjectId instead

نمایش نظرات

آموزش معماری چند ماژولار کامل برای توسعه اندروید
جزییات دوره
13 hours
78
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
702
4.7 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Stefan Jovanovic Stefan Jovanovic

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