آموزش iOS 14 و SwiftUI: برنامه‌ای شبیه به اینستاگرام با Google Firebase بسازید

iOS 14 & SwiftUI: Build Instagram-like app w Google Firebase

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: یاد بگیرید که چگونه یک برنامه شبکه اجتماعی کامل از ابتدا تا انتها در سوئیفت بسازید! [front-end + back-end] چگونه یک برنامه شبیه به اینستاگرام را از ابتدا 100٪ در سوئیفت بسازیم! ایجاد صفحات زیبا با استفاده از SwiftUI (توسعه Front-end) پیاده سازی ویژگی های محبوب مانند لایک و نظر دادن در پست ها ایجاد یک پایگاه داده واقعی با استفاده از Google Firebase Firestore (توسعه پشتیبان) مدیریت ورود کاربر (ورود به سیستم با Apple + Google) و ایجاد حساب کاربری الگوریتم های سفارشی برای دانلود پست ها مدیریت کارآمد داده ها با استفاده از UserDefaults، فشرده سازی تصویر، حافظه پنهان تصویر و چند رشته ای بهینه سازی وظایف آپلود و دانلود برای تجربه کاربری بهتر ردیابی رفتار کاربر با استفاده از Firebase Analytics پیاده سازی انیمیشن های سفارشی و لمسی (ارتعاشات) بهینه سازی صفحه نمایش برای همه اندازه های آیفون، در هر دو حالت روشن و تاریک هشدارها، برگه‌های عملیاتی و سایر پنجره‌های بازشو را برای ارائه بازخورد بی‌درنگ به کاربران پیاده‌سازی کنید. برای جلوگیری از خرابی، کد ایمن و حرفه‌ای بنویسید! پیش نیازها:Xcode 12.0 یا بالاتر (برای دانلود رایگان در مک) حساب ایمیل گوگل (رایگان برای ایجاد) حساب توسعه دهنده اپل (اختیاری)

به DogGram خوش آمدید! این دوره به گونه ای طراحی شده است که همه چیزهایی را که شما نیاز دارید تا بتوانید برنامه شبکه اجتماعی خود را از ابتدا ایجاد کنید، پوشش دهد.

در بخش اول دوره، ما بر ساختن قسمت جلویی برنامه تمرکز خواهیم کرد. ما از SwiftUI برای ایجاد بیش از 15 صفحه، راه‌اندازی پیمایش و افزودن انیمیشن‌های زیبا به برنامه استفاده خواهیم کرد.

در بخش دوم، ما بر روی افزودن بک‌اند به برنامه‌مان تمرکز خواهیم کرد. ما DogGram را به Google Firebase متصل می کنیم و یک پایگاه داده زنده راه اندازی می کنیم. ما به کاربران اجازه می‌دهیم وارد سیستم شوند، حساب‌هایی ایجاد کنند، نمایه‌های خود را سفارشی کنند، و سپس پست‌ها را در زمان واقعی آپلود/دانلود کنند.

این یک برنامه کامل از ابتدا تا انتها خواهد بود!

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

رابط کاربری زیبا

  • ساخت iOS 14 با استفاده از SwiftUI 2.0

  • ایجاد بیش از 15 صفحه نمایش

  • افزودن انیمیشن های سفارشی

ویژگی های اصلی

  • کاربران می‌توانند پست‌ها را بپسندند، نظر بدهند، به اشتراک بگذارند و به‌طور هم‌زمان گزارش دهند

  • کاربران می‌توانند تصاویر را از رول دوربین + کتابخانه عکس آپلود کنند و زیرنویس‌های سفارشی اضافه کنند

پایگاه داده زنده واقعی

  • به Google Firebase Firestore متصل شد

  • ما آپلود و بارگیری داده ها را مدیریت خواهیم کرد

  • الگوریتم هایی برای دانلود پست ها بسازید

جریان ورودی سفارشی

  • با Apple Google وارد شوید

  • نمایه‌های کاربر کاملاً قابل تنظیم (نام نمایش، بیو، تصویر نمایه)

