Writing / 14
Writing
Mostly notes from reading source in 2018–2020, on iOS internals. Not polished — but every one chewed through myself. Articles are in Chinese.
2020
- Notes on multithreading, continuedSupplementary notes on GCD, NSOperation, NSThread, and the tradeoffs among common locking primitives on iOS.Multithreading
- Blocks: the moves you must knowA practical review of Objective-C blocks: invocation, variable capture, __block storage, memory management, and retain cycles.Objective-C · Blocks
- How memory management works underneathA ground-up look at memory layout, tagged pointers, nonpointer isa, reference counts, weak-reference tables, and ARC versus MRC.Memory management · Internals
- Objective-C Runtime basicsA review of Objective-C Runtime data structures, classes and metaclasses, message dispatch, cache lookup, forwarding, and method swizzling.Runtime · Objective-C
- Objective-C notesNotes on Objective-C categories, associated objects, extensions, delegates, notifications, KVO/KVC, and property semantics.Objective-C
- UIView rendering, revisitedA review of table-view reuse, event delivery, UIView and CALayer, the rendering pipeline, frame drops, and offscreen rendering.UI · Rendering
- GCD: everyday use and internalsA tour of serial and concurrent queues, everyday GCD APIs, synchronization and deadlocks, with notes on libdispatch and XNU internals.Multithreading · GCD
- RSA and ECCA step-by-step walkthrough of RSA key generation and encryption, followed by the curve, group, and scalar-multiplication basics behind ECC.Cryptography · Algorithms
- A few things worth knowing about launch timeBreaks iOS cold launch into the T1, T2, and T3 phases, then maps the main costs and optimization opportunities in each.Performance · Launch time
- RunLoop, sorted outA structured guide to RunLoop modes, sources, timers, observers, Mach foundations, and common uses inside iOS.RunLoop · Internals
2018
- A peek under iOS concurrencyAn introduction to iOS concurrency through control flow, processes, threads, synchronization, and semaphore-based mutual exclusion.Multithreading · Concurrency
- SwiftUI: falling back to UIKit for what it lacksUses UIViewRepresentable to bridge UITextView into SwiftUI and work around limitations in the framework's early text-view support.SwiftUI · Swift
- Xcode / LLDB debugging commands (all of them)A reference for common LLDB commands, breakpoint workflows, debugger controls, and Xcode breakpoint actions.Xcode · Debugging
- Deploying a smart contract from SwiftA practical walkthrough of configuring a node, preparing a transaction, and deploying an Ethereum smart contract from iOS with web3swift.Swift · Blockchain