Macros in C / Objective-C 06/27/2018

Macro is a quite different programming technique. Why do we need to use it nowadays? And what types of tasks could be solved using macros? And several real-world examples.

objective-c  c-preprocessor  macros 

Exploring Mach-O binaries. Tools - nm 05/05/2018

Checking out how to deal with mach-o symbol table using nm

mach-o  disassembly  disassembly-tools  nm  binaries  command-line 

tryLock vs lock 03/22/2017

Trying to understand the logic behind synchronization approaches used in reference counting in Objective-C

multithreading  locks  synchronization  disassembly  osx 

NSObject Internals. Episode 4 - retain and release 03/08/2017

Exploring two basic operations for memory management in Objective-C using the available source code

objective-c  nsobject  nsobject-internals  retain  release  memory-management 

NSObject Internals. Episode 3 - autorelease and @autoreleasePool 02/28/2017

New episode shows another side of memory management in Objective-C - implementation of autorelease and autorelease pool

objective-c  nsobject  nsobject-internals  autorelease  autorelease-pool  memory-management 

Exploring Mach-O binaries. Tools - pagestuff 02/12/2017

More about binaries and disassembly in OS X. And pretty simple, but still powerful tool - pagestuff

mach-o  disassembly  disassembly-tools  pagestuff  binaries  command-line 

NSObject Internals. Episode 2 - Properties (accessors) 01/22/2017

In the second episode we'll see how properties are implemented and what actually attributes do to the properties

objective-c  nsobject  nsobject-internals  property 

NSObject Internals. Episode 1 - alloc 01/15/2017

Start of the new series where we're digging into NSObject source code. In the first episode, we'll check how [NSObject alloc] looks inside and learn some tricks

objective-c  nsobject  nsobject-internals 

Swift and Multiple Inheritance 11/15/2016

Some aspects of multiple inheritance using protocols in Swift

oop  swift  multiple-inheritance