The list mostly constains Swift-related sections with a small exception related to Foundation
framework. The Foundation
-related articles will be moved into separete list.
The section contains materials that are dedicated to specific versions of Swift
- What’s new in Swift 5.1
- How to use opaque return types in Swift 5.1
- Ordered Collection Diffing
- The Swift 5.1 features that power SwiftUI’s API
- Swift Opaque Result Types
- Shifting paradigms in Swift
- Swift Property Wrappers
- Swift 5.1 Two Quick Tips
- What is Module Stability in Swift and why should you care?
- What will be new in Swift 5?
- What’s new in Swift 5.0
- The Beauty of Swift 5 String Interpolation
- More fun with Swift 5 String Interpolation: Radix formatting
- Swift 5 Interpolation Part 3: Dates and Number Formatters
- Swift 5.0 is changing optional try
- Swift 5 gives us Nice Things™: Custom string delimiters
- How to use raw strings in Swift 5
- How to use Result in Swift 5
- How to use @dynamicCallable in Swift
- Add Result to the Standard Library - SE0235
- Contiguous Collection Protocols - SE0237
- Customizing string interpolation - SE0238
- Add Codable conformance to Range types - SE-0239
- Swift 5 Release Notes for Xcode 10.2 beta
- How to use the result type to handle errors in Swift 5?
- Character Properties in Swift 5
- Swift 5 Exclusivity Enforcement
- Expressible By String Interpolation
- ABI Stability and More
- Super-powered string interpolation in Swift 5.0
- Swift 5.0: How to migrate your project and frameworks
- Enumerations
- Indirect Enums - Swift 3.0
- Indirect Enums And Structs
- https://www.avanderlee.com/swift/enumerations/
- Unknown Enum Cases
- SERIALISATION OF ENUM WITH ASSOCIATED TYPE
- @unknown default usage with enums in Swift
- Swift 5 Frozen enums
- Make the most of enumerations in Swift
- Inclusive enums with OptionSet
- Swift: Using Enums to Write Safer Code
- Swift: Using Enums to Write Safer Code — Part Two
- Advanced Enum (Enumerations) by Example - Swift Programming Language
- Stop Using Structs!
- When to Use Swift Structs and Classes
- Bidirectional associations using value types in Swift
- Synthesized conditional conformances in Swift 4.2
- Private properties in protocols
- Mixins over Inheritance
- Injecting forEach into chained method calls
- Mastering Generics with Protocols: The Specification Pattern
- Multiple Inheritance in Swift
- How to split decision and action logic with the Swift type system
- The subtleties of protocol extensions
- Using protocols as composable extensions
- Refactoring With Protocols
- Exploring Existential Types With Swift
- Alternatives to protocols in Swift
- Struct References
- Making the Most of Swift.KeyPath
- Swift 4 KeyPaths and You
- The power of key paths in Swift
- Encoding and Decoding in Swift 4
- Encoding and Decoding
- JSON Parsing with Swift 4
- Encoding, Decoding and Serialization in Swift 4
- Single Value Codable
- Using Swift Codable With Property Lists
- Codable cheat sheet
- OBJECT SERIALIZATION IN IOS
- Encoding and Decoding in Swift
- Encoding and Decoding Enums with Associated Values Using Codable (Swift 4)
- Swift Tip: Codable Enums
- Indeterminate Types with Codable in Swift
- Encode/Decode Array of Types conforming to protocol with JSONEncoder
- Type erasure using closures in Swift
- Swift World: Type Erasure
- Swift: Accomplishing Dynamic Dispatch on PATs (Protocol with Associated Types)
- Type Erasure in Swift
- Breaking Down Type Erasure in Swift
- A “Type Erasure” Pattern that Works in Swift
- Swift: Attempting to Understand Type Erasure
- How To Use Type Erasure For Better Model Abstractions
- Lazy Initialization with Swift
- Using lazy properties in Swift
- Swift Lazy Initialization with Closures
- Stored Properties In Swift Extensions
- Property observers in Swift
- Computed properties in Swift
- Property wrappers to remove boilerplate code in Swift
- Property wrappers in Swift 5.1: the missing @Published implementation
- Bindings and KVO alternatives
- Bindings, Generics Swift and MVVM
- Solving The Binding Problem With Swift
- KVO In iOS 11
- Swift Tip: Bindings with KVO and Key Pathss
- Observing properties with Key-Value Observering
- The Strange Case Of Mapping Over Optionals
- Filtering Object To Optionals
- Optionals in Swift explained: 5 things you should know
- All About Swift Optional
- Creating custom collections in Swift
- Let's Build Swift.Array
- Array vs Set: Fundamentals in Swift explained
- Weak self and unowned self explained in Swift
- Discover Side Tables - Weak Reference Management Concept in Swift
- Exploring @dynamicMemberLookup
- Thoughts on @dynamicMemberLookup
- How to use Dynamic Member Lookup in Swift
- Dynamic Member Lookup combined with key paths in Swift
- Pattern Matching, Part 1: switch, enums & where clauses
- Pattern Matching, Part 2: tuples, ranges & types
- Pattern Matching, Part 3: Custom pattern matching & syntactic sugar
- Pattern Matching, Part 4: if case, guard case, for case
- Pattern Matching in Swift
- Custom pattern matching in Swift
- Writing Custom Pattern Matching in Swift
- Pattern Matching with case let
- Pattern matching in Swift
- Defining custom patterns in Swift
- How to create a custom OptionSet
- OptionSetType and enums
- Option Sets in Swift
- OptionSet usage in Swift like NS_OPTIONS
- Option Set
- Understand ARC
- ARC and Memory Management in Swift
- Advanced iOS Memory Management with Swift: ARC, Strong, Weak and Unowned Explained
Keywords: Reflection
, Introspection
, Mirror
, CustomReflectable
- Unbreakable reference cycles in Swift no one is talking about
- Increasing Performance by Reducing Dynamic Dispatch
- Why using isEmpty is faster than checking count == 0
- Swift + Keywords (V 3.0.1)
- Solving the binding problem with Swift
- Swift Get Class Name
- When to Use Swift Structs and Classes
- Debouncing in Swift while your iOS app is in the background
- Inline types and functions in Swift
- Chris Lattner on the origins of Swift
- Exploring the Swift standard library source code