Objective-C

See all tags

10 posts

Development

Swift 5.5 Released!

Swift 5.5 is a major release introducing powerful concurrency features like async/await, structured concurrency, and Actors, alongside other enhancements.

Development

Faster Mix-and-Match Builds with Precompiled Bridging Headers

Build times in Xcode projects that mix Objective-C and Swift rise due to the Swift compiler re-processing large bridging headers for each Swift file.

Development

NSError

NSError is Cocoa's way to handle errors without exceptions. It tells about failures with a code, domain, and userInfo dictionary.

Development

Key-Value Observing

Key-Value Observing (KVO) has an ugly, wordy API, but it is one of Cocoa’s most powerful features.

Development

NSHashTable & NSMapTable

NSHashTable acts as a general version of NSSet. It is mutable, holds weak references, can copy items on input, and handles arbitrary pointers using pointer identity for equality and hashing.

Development

NSEnumerator / NSFastEnumeration

Enumeration makes computation powerful by applying logic to collections.

Development

NSAssertionHandler

In Objective-C, Foundation has macros like NSAssert for methods and NSCAssert for functions. They also have versions for parameters: NSParameterAssert and NSCParameterAssert.

Development

NSValue

NSValue is the lightweight way to put any C scalar or struct (int, float, CGPoint, CGRect, NSRange, etc.) into an object so it can live in NSArray, NSDictionary, NSSet, etc.

Development

KVC Collection Operators

The article discusses Key-Value Coding (KVC) Collection Operators in Objective-C, which provide a concise, Ruby-like syntax for performing aggregate operations on collections using valueForKeyPath:.

Development

NS_ENUM & NS_OPTIONS

NS_ENUM and NS_OPTIONS are the modern, Apple-approved way to declare enums and bit-masks.