The car of the future is shared and driven by software

Recommended By

There are many visions on where mobility is going and how transportation will evolve. Which will prevail? Where will the disruption occur? I suspect the car I drive now, will be the last one I

Hey Siri, how do I start a conversation with someone with a disability?

Recommended By

We all love Siri’s little witty quips, but I recently read a heartwarming article over on Mashable that reflects the power of technology to change lives in ways that most of us would never appreciate. I won’t spoil

CES 2017: Health and Accessibility

Recommended By

This year’s CES certainly lived up to the Las Vegas expo’s reputation as the place to see what’s next in tech, showcasing innovations that will set the tone for the rest of the year and beyond. The

Automatic Reference Counting

Guides | Tutorial By 4 years ago

Automatic Reference Counting (ARC) has been around since iOS 5, however it has been an optional tick box when beginning a new project, and if not selected, Manual Reference Counting (MRC) is used. As of Xcode 5, the ARC tick box is missing, and all new projects start with ARC. While you can still disable ARC manually in the project's config file, this is probably a good sign that ARC is the way to go for new projects.

Copy vs. Retain, Immutable vs Mutable

Guides | Tutorial By 4 years ago

In the Foundation framework for iOS and Mac the main container classes (NSString, NSArray, NSDictionary, and some others) have two states; Immutable and Mutable. If a class is immutable, it cannot be changed and is treated as ready only. When a class if mutable it can be modified after creation. It may seem that when passing one of these around it may be faster to retain it rather than copy it, because new memory does not need to be allocated. While this is true it can leave instabilities, see this example.

Xcode’s Analyzer (and how to prevent it)

Guides | Tutorial By 5 years ago

Xcode’s “Analyzer” is normally a great way to determine where most memory leaks will occur in your project without actually running it. If you follow Apple’s Memory Management Guidelines the Analyzer is pretty accurate. By no means is it a replacement for the Profiler, but offers some quick checks.

Retain Loops and Delegates

Guides | Tutorial By 5 years ago

When using delegates in an object in Objective-C it is important that the delegate is only assigned within your object, and never retained. The reason for this is to prevent a retain loop, where two objects retain each other; they will never be released. The fix is simple, but can catch you off guard if you want to create an array or dictionary of delegates (using an NSDictionary or NSArray).