مدیریت داده

  • UserDefaults برای ماندگاری داده ها

  • فشرده سازی تصویر برای مدیریت اندازه داده ها

  • حافظه پنهان تصویر برای ذخیره داده ها به صورت محلی

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

کدگذاری هوشمند ایمن

  • عبارات "اگر اجازه" و "گارد" را برای جلوگیری از همه خرابی ها اجرا کنید

  • تجربه‌های کاربر را با استفاده از پنجره‌های بازشو و هشدارهای درون برنامه مدیریت کنید

موارد اضافی

  • افزودن Google Analytics برای ردیابی رفتار کاربر

  • افزودن لمسی (ارتعاشات) و انیمیشن های اضافی

  • چالش‌های اضافی برای یادگیری بیشتر

از اینکه دوره DogGram را بررسی کردید متشکریم! این دوره یک دوره کامل و جامع است که برای هرکسی که می‌خواهد اپلیکیشن خود را از ابتدا بسازد بسیار مناسب است. در این دوره، ما گوشه‌ها را کوتاه نمی‌کنیم و اقدامات احتیاطی بیشتری برای کدنویسی انجام می‌دهیم، مانند برنامه‌نویس‌های حرفه‌ای - گویی این در واقع در فروشگاه App استفاده می‌شود! این دوره برای همه سطوح مهارت عالی است، اگرچه درک بسیار ابتدایی Swift ترجیح داده می شود. در طول ویدیوها، من توضیح خواهم داد (به سادگی که می توانم) چه کاری انجام می دهیم و چرا آن را انجام می دهیم. هدف من این است که شما را درک کنید و فقط کپی نکنید.

پس به DogGram خوش آمدید، هیجان زده شوید، و من شما را در ویدیوی بعدی می بینم!



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

معرفی Introduction

معرفی Introduction

  • معرفی Introduction

  • معرفی Introduction

  • بررسی اجمالی دوره Course Overview

  • بررسی اجمالی دوره Course Overview

SwiftUI: ایجاد رابط کاربری SwiftUI: Creating the User Interface

  • راه اندازی Xcode Setting Up Xcode

  • افزودن نوار برگه (TabView) Adding the tab bar (TabView)

  • راه اندازی یک ساختار داده برای پست ها (PostModel) Setting up a data structure for posts (PostModel)

  • ایجاد صفحه نظرات (CommentsView) Creating the Comments screen (CommentsView)

  • ایجاد زیرنما برای نمایش نظرات (MessagesView) Creating subviews to display comments (MessagesView)

  • ایجاد صفحه مرور (BrowseView) Creating the Browse screen (BrowseView)

  • افزودن یک شبکه سفارشی برای نمایش پست ها (ImageGridView) Adding a custom grid to display posts (ImageGridView)

  • بارگذاری تصاویر از دوربین و کتابخانه عکس (ImagePicker) Uploading images from the camera and photo library (ImagePicker)

  • ایجاد صفحه برای آپلود یک پست جدید (PostImageView) Create screen to upload a new post (PostImageView)

  • ایجاد صفحه نمایه (ProfileView) Creating the Profile screen (ProfileView)

  • ایجاد صفحه تنظیمات (SettingsView) Creating the Settings screen (SettingsView)

  • ایجاد یک صفحه برای ویرایش تصویر پروفایل کاربر (SettingsEditImageView) Creating a screen to edit user's profile picture (SettingsEditImageView)

  • افزودن یک انیمیشن قلب سفارشی برای لایک کردن پست ها (LikeAnimationView) Adding a custom heart animation to like posts (LikeAnimationView)

  • افزودن قابلیت اشتراک گذاری و گزارش پست ها Adding the ability to share and report posts

  • پشتیبانی از حالت تاریک! Supporting Dark Mode!

  • رابط کاربری: بخش کامل شد! User Interface: Section Complete!

