I’ve mentioned some great libraries that extend features found within the SDK, but few that extend Objective-C itself.
Recently I noticed that a project known as libextobjc from Justin Spahr-Summers has undergone significant updates.
This library enhances core Objective-c functionality enhancing categories, protocols, blocks and more.
Here are some of the features as stated in the readme:
– Safe categories, using EXTSafeCategory, for adding methods to a class without overwriting anything already there (identifying conflicts for you).
– Concrete protocols, using EXTConcreteProtocol, for providing default implementations of the methods in a protocol.
– Simpler and safer key paths, using EXTKeyPathCoding, which automatically checks key paths at compile-time.
– Easier use of weak variables in blocks, [email protected]@strongify in the EXTScope module.
– Scope-based resource cleanup, [email protected] the EXTScope module, for automatically cleaning up manually-allocated memory, file handles, locks, etc., at the end of a scope.
– EXTNil, which is like NSNull, but behaves much more closely to actual nil (i.e., doesn’t crash when sent unrecognized messages).
– EXTBlockTarget, which extends the target-action mechanism with support for blocks.
There are a number of other features, but those stated above are the “production ready” features.
You can download the library on Github here.
If you checked out this library in the past or haven’t seen it before it is definitely worth giving a look.
Submit A Resource
Have you created a useful tutorial, library or tool for iOS development that you would like to get in front of our 300,000+ monthly page views from iOS developers?
You can submit the url here.
The resources we feel will appeal to our readers the most will be posted on the front page.