Swift Language

– What is swift?
– Swift Pros over Obj-C
– Swift Lexical Structure
– Swift Reserved Keywords
– Swift Style Guides
– Variables and Constants
– Swift Basic Data Types & Type Inference
– Never Use Floating-Point / Double Data types for Monetary Calculations!
– Any / AnyObject / AnyHashable
– Void / Void()
– Optionals
– nil, Null, NSNull
– Basic Operators
– Bitwise Operators
– Strings and Characters
– Collection Types
– Dealing With Sets
– Control Flow
– Functions
– Closures (escaping closures) & (capturing)
– Enumerations
– Structures and Classes & (stacks vs heaps)
– Properties
– Methods
– Subscripts
– Inheritance
– Swift Root Class & NSObject (WORK IN PROGRESS)
– Initialization
– De-initialization
– Optional Chaining
– Error Handling
– Concurrency
– Type Casting
– Nested Types
– Extensions
– Protocols
– Generics
– Opaque Types
– Automatic Reference Counting
– Memory Safety
– Access Control
– Advanced Operators
– Memory Management
– Concurrency
– Dynamic Dispatch / Static Dispatch / Virtual Dispatch
– Method Swizzling
– Interoperability
– Stride
– KVO
– Defer
– Mutating
– Pattern Matching
– Address Sanitizer
– Swift Evolution
– ABI
– Swift Package Manager
– CocoaPods
– RunLoop
– NSOperations
– Property Wrapper
– Clean Code
– Zombies
– Custom Operators
– Mirroring