SwiftUI: ایجاد رابط کاربری SwiftUI: Creating the User Interface

  • راه اندازی Xcode Setting Up Xcode

  • نماد برنامه و صفحه راه اندازی App Icon & Launch Screen

  • نماد برنامه و صفحه راه اندازی App Icon & Launch Screen

  • افزودن نوار برگه (TabView) Adding the tab bar (TabView)

  • ایجاد صفحه فید و یک الگو برای پست ها (FeedView & PostView) Creating the Feed screen and a template for posts (FeedView & PostView)

  • ایجاد صفحه فید و یک الگو برای پست ها (FeedView & PostView) Creating the Feed screen and a template for posts (FeedView & PostView)

  • راه اندازی یک ساختار داده برای پست ها (PostModel) Setting up a data structure for posts (PostModel)

  • ایجاد صفحه نظرات (CommentsView) Creating the Comments screen (CommentsView)

  • ایجاد زیرنما برای نمایش نظرات (MessagesView) Creating subviews to display comments (MessagesView)

  • ایجاد صفحه مرور (BrowseView) Creating the Browse screen (BrowseView)

  • افزودن یک شبکه سفارشی برای نمایش پست ها (ImageGridView) Adding a custom grid to display posts (ImageGridView)

  • ایجاد صفحه آپلود (UploadView) Creating the Upload screen (UploadView)

  • ایجاد صفحه آپلود (UploadView) Creating the Upload screen (UploadView)

  • بارگذاری تصاویر از دوربین و کتابخانه عکس (ImagePicker) Uploading images from the camera and photo library (ImagePicker)

  • ایجاد صفحه برای آپلود یک پست جدید (PostImageView) Create screen to upload a new post (PostImageView)

  • ایجاد صفحه نمایه (ProfileView) Creating the Profile screen (ProfileView)

  • اتمام صفحه نمایه (ProfileView) Finishing the Profile screen (ProfileView)

  • اتمام صفحه نمایه (ProfileView) Finishing the Profile screen (ProfileView)

  • ایجاد صفحه تنظیمات (SettingsView) Creating the Settings screen (SettingsView)

  • ایجاد یک صفحه برای ویرایش نام و بیوگرافی کاربر (SettingsEditTextView) Creating a screen to edit user's name and bio (SettingsEditTextView)

  • ایجاد یک صفحه برای ویرایش نام و بیوگرافی کاربر (SettingsEditTextView) Creating a screen to edit user's name and bio (SettingsEditTextView)

  • ایجاد یک صفحه برای ویرایش تصویر پروفایل کاربر (SettingsEditImageView) Creating a screen to edit user's profile picture (SettingsEditImageView)

  • ایجاد یک صفحه برای قیف کردن کاربران جدید برای ثبت نام (SignUpView) Creating a screen to funnel new users to sign up (SignUpView)

  • ایجاد یک صفحه برای قیف کردن کاربران جدید برای ثبت نام (SignUpView) Creating a screen to funnel new users to sign up (SignUpView)

  • ایجاد یک صفحه برای ورود کاربران (OnboardingView) Creating a screen to sign in users (OnboardingView)

  • ایجاد یک صفحه برای ورود کاربران (OnboardingView) Creating a screen to sign in users (OnboardingView)

  • افزودن یک صفحه برای ایجاد حساب های جدید (OnboardingViewPart2) Adding a screen to create new accounts (OnboardingViewPart2)

  • افزودن یک صفحه برای ایجاد حساب های جدید (OnboardingViewPart2) Adding a screen to create new accounts (OnboardingViewPart2)

  • افزودن یک انیمیشن قلب سفارشی برای لایک کردن پست ها (LikeAnimationView) Adding a custom heart animation to like posts (LikeAnimationView)

  • افزودن قابلیت اشتراک گذاری و گزارش پست ها Adding the ability to share and report posts

  • پشتیبانی از حالت تاریک! Supporting Dark Mode!

  • رابط کاربری: بخش کامل شد! User Interface: Section Complete!

