آموزش برنامه‌نویسی کاربردی Swift و توسعه iOS - آخرین آپدیت

دانلود Practical Programming For Swift & iOS Development

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

آموزش جامع توسعه iOS از صفر تا صد - دوره‌ای ایده‌آل برای مبتدیان!

  • درک مبانی برنامه‌نویسی با استفاده از سوئیفت (Swift) (متغیرها، انواع داده، منطق پایه، توابع، کلاس‌ها و استراکت‌ها)
  • ساخت اولین اپلیکیشن‌ها با استفاده از یوآی‌کیت (UIKit) و سوئیفت‌یوآی (SwiftUI)
  • معماری اپلیکیشن، جریان داده، مسیریابی در اپ، اصول کدنویسی و ریفکتورینگ
  • کار با APIها و SDKهای شخص ثالث
  • کنترل سورس با استفاده از گیت‌هاب (GitHub)
  • عملیات CRUD با استفاده از فایربیس (Firebase)

پیش‌نیازها:

  • کامپیوتر مک
  • آیفون

بدون نیاز به هیچ تجربه قبلی در برنامه‌نویسی.

توجه: برای دانلود Xcode و ساخت اپلیکیشن‌های iOS، داشتن کامپیوتر مک (Mac) الزامی است.

با دوره "برنامه‌نویسی کاربردی برای توسعه سوئیفت و iOS" سفر خود را به دنیای توسعه‌دهندگان iOS آغاز کنید. این دوره برای مبتدیان مطلقی طراحی شده که می‌خواهند وارد دنیای فناوری شوند اما نمی‌دانند از کجا، چه چیزی و به چه ترتیبی شروع کنند. هیچ تجربه قبلی در برنامه‌نویسی نیاز نیست. ما از همان ابتدا شروع می‌کنیم و مبانی کدنویسی را با استفاده از زبان برنامه‌نویسی سوئیفت (Swift) آموزش می‌دهیم.

بیشتر بخش‌های این دوره شامل یک پروژه پایانی هستند. با ساخت هر پروژه، می‌توانیم هر مفهوم جدیدی را که یاد می‌گیریم، به ترتیب دشواری به کار بگیریم.

موضوعات کلیدی شامل:

  • مبانی سوئیفت (Swift) و Xcode
  • برنامه‌نویسی شی‌گرا (OOP) و برنامه‌نویسی پروتکل‌گرا (POP)
  • ساخت رابط کاربری با UIKit و SwiftUI
  • درک معماری پروژه با استفاده از MVC و MVVM
  • مبانی کنترل سورس با استفاده از گیت‌هاب (GitHub)
  • ادغام وابستگی‌های پکیج
  • شبکه‌سازی و دریافت داده از API یا سرور بک‌اند

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


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

مبانی iOS و اصول Swift بخش ۱ iOS Basics and Swift Fundamentals part 1

  • مقدمه Introduction

  • دانلود Xcode و اپلیکیشن فقط داده است Download Xcode & An app is just data

  • اصول متغیرها Variable Fundamentals

  • دستورات شرطی If-else بخش ۱ If else statements part 1

  • If-else بخش ۲ (&&, ||) If else part 2 (&&, || )

  • اولین اپلیکیشن ما بخش ۱ Our first app part 1

  • اولین اپلیکیشن ما بخش ۲ Our first app part 2

  • اولین اپلیکیشن ما بخش ۳ Our first app part 3

  • توابع بخش ۱ Functions part 1

  • توابع بخش ۲ Functions part 2

  • توابع بخش ۳ Functions part 3

  • عملگرهای انتساب Assignment Operators

  • کلاس‌ها و برنامه‌نویسی شی‌گرا Classes and Object Oriented Programming

  • اسکوپ (Scope) و دات نوتیشن (Dot Notation) Scope and Dot Notation

  • بخش ۱ کامل شد Section 1 Complete

