/NitroCore

The main features set of iOS Nitro lib

Primary LanguageRubyMIT LicenseMIT

NitroCore

NitroCore is the main features set of iOS Nitro lib. It offers categories and macros that improve coding performance. NitroCore aims to contain only features a developer would like to have in every iOS project, so it avoids getting bloated and tries to keep fast and small.

NitroCore groups together these other pods:

Why not a pod with subspecs???

To make NitroCore a pod with subspecs or simply an "aggregator" pod resulted in many discussions. At the end, we decided for the latter. Why?

1) Discoverability issues: subspecs have a serious discoverability issue. You can not search for a subspec at CocoaPods, nor can a subspec have a description of its own. So developers would have to go deep in the main pod wiki, pray to have a very good readme in each subspec folder at the git repo, or to be very curious about every pod launched to discover what is inside of them.

2) More contributions: Having separated projects with a clearer goal improves code contributions, since it is much easier to have knowledge of all the code in a repo.

3) Better documentation: easier to know what to document and what have already been documented.

4) Better testing: easier to know what to test and what have already been tested.

The downside?

1) When a "aggregated" pod is updated, NitroCore has to be updated.

The downside above is not really a problem. Afterall, it is not so different from what happens when a pod depends on another pod. Besides that, it is better to have this kind of trouble than to have a pod no one knows about. =)

Requirements

iOS 4.3 or higher, ARC only

Installation

NitroCore is available through CocoaPods, to install it simply add the following line to your Podfile:

pod "NitroCore"

NitroCore adds the -ObjC linker flag to targets using it. Without it, categories code would be stripped out, resulting in linker errors. For more info about categories inside static libraries, see: Building Objective-C static libraries with categories

We strongly recommend you to add #import<NitroCore/NitroCore.h> to your .pch file! That way, it will look like NitroCore features are really part of the iOS SDK. We could have forced that from the podspec file, but we think doing so would be really intrusive.

Author

License

NitroCore is available under the MIT license. See the LICENSE file for more info.