Google Firebase: ایجاد و پیاده سازی پایگاه داده Google Firebase: Creating & Implementing the Database

  • پیاده سازی ورود به سیستم با اپل Implementing Sign In With Apple

  • پیاده سازی ورود با گوگل Implementing Sign In With Google

  • احراز هویت کاربران در Google Firebase Authenticating users into Google Firebase

  • انتقال داده ها از طریق فرآیند سوار شدن Moving Data Through the Onboarding Process

  • شروع: ایجاد یک کاربر جدید در پایگاه داده ما Begin: Creating a new user in our database

  • آپلود تصاویر در فضای ذخیره سازی Uploading Images to Storage

  • تنظیم UserDefaults (@AppStorage) Setting Up UserDefaults (@AppStorage)

  • ورود مجدد به سیستم؛ بررسی اینکه آیا کاربر از قبل در پایگاه داده ما وجود دارد یا خیر Signing in again ; checking if a user already exists in our database

  • آپلود یک پست در پایگاه داده Uploading a post to the database

  • دانلود تصاویر پست Downloading post images

  • اضافه کردن LazyView Adding a LazyView

  • لایک کردن پست ها Liking posts

  • گزارش پست ها Reporting posts

  • در حال بارگذاری نظرات Uploading comments

  • در حال دانلود نظرات Downloading comments

  • به روز رسانی آمار نمایه: تعداد پست/پسندیدن Updating profile statistics: post/like counts

  • به روز رسانی بیوگرافی کاربر Updating user's bio

  • به روز رسانی عکس پروفایل کاربر Updating user's profile picture

  • جایزه: Multi-threading (بهینه سازی عملکرد برنامه) BONUS: Multi-threading (optimizing app performance)

  • جایزه: Google Analytics (رفتار کاربر را پیگیری کنید!) BONUS: Google Analytics (track user behavior!)

  • سخنرانی جایزه: با دوره های رایگان SwiftUI در کانال YouTube من به یادگیری ادامه دهید BONUS LECTURE: Continue Learning with FREE SwiftUI courses on my YouTube channel

Google Firebase: ایجاد و پیاده سازی پایگاه داده Google Firebase: Creating & Implementing the Database

  • اتصال Google Firebase و افزودن Cocoapod Connecting Google Firebase & Adding Cocoapods

  • اتصال Google Firebase و افزودن Cocoapod Connecting Google Firebase & Adding Cocoapods

  • پیاده سازی ورود به سیستم با اپل Implementing Sign In With Apple

  • پیاده سازی ورود با گوگل Implementing Sign In With Google

  • احراز هویت کاربران در Google Firebase Authenticating users into Google Firebase

  • انتقال داده ها از طریق فرآیند سوار شدن Moving Data Through the Onboarding Process

  • شروع: ایجاد یک کاربر جدید در پایگاه داده ما Begin: Creating a new user in our database

  • آپلود تصاویر در فضای ذخیره سازی Uploading Images to Storage

  • ورود کاربر به DogGram Logging in a user into DogGram

  • ورود کاربر به DogGram Logging in a user into DogGram

  • تنظیم UserDefaults (@AppStorage) Setting Up UserDefaults (@AppStorage)

  • پایان: ایجاد یک کاربر جدید در پایگاه داده ما Finish: Creating a new user in our database

  • پایان: ایجاد یک کاربر جدید در پایگاه داده ما Finish: Creating a new user in our database

  • خروج کاربران Logging Out Users

  • خروج کاربران Logging Out Users

  • ورود مجدد به سیستم؛ بررسی اینکه آیا کاربر از قبل در پایگاه داده ما وجود دارد یا خیر Signing in again ; checking if a user already exists in our database

  • آپلود یک پست در پایگاه داده Uploading a post to the database

  • دانلود تصاویر پروفایل Downloading profile images

  • دانلود تصاویر پروفایل Downloading profile images

  • دانلود پست برای پروفایل کاربر Downloading posts for a user's profile

  • دانلود پست برای پروفایل کاربر Downloading posts for a user's profile

  • دانلود تصاویر پست Downloading post images

  • بارگیری پست‌ها برای برگه‌های فید و مرور Downloading posts for the Feed and Browse tabs

  • بارگیری پست‌ها برای برگه‌های فید و مرور Downloading posts for the Feed and Browse tabs

  • افزودن پست‌ها و کاربران اضافی (بدون کدنویسی!) Adding Extra Posts & Users (no coding!)

  • افزودن پست‌ها و کاربران اضافی (بدون کدنویسی!) Adding Extra Posts & Users (no coding!)

  • اضافه کردن LazyView Adding a LazyView

  • لایک کردن پست ها Liking posts

  • گزارش پست ها Reporting posts

  • در حال بارگذاری نظرات Uploading comments

  • در حال دانلود نظرات Downloading comments

  • به روز رسانی آمار نمایه: تعداد پست/پسندیدن Updating profile statistics: post/like counts

  • در حال به روز رسانی نام نمایشی کاربر Updating user's display name

  • در حال به روز رسانی نام نمایشی کاربر Updating user's display name

  • به روز رسانی بیوگرافی کاربر Updating user's bio

  • به روز رسانی عکس پروفایل کاربر Updating user's profile picture

  • جایزه: Multi-threading (بهینه سازی عملکرد برنامه) BONUS: Multi-threading (optimizing app performance)

  • امتیاز: هپتیک (ارتعاشات تلفن) BONUS: Haptics (phone vibrations)

  • امتیاز: هپتیک (ارتعاشات تلفن) BONUS: Haptics (phone vibrations)

  • جایزه: Google Analytics (رفتار کاربر را پیگیری کنید!) BONUS: Google Analytics (track user behavior!)

  • Google Firebase: بخش کامل شد! Google Firebase: Section Complete!

  • Google Firebase: بخش کامل شد! Google Firebase: Section Complete!

  • سخنرانی جایزه: با دوره های رایگان SwiftUI در کانال YouTube من به یادگیری ادامه دهید BONUS LECTURE: Continue Learning with FREE SwiftUI courses on my YouTube channel