رابط کاربری Storyboard UIKit و اصول Swift بخش ۲ UIKit Storyboard UI and Swift Fundamentals part 2

  • رابط کاربری Storyboard – UILabel، UIButton و محدودیت‌ها (Constraints) Storyboard UI - UILabel, UIButton, and Constraints

  • رابط کاربری Storyboard – UIStackView، UIImageView و محدودیت‌ها (Constraints) Storyboard UI - UIStackView, UIImageView and Constraints

  • آرایه‌ها Arrays

  • حلقه‌های For بخش ۱ For loops part 1

  • حلقه‌های For بخش ۲ For loops part 2

  • حلقه‌های While While loops

  • دیکشنری‌ها Dictionaries

  • درون‌یابی رشته‌ای (String interpolation) String interpolation

  • آپشنال‌ها (Optionals) بخش ۱ Optionals part 1

  • آپشنال‌ها (Optionals) بخش ۲ Optionals part 2

  • وراثت بخش ۱ Inheritance part 1

  • وراثت بخش ۲ Inheritance part 2

  • مقداردهنده‌ها (Initializers) بخش ۱ Initializers part 1

  • مقداردهنده‌ها (Initializers) بخش ۲ و وراثت بخش ۳ Initializers part 2 & Inheritance part 3

  • بخش ۲ کامل شد Section 2 Complete

اپلیکیشن ماشین حساب UIKit – اعمال اصول ما Calculator App UIKit - applying our fundamentals

  • معرفی CalculatorUIKit Introducing CalculatorUIKit

  • راه‌اندازی Xcode Setting up Xcode

  • ساخت رابط کاربری (UI) استوری‌بورد ماشین حساب ما Building our Calculator storyboard UI

  • اتصال رابط کاربری (UI) به کد Connecting UI to code

  • افزودن قابلیت به دکمه‌های اعداد Adding functionality to number buttons

  • Enums، دستورات Switch و اجرای منطق عملیات بخش ۱ Enums, Switch statements & Executing operation logic part 1

  • ویژگی‌های محاسبه‌شده (Computed properties) و اجرای منطق عملیات بخش ۲ Computed properties & Executing operation logic part 2

  • دستورات Guard و اجرای منطق عملیات بخش ۳ Guard statements & Executing operation logic part 3

  • تکمیل اپلیکیشن و اجرای منطق عملیات بخش ۴ Finishing the app & Executing operation logic part 4

  • نکات پایانی و حلقه forEach Final touches & the forEach loop

  • بخش ۳ کامل شد Section 3 Complete

YallBeTippin – مدل‌های داده، مقدمه‌ای بر معماری اپلیکیشن و پروتکل‌ها YallBeTippin - Data models, introduction to app architecture, and protocols

  • معرفی YallBeTippin و اهداف آموزشی Introducing YallBeTippin and learning objectives

  • مقدمه‌ای بر معماری اپلیکیشن (MVC) Introduction to app architecture (MVC)

  • راه‌اندازی پروژه و UINavigationController Project setup & UINavigationController

  • مدل‌های داده، Struct در مقابل Class، ادامه راه‌اندازی Data models, struct vs class, continue setup

  • UITableView و UITableViewCell UITableView & UITableViewCell

  • اکستنشن‌ها (Extensions) و پروتکل‌ها بخش ۱ Extensions & Protocols part 1

  • پروتکل‌ها بخش ۲ Protocols part 2

  • انتخاب Cell در UITableView بخش ۱ TableViewCell selection part 1

  • انتخاب Cell در UITableView بخش ۲ TableViewCell selection part 2

  • انتخاب Cell در UITableView بخش ۳ TableViewCell selection part 3

  • ناوبری (Navigation) بخش ۱ Navigation part 1

  • ناوبری (Navigation) بخش ۲ و انتقال داده بین اشیاء/نماها Navigation part 2 & Passing data between objects / views

  • رابط کاربری (UI) Xib قابل استفاده مجدد بخش ۱ Reusable Xib UI part 1

  • رابط کاربری (UI) Xib قابل استفاده مجدد بخش ۲ Reusable Xib UI part 2

  • ناوبری (Navigation) بخش ۳ Navigation part 3

  • UIStackViews و جهت‌گیری دستگاه UIStackViews & Device orientation

  • انتخاب دکمه Toggle از طریق Enum Toggle button selection via enum

  • نمایش چند UITableViewCells سفارشی بخش ۱ Displaying multiple custom UITableViewCells part 1

  • نمایش چند UITableViewCells سفارشی بخش ۲ Displaying multiple custom UITableViewCells part 2

  • اکستنشن‌ها (Extensions) بخش ۲ Extensions part 2

  • کپسوله‌سازی داده Data encapsulation

  • متغیرهای Static Static variables

  • بخش ۴ کامل شد Section 4 Complete

