تسلط به معماری SwiftUI: الگوها و بهترین روشها
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- درک معماری SwiftUI: اصول پایه و ویژگیهای منحصربهفرد SwiftUI را بفهمید و آن را از توسعهی متداول UIKit تمییز دهید.
- محدودیتهای MVVM در SwiftUI: چالشهای بهکارگیری الگوی Model-View-ViewModel در SwiftUI را بشناسید و به آنها رسیدگی کنید، که از آن جمله می توان به مدیریت state و سایر موارد اشاره کرد.
- مهاجرت از MVVM به MV: یاد بگیرید چگونه از الگوی MVVM به الگوی سادهتر Model-View (MV) انتقال یابید و کدهای SwiftUI خود را بهینه کنید.
- تسلط به تکنیکهای تجمیع منابع داده متعدد، مدیریت مؤثر state، و پیادهسازی استورهای تجمیعی در سناریوهای واقعی
- ایجاد ویوهای قابل استفاده مجدد و ماژولار با استفاده از سینتکس اعلانی SwiftUI، در حالی که بهینهسازی عملکرد را حفظ کنید.
- بررسی الگوهای مختلف اعتبارسنجی و بهترین روشها برای ارائه بازخورد بلادرنگ و حفظ منطق اعتبارسنجی مقیاسپذیر
- درک و پیادهسازی سیستم ناوبری SwiftUI، مدیریت جریانهای ساده و پیچیده ناوبری به صورت مؤثر
- یادگیری استراتژی های ترکیب کامپوننت های UIKit با SwiftUI و ساخت اپلیکیشن های هیبرید که از قابلیتهای هر دو فریمورک بهرهمند شوند.
پیشنیازهای دوره
- درک محکم زبان برنامهنویسی Swift، شامل نحو، کنترل جریان و اصول شیءگرایی.
- تجربه کار با Xcode، محیط توسعه یکپارچه اپل برای توسعه iOS.
- تجربه پایهای در SwiftUI، آشنایی با نحو و مفاهیم اساسی آن.
- مقداری تجربه عملی در توسعه اپلیکیشنهای iOS، شناخت چرخهعمر اپلیکیشن و اصول ابتدایی طراحی رابط کاربری.
- درک الگوی معماری MVVM، که به فهم مهاجرت به Model-View (MV) و محدودیتهای MVVM در SwiftUI کمک میکند.
- تمایل قوی به یادگیری مفاهیم پیشرفته معماری SwiftUI و بهترین روشها و بهکارگیری آنها در پروژههای واقعی.
- کامپیوتر مک با سیستم عامل macOS و نسخه بهروز Xcode برای دنبال کردن تمرینها و مثالهای عملی.
توضیحات دوره:
معماری SwiftUI از زمان معرفی در سال 2019 بحثهای متعددی را برانگیخته است. در دو سال گذشته مدرس وقت زیادی صرف بررسی و تحقیق درباره الگوهای مختلف و بهترین شیوهها کرده تا توسعه اپلیکیشن های SwiftUI را سادهتر کند.
مدرس دوره به درک جامعی از معماری SwiftUI رسیده و میداند چگونه آن را مطابق با دستورالعمل های اپل به کار ببرد. این دوره نتیجه سالها تحقیق و تجربه عملی مدرس است و هدف آن کمک به شما در مسلط شدن به معماری SwiftUI و اجرای بهترین روشها در طول مسیر توسعه است.
مروری بر دوره
در این دوره موضوعات متنوع و مهمی را پوشش میدهیم که برای ساخت اپلیکیشن های قدرتمند SwiftUI لازم هستند. در ادامه شرح دقیقی از مطالب، ارائه شده است:
محدودیتهای MVVM در SwiftUI
Model-View-ViewModel یا MVVM، الگوی طراحی محبوب در توسعه iOS است. اما وقتی در SwiftUI به کار میرود با چالشهای خاصی مواجه است:
- مدیریتState: مدیریت State در ویوها میتواند دشوار و پیچیده شود.
- پیچیدگی: ViewModelها ممکن است بزرگ و پیچیده شوند.
- مسائل عملکردی: مدیریت نامناسب State ممکن است باعث کاهش کارایی و ایجاد مشکلاتی در آن شود.
ما به بررسی این محدودیتها پرداخته و راهکارهای جایگزین را برای سادهسازی فرآیند توسعه SwiftUI بررسی خواهیم کرد.
مهاجرت از MVVM به MV
SwiftUI به معماری سادهتری تمایل دارد که اغلب به جای MVVM به سمت الگوی Model-View (MV) گرایش دارد. در این بخش شما یاد میگیرید:
- تفاوتهای MVVM و MV: درک تفاوتهای اصلی و زمان کاربرد هر الگو
- استراتژیهای مهاجرت: راهنمای گام به گام برای انتقال کدهای موجود MVVM به MV
- بهترین روشها: استفاده از MV برای سادهسازی کدهای SwiftUI
درک مدلها و استورهای تجمیعی
تجمیع مدلها و استورها میتواند مدیریت دادهها را در اپلیکیشن های SwiftUI به طور قابل توجهی بهبود بخشد. موضوعات کلیدی عبارتند از:
- روشهای تجمیع داده: تکنیکهای ترکیب چندین منبع داده
- مدیریت State: مدیریت مؤثر State در مدلهای تجمیعی
- مثالهای عملی: پیادهسازی استورهای تجمیعی در سناریوهای واقعی
ویوهای SwiftUI
طراحی و ساختاردهی مؤثر ویوها در SwiftUI حیاتی است. این بخش شامل موارد زیر است:
- ترکیب ویو: ساخت ویوهای قابل استفاده مجدد و ماژولار
- سینتکس اعلانی: استفاده از سینتکس اعلانی SwiftUI برای ایجاد رابطهای کاربری جذاب و قابل نگهداری
- بهینهسازی عملکرد: تکنیکهایی برای اطمینان از کارایی مناسب ویوها
اعتبارسنجی
اعتبارسنجی ورودی از نیازهای رایج اپلیکیشن ها است. در این بخش به موارد زیر پرداخته میشود:
- الگوهای اعتبارسنجی: روشهای مختلف برای اعتبارسنجی ورودی در SwiftUI
- بازخورد بلادرنگ: ارائه بازخورد فوری به کاربران درباره ورودیهایشان
- بهترین روشها: اطمینان از اینکه منطق اعتبارسنجی، قابل نگهداری و مقیاس پذیر است.
ناوبری
سیستم ناوبری SwiftUI امکانات و چالشهای منحصربفردی دارد. موضوعات شامل:
- NavigationStack: درک و استفاده از NavigationStack برای ناوبری سلسلهمراتبی
- NavigationLinks: استفاده صحیح از NavigationLinks و مدیریت state آنها
- جریانهای پیچیده ناوبری: مدیریت سناریوهای پیچیده ناوبری
تست
تست برای تضمین اطمینان از قابلیت اطمینان اپلیکیشن ها ضروری است. این بخش متمرکز بر موارد زیر است:
- تست واحد: نوشتن و اجرای تستهای واحد برای کامپوننت های SwiftUI
- تست رابط کاربری: خودکارسازی تستهای UI برای بررسی تعاملات کاربر
- استراتژیهای تست: بهترین روشها برای ادغام تست در گردش کار توسعه
تلفیق UIKit و SwiftUI
بسیاری از پروژههای موجود هنوز روی UIKit تکیه دارند و نیاز به همکاری این دو فریمورک وجود دارد. در این بخش میآموزید:
- تکنیکهای پلزنی: چگونه کامپوننت های UIKit را در SwiftUI ادغام کنید و بالعکس
- اپلیکیشن های هیبرید: استراتژی های توسعه اپلیکیشن های هیبرید با استفاده از هر دو فریمورک
- مثال های واقعی: مثالهای عملی از همکاری دو فریمورک
تا پایان این دوره دانش جامعی از معماری SwiftUI کسب خواهید کرد و مهارت پیاده سازی بهترین روشها را در پروژههای خود خواهید داشت. بیایید این مسیر را برای تسلط به SwiftUI با هم آغاز کنیم!
این دوره برای چه کسانی مناسب است؟
- توسعهدهندگانی که تجربه ساخت اپلیکیشن های iOS دارند و میخواهند درک خود را از معماری SwiftUI عمیقتر کرده و مهارتهای توسعه اپلیکیشن خود را بهبود ببخشند.
- افرادی که درک پایه از SwiftUI دارند و مایل هستند درباره الگوهای پیشرفته، بهترین روشها و ساختارهای موثر اپلیکیشن SwiftUI بیشتر بیاموزند.
- توسعهدهندگان آشنا با Swift که کمی تجربه SwiftUI دارند و میخواهند مهارتهای معماری خود را ارتقا داده و بهترین روشها را در پروژههای خود به کار ببرند.
- توسعهدهندگان iOS که با UIKit آشنا هستند و میخواهند به SwiftUI مهاجرت کنند و درک کنند چگونه هر دو فریمورک را در پروژهها تلفیق کنند.
- فریلنسرهایی که روی پروژههای iOS کار میکنند و نیاز دارند با جدیدترین روشهای معماری SwiftUI آشنا باشند تا اپلیکیشن های با کیفیت بالا تحویل دهند.
- دانشجویانی که در زمینه توسعه موبایل تمرکز دارند و مایل هستند دانش و مهارتهای عملی در معماری SwiftUI کسب کنند تا برای نقش های توسعه حرفه ای آماده شوند.
- برنامهنویسان پرشور و علاقهمندان که میخواهند دانش خود را در SwiftUI گسترش دهند و بیاموزند چطور اپلیکیشن های iOS ساختارمند، قابل نگهداری و مقیاسپذیر بسازند.
تسلط به معماری SwiftUI: الگوها و بهترین روشها
-
پیشزمینه 03:40
-
این دوره چه چیزی را پوشش می دهد؟ 02:05
-
مدل ارائه توسط Martin Fowler 06:16
-
درک الگوی طراحی MVVM 07:11
-
محدودیتهای MVVM 27:10
-
بررسی اپلیکیشن با استفاده از الگوی طراحی MVVM 11:33
-
سرویس های ویوها - بخش 1 14:06
-
سرویس های ویوها - بخش 2 18:05
-
مدل و دیتا استور تجمیعی در ویوها 21:21
-
Bounded Context 10:34
-
استورهای متعدد 16:53
-
ارتباط Bounded Context 04:09
-
Observable های تو در تو - بخش 1 08:34
-
Observable های تو در تو - بخش 2 07:36
-
ارتباط بین استورها 18:23
-
درک ویوهای SwiftUI 10:04
-
ویوهای SwiftUI مدلهای ویو هستند 07:54
-
رندرینگ در مقابل ارزیابی مجدد 01:15
-
صفحه در مقابل ویوها 09:58
-
گروهبندی ایونت های ویو 10:34
-
اعتبارسنجی ساده 08:45
-
خلاصه اعتبارسنجی 10:46
-
خلاصه اعتبارسنجی با استفاده از LocalizedError 14:12
-
نمایش خطاها با استفاده از ErrorWrapper 15:53
-
نمایش خطاها به صورت عمومی - بخش 1 21:47
-
نمایش خطاها به صورت عمومی - بخش 2 13:50
-
نمایش خطاها به صورت عمومی - بخش 3 10:13
-
ناوبری پایه 18:24
-
ناوبری برنامهنویسی شده با استفاده از Enums 16:24
-
پیادهسازی مسیریابی عمومی با استفاده از Environment 17:53
-
پیادهسازی مسیریابی عمومی با استفاده از مقادیر Environment 15:29
-
ناوبری برنامهنویسی شده و TabViewها 22:50
-
توسعه مبتنی بر تست چیست؟ 09:28
-
تست منطق دامین برای اپلیکیشن های SwiftData - بخش 1 17:35
-
تست منطق دامین برای اپلیکیشن های SwiftData - بخش 2 18:15
-
تست منطق دامین برای اپلیکیشن های SwiftData - بخش 3 08:10
-
تست منطق دامین برای اپلیکیشن های SwiftData - بخش 4 04:32
-
درک شبیهسازی 07:00
-
پاسخهای ساختگی از سرویس Credit Score 14:38
-
شبیهسازی تعامل با سرویس Credit Score - بخش 1 11:34
-
شبیهسازی تعامل با سرویس Credit Score - بخش 2 06:00
-
نوشتن تست برای منطق ارائه/ویو - بخش 1 14:07
-
نوشتن تست برای منطق ارائه/ویو - بخش 2 05:45
-
نوشتن تست برای منطق ارائه/ویو - بخش 3 15:01
-
تستهای End-to-End چه هستند؟ 02:04
-
نوشتن تستهای End-to-End 12:08
-
ناوبری SwiftUI View از اپلیکیشن UIKit 09:25
-
جایگذاری SwiftUI View موجود در UIKit UIView 05:30
-
ارسال مقادیر از SwiftUI View به UIKit View 07:29
-
بارگذاری UIKit View در یک اپلیکیشن SwiftUI 04:25
-
چگونه متدهای Delegate از UIKit View را در یک اپلیکیشن SwiftUI پیادهسازی کنیم؟ 10:41
-
چگونه SwiftUI View را به عنوان سلول UIKit UITableView بارگذاری کنیم؟ 04:47
-
چگونه Xcode Preview از UIViewController را نمایش دهیم؟ 04:19
-
فرمتبندی تاریخ در SwiftUI 05:06
-
فرمتبندی لیست در SwiftUI 03:58
-
گامهای بعدی 01:45
-
درس تکمیلی 01:41
مشخصات آموزش
تسلط به معماری SwiftUI: الگوها و بهترین روشها
- تاریخ به روز رسانی: 1404/06/21
- سطح دوره:همه سطوح
- تعداد درس:57
- مدت زمان :10:09:15
- حجم :4.89GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy