Third party libraries are now indispensable to programmers, not only APP development but almost all commercial projects use third party libraries to some extent

The number of open source libraries on Github with Star>100 is as follows

JS can be seen to be the absolute advantage of the first to a certain extent also explains why JS in recent years so rapid development will not point JS are embarrassed to say that they are code farmers but now JS circle wheel wave is becoming more and more intense do not write their own frame are embarrassed to say hello

OC is ranked 4th and I believe this ranking will rise. Swift is not in the top 10 yet, but it will soon surpass OC.

Xcode is basically a must-have tool for Mac/iOS programmers. But can say how good it is.. That’s a matter of opinion (nothing compared to Visual Studio), but there’s a huge productivity boost when you use plug-ins

I’m going to introduce some of the third-party libraries and plugins THAT I use frequently

introduce

Third-party libraries

CocoaPod

CocoaPod is not a third-party library on iOS but a management tool for some of the most well-known third-party libraries

Before CocoaPod came along, managing third-party libraries was a pain, especially for large libraries like Nimbus, which could be a pain every time they were updated

CocoaPod solves these problems by introducing third-party libraries in a Framework way that saves a lot of time for integration and is all-objective C and Swift(Cathatage on Swift I haven’t actually used But the way it integrates is a bit more difficult than CocoaPod.)

iCarousel

In the era of iOS 4.x (I started iOS development from 4.0), the effect of Coverflow was all the rage. When I was just a beginner, I had no idea how to achieve it. (At that time, all movie information apps such as Pudding Love Life needed to achieve the effect of Coverflow film selection It just so happens that I have to make one.) iCarousel came along and solved a big problem for me

Since then, iCarousel has become my go-to library for every project (and my favorite library), covering everything from Coverflow to rotating ads with a dozen or so built-in display types that handle 90% of UI needs and its powerful customization that handles the remaining 10%

For those unfamiliar, try pod Try iCarousel, which has all the features in the demo

Author nicklockwood is also prolific and maintains a number of excellent open source libraries (such as iVersioniRate)

AFNetworking/Alamofire

The HTTP framework leader was the last winner in the competition with ASIHTTPRequest (of course because the author of ASIHTTPRequest didn’t maintain it, but many domestic companies maintained it for historical reasons) because the new features of maintaining and embracing the language were quickly adopted and loved

I believe that everyone has used here will not repeat

MKNetworkKit

If AFNetworking is the leader, MKNetworkKit is the junior player, but it is also popular with developers because it is lighter than AFNetworking

When ASIHTTPRequest stopped maintenance, I chose AFNetworking over MKNetworkKit by accident and used it in many projects

However, perhaps because AFNetworking is developing faster and faster and the author is a lone soldier, the author has basically given up the update (version number remains at 0.8x), which is a pity

SDWebImage

The master of asynchronous image downloading and cache management UITableView, whose code has been studied and shared countless times by developers, is also influenced by Kingfisher, the Swift version of SDWebImage

AFNetworking and MKNetworkKit both implement data caching as well as FastImageCache and TMCache, but SDWebImage is the only one that integrates them

In addition to simply using sd_setImageWithURL, SDImageCache can also be used independently and is quite powerful

ZXingObjC

Zxing is a Google QR code scanning component originally written in Java and now has ports in various languages and ZXingObjC is one of them

Zxing supports a variety of mainstream one-dimensional code two-dimensional code scanning simple to use small factory if you want to achieve two-dimensional code scanning this function will choose ZXING

But iOS7 has built in two-dimensional code camera scanning and iOS8 has also built in two-dimensional code static scan after may no longer need to use ZXing 🙁

MBProgressHUD

Easy to use and stable HUD components translucent black with white text style is also the best choice for loading prompt

Masonry/SnapKit

The best Autolayout library (cartographers are good but I’m not used to them) helped me navigate the Autolayout barrier easily

I would like to mention in several articles how to use it. If you have never tried it before, you may wish to take a look

pop

The engineers at Facebook have been gods and have contributed enormously to the open source community and have been instrumental in the development of languages like HipHop to PHPreact to JavaScript to Pop to Objective-C and so on

Whether it is Hiphopact, engineers at Facebook always open source pop with a subversive attitude, no exception. I also briefly introduced this point before, and the release of pop-based paper shocked the whole APP industry. Pop is also very successful in this regard

Pop also supports custom animations very well and I wrote MMTweanAnimation based on pop’s custom animations

ReactiveCocoa

I’m ashamed to say that I only use a little bit of RAC (for input validation only)

I haven’t gone into any depth yet and the understanding of RAC is superficial, but this article is very detailed and worth checking out

GPUImage

If you want to do image (photo or video) related processing or simply want to make a camera 360like camera filter then you must study GPUImage

As its name suggests, GPUImage is an image processing framework based on the GPU. We all know that the GPU is the key to improving performance. That’s why GPUImage is so important and popular

Lumberjack

The log system is something that every project should have and Lumberjack is the best at it

You can simply think of it as a replacement for NSLog (Lumberjack is faster than NSLog in short) or build a more powerful logging system based on your needs

NSLogger

As the name suggests, NSLogger is also a log system. It features a powerful Desktop Viewer that allows you to easily view the logs generated by your APP (hierarchical filtering, etc.) and even log a picture directly.

AwesomeMenu

Path, which was born out of nothing at that time, had beautiful design and wonderful animation, which made many people’s mouths shut. The best thing was its pop-up menu, which became the object that every APP tried to imitate

You can do this easily with AwesomeMenu

MMDrawerController

The normal slide menu is done with MMDrawerController

realm

CoreData’s status as a first-class citizen of data storage is self-evident, but it is also because it is not easy to use that MagicalRecord helper classes and even FMDB libraries based on pure SQLite

Realm debuted as a challenger with faster load performance (said to be several times faster than CoraData) and an easy-to-use interface (using data as objects is similar to the AWS/LeanCloud idea) and cross-platform (iOS/Android) OC/Swift/Java are supported)

Realm-json will please you if you’re used to Modal conversions like Mantle

As the incubation project of YCombinator, its quality can be guaranteed. At least, I was surprised when I tried it out. No matter API design or data object definition, even database version upgrade is very convenient.

Xcode plug-in

Alcatraz

Similar to CocoaPod, Alcatraz is a plugin manager for Xcode that allows you to easily manage plugins (not only plugins, but themes, etc.).

FuzzyAutocomplete

If I had to pick just one plug-in it would be FuzzyAutocomplete with its powerful fuzzy matching input that will make you cry when you write code without having to remember the names of long objects or functions

XAlign

As a cleanliness freak code farmer, seeing misaligned code must be intolerable. XAlign can easily solve your troubles

VVDocumenter-Xcode

Another powerful feature that identifies the parameters and return types of the current function helps you quickly write compliant comments (currently Javadoc standard)

deriveddata-exterminator

If you keep getting an Xcode bug that says you need to delete files in a directory for some reason or compile, you’ll be impressed by this plugin because you’re not alone

Xcode-Quick-Localization

Multilingualism has never been very convenient in iOS development and you can save yourself a lot of work with it

Backlight-for-XCode

Highlighting a line that is currently being edited, like Xcode’s default 80-word pagination prompt, is a friendly reminder that depends on whether you like it or not

Helmet

If you go back to your system API as often as I do, you’ve probably hit the wrong key and changed the system header file and even if you undo it and recompile it, Xcode will tell you to clean the cache Helmet will prevent this from happening more effectively (although the code you want to change to the POD is blocked too ~~ I think it needs to be improved)