گیت‌هاب (Github) – مبانی کنترل نسخه Github - Source control basics

  • معرفی گیت‌هاب (Github) و کنترل نسخه Introducing Github & source control

  • مبانی ترمینال بخش ۱ – پیمایش در دایرکتوری‌ها Terminal basics part 1 - Navigating through directories

  • مبانی ترمینال بخش ۲ – ایجاد و حذف فایل‌ها و دایرکتوری‌ها Terminal basics part 2 - Creating and removing files and directories

  • گردش کار کنترل نسخه Source control flow

  • شروع کار با Git Git started

  • اتصال مخزن راه دور به مخزن محلی Connecting remote repository with local repository

  • شاخه راه دور و شاخه‌های محلی Remote branch and local branches

  • Git clone, git pull, git push Git clone, git pull, git push

  • مشاهده و بازگرداندن تغییرات View and reverse changes

  • رابط‌های کاربری گرافیکی Git (Git GUIs) Git GUIs

  • بخش ۵ کامل شد Section 5 Complete

نصیحت برای پیشرفت Advice moving forward

  • میانبرهای صفحه‌کلید بخش ۱ Keyboard shortcuts part 1

  • میانبرهای صفحه‌کلید بخش ۲ Keyboard shortcuts part 2

  • قوانین کدنویسی تمیز (توابع، فاصله‌های سفید، نام‌ها، اعداد جادویی و غیره) Clean coding conventions (functions, white spaces, names, magic numbers, etc)

  • سازماندهی پروژه، فایل‌ها و کد Project organization, files & code

  • مقدمه‌ای بر دیباگینگ (prints، dumps، borders، سلسله‌مراتب نماها، نقاط توقف و غیره) Intro to debugging (prints, dumps, borders, view hierarchies, break points, etc)

  • آموزش نحوه خواندن مستندات Learning how to read documentation

واکشی داده از یک API Fetching data from an API

  • معرفی اپلیکیشن آب و هوای ما Introducing our weather app

  • API (رابط برنامه‌نویسی اپلیکیشن) چیست؟ What is an API (Application Programming Interface)

  • JSON (نشانه گذاری شیء جاوااسکریپت) JSON (JavaScript Object Notation)

  • تست Endpoints با استفاده از Postman Testing endpoints using Postman

  • ساخت رابط کاربری (UI) صفحه اصلی ما Building our Home page UI

  • رابط کاربری (UI) صفحه اصلی بخش ۲، سلول بالا Home UI part 2, top cell

  • رابط کاربری (UI) صفحه اصلی بخش ۳، اسکرول افقی UICollectionView Home UI part 3, UICollectionView horizontal scrolling

  • رابط کاربری (UI) صفحه اصلی بخش ۴، یک Table View دیگر Home UI part 4, another table view

  • واکشی داده بخش ۱، JSONها و ساخت مدل‌های داده ما Fetching data part 1, JSONs & creating our data models

  • واکشی داده بخش ۲، Closures و بلوک Do/Catch Fetching data part 2, Closures & the Do / Catch block

  • پر کردن سطر بالای ما با داده‌های دیکد شده Populating our top row with our decoded data

  • واکشی داده بخش ۳، DispatchGroups و Main Thread Fetching data part 3, DispatchGroups & the Main thread

  • Model CodingKeys و مقدمه‌ای بر Generics و کد قابل استفاده مجدد Model CodingKeys & Intro to Generics and reusable code

  • کلمه کلیدی Weak و Closures بخش ۲ The weak keyword & Closures part 2

  • پر کردن رابط کاربری (UI) Carousel ما Populating our carousel UI

  • ایندکس‌های ایمن آرایه و عملگر Ternary Safe array indexes & the Ternary operator

  • پر کردن سطر پایین ما بخش ۱ Populating our bottom row part 1

  • پر کردن سطر پایین ما بخش ۲ Populating our bottom row part 2

  • پاکسازی رابط کاربری (UI) ما بخش ۱ Cleaning up our UI part 1

  • پاکسازی رابط کاربری (UI) ما بخش ۲ Cleaning up our UI part 2

  • UIKit برنامه‌نویسی، UISearchController Programmatic UIKit, UISearchController

  • UIKit برنامه‌نویسی، UISearchController بخش ۲ Programmatic UIKit, UISearchController part 2

  • Type Casting و مدل داده نتایج جستجوی ما Type casting & our search results data model

  • UITableViewCell برنامه‌نویسی و تست SearchResultsVC ما Programmatic UITableViewCell & testing our SearchResultsVC

  • افزودن سطر جدید به UITableView و مقدمه‌ای بر عملیات CRUD و UserDefaults Inserting new row to UITableView & intro to CRUD operations & UserDefaults

  • عملیات CRUD با UserDefaults بخش ۲ UserDefaults CRUD operations part 2

  • حذف سطرهای UITableView، عملیات CRUD بخش ۳ و Overriding Equals Deleting UITableView rows, CRUD operations part 3 & overriding equals

  • اتصال SearchVC ما به HomeVC Connecting our SearchVC to our HomeVC

  • ذخیره موقعیت مکانی قبلی انتخاب شده ما Saving our previously selected location

  • استفاده از Timer برای درخواست‌های جستجو Using a Timer for search requests

  • عیب‌یابی: راه حل سریع برای جستجوی موقعیت مکانی Debugging quick fix for location search

  • درخواست‌های Generic Fetch و ساخت URLComponents ما Generic fetch requests & constructing our URLComponents

  • DispatchGroups و کد ناهمزمان DispatchGroups & asynchronous code

  • نکات پایانی رابط کاربری (UI) بخش ۱ Final UI touches part 1

  • نکات پایانی رابط کاربری (UI) بخش ۲، مقدمه‌ای بر UITabBarController Final UI touches part 2, intro to UITabBarController

