Message Passing - The Heart of Objective-C
Unlike C++ virtual methods, Objective-C uses dynamic message passing. Understanding this mechanism unlocks the language's full power.
// 160 articles available
Unlike C++ virtual methods, Objective-C uses dynamic message passing. Understanding this mechanism unlocks the language's full power.
Retain cycles are the most common memory leak in Objective-C. Learn how they form, how to detect them, and patterns that prevent them.
Objective-C lacks namespaces, so the community invented conventions. Here's how prefixes and other patterns help avoid collisions in a flat symbol space.
Objective-C is famous for verbose naming. Let's celebrate (or mourn) the longest method and class names hiding in Apple's standard libraries.
Objective-C supports exception handling with @try/@catch, but the community settled on NSError pointers instead. Here's why.
Swizzling is powerful but dangerous. Here are the common pitfalls and how to avoid turning your clever hack into a debugging nightmare.
Method swizzling lets you replace method implementations at runtime. Here's how it works and when this powerful technique shines.
Understand the class cluster pattern that makes NSString, NSArray, and NSDictionary work, and learn how to implement your own.
Discover how the Objective-C runtime secretly stores small strings directly in pointer values, eliminating heap allocations entirely.
Learn how dispatch barrier queues provide elegant reader-writer synchronization in Objective-C without explicit locks or semaphores.