Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A Eulogy for Objective-C — Aaron Hillegass

Realm
June 12, 2015

A Eulogy for Objective-C — Aaron Hillegass

A discussion of the purpose and history of Objective-C. Will include a look at how Swift continues that purpose while using more modern language constructs.

This talk was presented at AltConf in June 2015.

Realm

June 12, 2015
Tweet

More Decks by Realm

Other Decks in Programming

Transcript

  1. Smalltalk (1980) • Untyped • Message-based myButton := Button new.


    myButton label:'press me'.
 myButton action:[ myView displaySum ].

  2. Dynamic • Introspection (KVC) • Loose typing (Unarchiving, target/action) •

    isa-swizzling (Faults) • Creating classes at runtime (KVO)
  3. Objective-C 2.0 (2006 - 2012) • Eliminated fragile base class

    problem • Fast enumeration • Garbage collection then ARC • Blocks And, yeah, properties too.
  4. Stabs at concurrency • NSThread and NSLock • @synchronize •

    NSOperationQueue Most successful? NSRunLoop
  5. Swift is a step forward • Less C • More

    terse syntax • More pedantic type system • Fewer files
  6. Big Nerd Ranch • We teach • We write apps

    • We write books • Do you? http://bignerdranch.com/