Objective-C Invocation Forwarding

The big picture of Objective-C invocation forwarding.

Expose Mutable Properties as Immutable

It is a common API design pattern. But how to do it in Swift is not well known.

Objective-C Initializer Design Rules

Rules to follow when designing initializers.

The Complete Objective-C Messaging Flow

How do method lookup, dynamic resolution and message forwarding work together in objc_msgSend?

Delegate VS Block in API Design

Wherever delegate works block also works, but sometimes delegate is still a better choice in API design.

The Danger of Invisible Pools

The danger is in the invisible. The danger is in regions that are out of your control.

Defects of KVO

KVO is a very nice programming facility, except for some annoying defects.