اصول بیشتر Swift، مقدمه‌ای بر پکیج‌ها، نگاهی به آینده More Swift fundamentals, introduction to packages, looking ahead

  • Getters و Setters بخش ۱ Getters & Setters part 1

  • Getters و Setters بخش ۲ Getters & Setters part 2

  • توابع Lifecycle – UIViewController Lifecycle functions - UIViewController

  • توابع Lifecycle – AppDelegate / SceneDelegate Lifecycle functions - AppDelegate / SceneDelegate

  • توابع Lifecycle – UIView Lifecycle functions - UIView

  • Child View Controllerها Child view controllers

  • درک بهتر Closures (Escaping در مقابل Non-escaping) Better understanding closures (escaping vs non-escaping)

  • عبارت Where The where clause

  • معرفی توابع سطح بالاتر (Filter, Sort, Map, Reduce) Introducing higher level functions (filter, sort, map, reduce)

  • ساده‌سازی Closures Simplifying Closures

  • توابع Inout Inout functions

  • تایپ‌الیاس (Typealias) Typealias

  • مقدمه‌ای بر وابستگی‌های پکیج و Swift Package Manager (SPM) Intro to package dependencies & Swift Package Manager (SPM)

  • پکیج‌ها از طریق Cocoa Pods Packages via Cocoa Pods

مقدمه‌ای بر SwiftUI و معماری MVVM Introduction to SwiftUI and MVVM architecture

  • مقدمه‌ای بر SwiftUI Intro to SwiftUI

  • مقدمه‌ای بر معماری MVVM Intro to MVVM architecture

  • مقدمه‌ای بر نماهای SwiftUI Intro to SwiftUI views

  • چرا Struct و نحوه به‌روزرسانی View با استفاده از ماکروهای State@ و Binding@ Why structs & How to update view using @State & @Binding macros

  • مقدمه‌ای بر پروژه تمرینی SwiftUI Intro to SwiftUI Practice Project

  • مقدمه‌ای بر NavigationStack، Toolbar و NavigationLink Intro to NavigationStack, toolbar, & NavigationLink

  • لی‌اوت NextView، TextField، SecureField، VStack، HStack، ZStack Layout NextView, TextField, SecureField, VStack, HStack, ZStack

  • NextView confirmationDialog و ignoresSafeArea(.keyboard) NextView confirmationDialog & ignoresSafeArea(.keyboard)

  • مقدمه‌ای بر List و نمای سطر سفارشی Intro to List & custom row view

تمرین بیشتر SwiftUI و MVVM – بازسازی اپلیکیشن YallBeTippin More SwiftUI & MVVM practice recreating the YallBeTippin app

  • مقدمه‌ای بر بازسازی YallBeTippin با استفاده از SwiftUI Intro to recreating YallBeTippin using SwiftUI

  • راه‌اندازی پروژه – ایجاد مدل MenuItem، NavigationStack و MenuListView ما Project Setup - Creating our MenuItem model, NavigationStack & MenuListView

  • ایجاد ViewModel و مقدمه‌ای بر فریم‌ورک Observation Creating our ViewModel & Intro to the Observation framework

  • ایجاد رابط کاربری (UI) MenuItemView ما Creating our MenuItemView UI

  • قابلیت MenuItemView – .onTapGesture, .buttonStyle, .alert, didSet MenuItemView Functionality - .onTapGesture, .buttonStyle, .alert, didSet

  • ViewModel به عنوان Environment Object – .environment, @Environment, @Bindable ViewModel as Environment Object - .environment, @Environment, @Bindable

  • منطق ناوبری (Navigation) بخش ۱ Navigation logic part 1

  • TipView و منطق ناوبری (Navigation) بخش ۲ TipView & Navigation logic part 2

  • TipButton، TipPercentage و به‌روزرسانی ViewModel ما TipButton, TipPercentage & Updating our ViewModel

  • ReceiptView – ForEach در یک List ReceiptView - ForEach in a List

  • نکات پایانی – Navigation Pop به Root Final Touches - Navigation Pop to Root