چالش ها: یادگیری مداوم Challenges: Continued Learning

  • مقدمه چالش ها Challenges Introduction

  • چالش شماره 1 (آسان): بازخورد اضافه کنید Challenge #1 (EASY): Add Feedback

  • چالش شماره 2 (آسان): مراحل ورود به سیستم Challenge #2 (EASY): Segues to Onboarding

  • چالش شماره 3 (آسان): بر خلاف انیمیشن Challenge #3 (EASY): Unlike Animation

  • چالش شماره 4 (MEDIUM): لایک کردن نظرات Challenge #4 (MEDIUM): Liking Comments

  • چالش شماره 6 (MEDIUM): حذف پست ها Challenge #6 (MEDIUM): Deleting Posts

  • چالش شماره 7 (سخت): اضافه کردن چندین تصویر در یک پست Challenge #7 (HARD): Adding Multiple Images in a Single Post

  • چالش شماره 8 (سخت): حذف اکانت ها Challenge #8 (HARD): Deleting Accounts

چالش ها: یادگیری مداوم Challenges: Continued Learning

  • مقدمه چالش ها Challenges Introduction

  • چالش شماره 1 (آسان): بازخورد اضافه کنید Challenge #1 (EASY): Add Feedback

  • چالش شماره 2 (آسان): مراحل ورود به سیستم Challenge #2 (EASY): Segues to Onboarding

  • چالش شماره 3 (آسان): بر خلاف انیمیشن Challenge #3 (EASY): Unlike Animation

  • چالش شماره 4 (MEDIUM): لایک کردن نظرات Challenge #4 (MEDIUM): Liking Comments

  • چالش شماره 5 (MEDIUM): حذف نظرات Challenge #5 (MEDIUM): Deleting Comments

  • چالش شماره 5 (MEDIUM): حذف نظرات Challenge #5 (MEDIUM): Deleting Comments

  • چالش شماره 6 (MEDIUM): حذف پست ها Challenge #6 (MEDIUM): Deleting Posts

  • چالش شماره 7 (سخت): اضافه کردن چندین تصویر در یک پست Challenge #7 (HARD): Adding Multiple Images in a Single Post

  • چالش شماره 8 (سخت): حذف اکانت ها Challenge #8 (HARD): Deleting Accounts

نمایش نظرات

آموزش iOS 14 و SwiftUI: برنامه‌ای شبیه به اینستاگرام با Google Firebase بسازید
جزییات دوره
14 hours
67
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,357
4.9 از 5
دارد
دارد
دارد
Nick Sarno
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Nick Sarno Nick Sarno

توسعه دهنده iOS