这是indexloc提供的服务,不要输入任何密码
Skip to content

Compile only the essential topics that provide a solid foundation for understanding iOS development.

Notifications You must be signed in to change notification settings

Nomi-ngj/iOS_Development

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iOS Development

  • Inheritance
  • Polymorphism
  • Encapsulation
  • Abstraction
  • Properties
  • Control Flow (if, for, while, switch)
  • Collections (Array, Set, Dictionary)
  • Keywords (let, var, in, is, as, defer, guard)
  • Functions and Parameters
  • Higher Order Functions
  • Access Control
  • Type Casting
  • Optionals

    • Nil-Coalescing Operator
    • Optional Chaining
    • Optional Binding
    • guard Statement
    • defer Statement
  • Lazy Keyword

  • [weak self] & [unowned self]

  • Enums

  • Class vs Struct

  • Closures

    • @escaping & @nonescaping
  • Protocols & Delegates

  • Core Functions

    • map(_:)
    • filter(_:)
    • reduce(_:_:)
    • reduce(into:_:)
    • compactMap(_:)
    • flatMap(_:)
    • forEach(_:)
    • sorted(by:)
    • reversed()
    • joined()
  • Search & Conditionals

    • contains(where:)
    • allSatisfy(_:)
    • first(where:)
    • min(by:), max(by:)
    • prefix(while:)
    • drop(while:)
  • Slicing

    • prefix(_:), suffix(_:)
    • dropFirst(_:), dropLast(_:)
    • split(separator:)
  • Grouping & Indexing

    • enumerated()
    • partition(by:)
    • Dictionary(grouping:by:)
    • Dictionary(uniqueKeysWithValues:)
  • Utility

    • zip(_:_:)
    • stride(from:to:by:)
    • lazy
    • indices.map
  • Swift 5.7+ Additions

    • chunks(ofCount:)
    • windows(ofCount:)
    • compactMapValues(_:)
    • sequence(first:next:)
  • UIViewController Lifecycle
  • IBOutlets & Variables
  • Constraints & AutoLayout
  • UITableView & UICollectionView
  • Navigation (Push, Present, Pop, Unwind)
  • Storyboard vs Code
  • Local Notifications
  • Local Notification with Actions & Categories
  • Push Notifications
  • Silent Push Notifications
  • Badge Updates
  • NotificationCenter (In-App Communication)
  • UserDefaults
  • FileManager
  • Keychain
  • CoreData
  • Realm, SQLite
  • Introduction to CoreLocation & MapKit
  • Requesting Location Permissions
  • Checking Location Services
  • Getting the User’s Location
  • Displaying Location on Map
  • Customizing Annotations
  • Handling Location Updates
  • Best Practices
  • What are Generics?
  • Basic Generic Function
  • Generic Types (Structs, Classes, Enums)
  • Generic Constraints
  • Associated Types in Protocols
  • Advanced: Generic Protocol Extensions
  • Advanced: Type Erasure with Generics
  • Benefits
  • What is Memory Management?
  • Automatic Reference Counting (ARC)
  • Strong References
  • Retain Cycles
  • Weak and Unowned References
  • Closures and Capture Lists
  • Memory Debugging
  • Combine and Retain Cycles
  • Swift Concurrency (async/await)
  • Best Practices
  • Introduction
  • URLSession
  • URLRequest
  • Codable and JSONDecoder
  • Using Completion Handlers
  • Using async/await (Swift Concurrency)
  • Alamofire (Third-party)
  • Combine Framework
  • Error Handling
  • Best Practices
  • What is CocoaPods?
  • Installing CocoaPods
  • Setting Up CocoaPods in a Project
  • Adding Dependencies
  • Using Pod Commands
  • Updating and Removing Pods
  • Best Practices
  • What is Swift Package Manager?
  • Benefits of Using SPM
  • Creating a Swift Package
  • Adding Dependencies
  • Using Packages in Xcode
  • Common Commands
  • Best Practices
  • What Are Design Patterns?
  • Creational Patterns
    • Singleton
    • Factory
  • Structural Patterns
    • Adapter
    • Decorator
  • Behavioral Patterns
    • Observer
    • Strategy
  • Best Practices
  • MVC (Model-View-Controller)
  • MVVM (Model-View-ViewModel)
  • VIPER
  • Coordinator
  • Clean Architecture
  • Dependency Injection
  • Protocols for Testability
  • What is Git?
  • Basic Git Workflow
  • Common Git Commands
  • Branching Strategy
    • main branch
    • develop branch
    • feature branches
    • task branches
  • Working with Remotes
  • Best Practices
  • What is Unit Testing?
  • What is UI Testing?
  • XCTest Framework
  • Writing Unit Tests
  • Writing UI Tests
  • Mocking & Dependency Injection
  • Code Coverage
  • Best Practices
  • What is Localization?
  • Adding Localized Strings
  • Using String Catalogs
  • Switching Languages for Testing
  • What is Accessibility?
  • Adding Accessibility Support
  • VoiceOver and Dynamic Type
  • What is SwiftUI?
  • SwiftUI vs UIKit
  • Basic Components
  • Layout System
  • State Management
  • View Lifecycle
  • SwiftUI Macros (Swift 5.9 / Swift 6+)
  • Navigation
  • Animations
  • SwiftUI and Combine
  • Previews
  • Integration with UIKit
  • Best Practices
  • What is Reactive Programming?
  • What is RxSwift?
  • Core Concepts
    • Observables
    • Observers
    • Subjects
    • Disposables
    • Schedulers
  • Creating Observables
  • Subscribing to Observables
  • Disposing Subscriptions
  • Using Subjects
    • PublishSubject
    • BehaviorSubject
    • ReplaySubject
    • AsyncSubject
  • Operators
    • map, flatMap, filter, debounce, merge, combineLatest, etc.
  • Chaining Operators
  • Error Handling
  • Threading with Schedulers
  • RxCocoa Integration
  • MVVM with RxSwift
  • Best Practices
  • What is Continuous Integration / Delivery?
  • Benefits of CI/CD in iOS
  • Common CI/CD Tools
    • Fastlane
    • Bitrise
    • CircleCI
    • GitHub Actions
  • Deployment
    • TestFlight
  • Best Practices

About

Compile only the essential topics that provide a solid foundation for understanding iOS development.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published