Please Do – عملیات CRUD فایربیس (Firebase) بخش ۱ Please Do - Firebase CRUD Operations part 1

  • معرفی Please Do Introducing Please Do

  • راه‌اندازی پروژه بخش ۱ Project Setup part 1

  • راه‌اندازی پروژه بخش ۲ Project Setup part 2

  • افزودن HomeView Add HomeView

  • افزودن ListView Add ListView

  • افزودن مدل Item Add Item Model

  • افزودن ListItemView Add ListItemView

  • افزودن آیکون اپلیکیشن و Color Sets Add App Icon & Color Sets

  • افزودن NavPath Add NavPath

  • ادغام PR ما و حذف شاخه‌های قدیمی Merging Our PR & Pruning Old Branches

  • بهبود منطق NavPath Improve NavPath Logic

  • ادغام منطق ناوبری Merging Navigation Logic

  • افزودن ListVM و دیالوگ تأیید Add ListVM & Confirmation Dialog

  • افزودن Menu Pickers Add Menu Pickers

  • افزودن CTAButton Add CTAButton

  • تنظیم ItemDetailsView Adjust ItemDetailsView

  • افزودن LoginTitleView Add LoginTitleView

  • افزودن LoginFields Add LoginFields

  • افزودن LoginButton Add LoginButton

  • افزودن TogglePromptView Add TogglePromptView

  • افزودن SignUpFields Add SignUpFields

  • افزودن LoginVM Add LoginVM

  • افزودن LoginManager Add LoginManager

  • افزودن منطق احراز هویت (Auth Logic) Add Auth Logic

  • ثبت نام کاربر جدید Sign Up New User

  • ایجاد سند کاربر جدید Create New User Document

  • Async Await Async Await

  • راه‌اندازی Auth State Listener Setup Auth State Listener

  • واگذاری LoginVM ما Delegating Our LoginVM

  • افزودن ProgressView Add ProgressView

  • ادغام تغییرات منطق احراز هویت (Auth Logic) Merge Auth Logic Changes

Please Do – عملیات CRUD فایربیس (Firebase) بخش ۲ Please Do - Firebase CRUD Operations part 2

  • افزودن ItemsManager Add ItemsManager

  • تجزیه داده به Item Parse Data to Item

  • مرتب‌سازی داده و اطلاع‌رسانی به Delegate بخش ۱ Sort Data & Notify Delegate part 1

  • مرتب‌سازی داده بخش ۲ Sort Data part 2

  • اطمینان از منحصر به فرد بودن Items بخش ۱ Ensuring Items are Unique part 1

  • اطمینان از منحصر به فرد بودن Items بخش ۲ Ensuring Items are Unique part 2

  • تکمیل منطق واکشی Item Finish Item Fetching Logic

  • نوشتن داده در Firestore Write Data to Firestore

  • رابط کاربری (UI) نتایج آیتم جدید New Item Results UI

  • پاکسازی Snapshot Listener ما Cleaning Up Our Snapshot Listener

  • افزودن ItemDetailsVM Add ItemDetailsVM

  • افزودن قابلیت به‌روزرسانی Item Add Update Item Functionality

  • رفع اشکال رابط کاربری (UI) اولویت ما Fixing Our Priority UI

  • رفع اشکال منطق فوکوس کیبورد ما Fixing Our Keyboard Focus Logic

  • جمع‌بندی پروژه Project Wrap Up

تبدیل شدن به یک توسعه‌دهنده Becoming A Developer

  • مهارت‌های توسعه‌دهنده جونیور iOS Junior iOS Developer Skills

نمایش نظرات

آموزش برنامه‌نویسی کاربردی Swift و توسعه iOS
جزییات دوره
34.5 hours
197
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
505
4.8 از 5
دارد
دارد
دارد
Ryan Kanno
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ryan Kanno Ryan Kanno

توسعه‌دهنده iOS