Some of the third-party libraries and controls common to iOS

Source: Internet
Author: User

Network communication

1, ASIHTTPRequest This is a classic old library, fully functional and powerful, but has stopped updating for a long time (iOS5.0 stopped updating, but I recently see this project on GitHub new changes). There are a few minor problems on different iOS versions (reminders are shown on the display), so it's better to change them slightly. : Https://github.com/pokeb/asi-http-request 2, afnetworking Lightweight Communication class library, very simple to use. : Https://github.com/AFNetworking/AFNetworking 3, Mknetworkkit recently done a good communication class library, With afnetworking and asihttprequest the advantages of both sides, even more rich, but I have not used. : Https://github.com/MugunthKumar/MKNetworkKit Socket1, Cocoaasyncsocketcocoaasyncsocket is the most widely used socket development library, The programmer's time in contact with Cfnetwork is omitted, which prolongs the programmer's life. : Https://github.com/robbiehanson/CocoaAsyncSocket 2, Socketrocketsocketrocket is a library of square development that implements WebSocket, Instant communication is easy to implement. :https://github.com/square/socketrocket  Data parsing 1, Sbjsonsbjson parsing speed is actually relatively slow, but do not know why it is the most widely used. :  2, Jsonkitjsonkit parsing speed closest to the iOS native parsing class, of course, iOS5.0 began to support native parsing, so it is necessary to choose a library. : Https://github.com/johnezang/JSONKit 3 and Touchjsontouchjson are also widely used.: Https://github.com/TouchCode/TouchJSON  4 and json-framework have not been used. : Https://github.com/stig/json-framework 5, Tbxmltbxml is a lightweight DOM-style XML parsing class library with good performance and low memory footprint, but it does not make XML formatXPath is not supported, and only parsing is supported, and XML modification is not supported. : Https://github.com/71squared/TBXML 6, Touchxmltouchxml This is also a set of Dom way of XML parsing class library, support XPath, do not support XML modification. : Https://github.com/TouchCode/TouchXML 7, Kissxmlkissxml This is a set of XML parsing class libraries based on Touchxml, except for the implementation of XML-enabled modifications. : Https://github.com/robbiehanson/KissXML 8, Gdataxmlgdataxml is a DOM-style XML parsing class library developed by Google that supports reading and modifying XML documents. Supports XPath query. :  third-party management 1, Fmdbfmdb is a database management library, encapsulating the SQL statements related to SQLite, simplifying database operations. : Https://github.com/ccgus/fmdb 2, Ssziparchivessziparchive and Sstoolkit are the same author, this dude is a genius. Https://github.com/soffes/ssziparchive 3, Ziparchiveziparchive is also the Minizip package. Https://github.com/mattconnolly/ZipArchive 4, Objective-zipobjective-zip, zlib and Minizip were encapsulated with OBJECTIVE-C, Very simple to use. Https://github.com/flyingdolphinstudio/Objective-Zip 5, Zxingzxing is an open source Java class Library for parsing 1d/2d barcodes in a variety of formats. The goal is to be able to decode the QR code, Datamatrix, UPC 1D barcodes. It provides clients under a variety of platforms. Https://github.com/zxing/zxing 6, Zbarzbar is a desktop computer with bar code/two barcode scanning Tool, support camera and image scanning, support multi-platform including IPhone phone. At the same time, Zbar provides a QR code scanning API development package. Https://github.com/ZBar/ZBar 7, objqrencoder&Nbsp;objqrencoder is a QR code encoder used to generate two-dimensional code images in objective-c. Https://github.com/jverkoey/ObjQREncoder 8, Openudidopenudid is a new workaround after iOS prohibits the use of system Udid. Https://github.com/ylechelle/OpenUDID 9, Regexkitliteregexkitlite is a lightweight objective-c regular expression library that supports Mac OS X and IOS, Developed using the ICU library. HTTPS://GITHUB.COM/WEZM/REGEXKITLITE 10, Stutilsstutils is a series of toolsets that contain many extensions to native iOS classes, Of course also contains a user password Stkeychain for secure storage. HTTPS://GITHUB.COM/LDANDERSEN/STUTILS 11, Scifihifi-iphonescifihifi-iphone are used to securely save user passwords to Keychain. Https://github.com/ldandersen/scifihifi-iphone 12 and Sskeychainsskeychain are the same as scifihifi-iphone, but they are lightweight. HTTPS://GITHUB.COM/SOFFES/SSKEYCHAIN 13, Sdwebimagesdwebimage calls the pictures on the Web site as simple as local calls to the images built into the app package. The operation is also very simple. Https://github.com/rs/SDWebImage 14 and Umengumeng have both statistical analysis and social components. But the number of users of statistical analysis appears to be significantly greater than for users of their social components. http://dev.umeng.com/analytics/ios/sdk-download  third-party UI1, Appiraterappirater is an open source class that can be used directly into any iphone app, Use to remind users to review or rate the app when they open the app. : https://github.com/arashpayan/appirater 2, Fdstatusbarnotifierviewfdstatusbarnotifierview realized theThe ability to display custom reminder information in the status bar. : Https://github.com/frankdilo/FDStatusBarNotifierView 3, Mtstatusbaroverlaymtstatusbaroverlay is a custom iOS status bar, Used to override the system default status bar. : Https://github.com/myell0w/MTStatusBarOverlay 4, Icarouselicarousel is a switch to simplify the view when implementing a carousel on IOS, support the IPad, offers a variety of switching effects. : Https://github.com/nicklockwood/iCarousel 5, Mbprogresshudmbprogresshud not much to say, the great chrysanthemum. : Https://github.com/jdg/MBProgressHUD 6, Svprogresshudsvprogresshud is a lightweight chrysanthemum. : Https://github.com/samvermette/SVProgressHUD 7, Mwphotobrowsermwphotobrowser implements a photo browser-like album app that comes with iOS, can display pictures from the phone or a network image, automatically download pictures from the network and cache them. The image can be scaled and so on. : Https://github.com/mwaterfall/MWPhotoBrowser 8, SHARESDKSHARESDK support to share to Sina Weibo, friends, friends Circle, QQ friends, Teng Xun Weibo, QQ space, Renren, happy NET, Watercress, Sohu Weibo, NetEase Weibo, sms, mail, print, copy and so on. However, since this SDK package is very large, it must be streamlined when used. :http://sharesdk.cn/download      third-party libraries are the things that programmers can't live without, not just app development. Basically, all commercial projects will be used more or less in third-party libraries
The number of open source libraries star>100 on GitHub is as follows
Can see the absolute advantage of JS to the first to a certain extent also explains the JS in the past few years why development so quickly do not point JS are embarrassed to say that they are yards farming but now JS Circle of the wheel of the building of the tide is also growing up not to write a frame are embarrassed to greet
OC Ranking fourth believe this ranking will also rise Swift temporarily still squeeze not into the top ten but more than OC is also within reach (after all, pro-son)
Xcode is basically a must-have tool for Mac/ios programmers (Appcode I don't know how many people use it?) but I can say how useful it is. This is the same as the Visual Studio, but after using the plug-in will be able to increase the productivity of a large
Next I will introduce some of my own commonly used third-party libraries and plug-ins may not be many but must be tried and tested must not be wrong
Introduced
Third-party libraries
Cocoapod
Cocoapod is not a third-party library on iOS but a management tool for the famous third-party library
The management of third-party libraries is very painful before cocoapod is present, especially if some large libraries (such as Nimbus) update the library every time it can be very painful.
The advent of cocoapod solves these problems by introducing a third-party library into the framework greatly saves time in integration and takes all objective-c and Swift (Cathatage on Swift I didn't actually use it. But the way it's integrated is still more troublesome than cocoapod.
Icarousel
In the era of iOS 4.x (I was also a 4.0-year-old iOS development) Coverflow The effect of rage was a fledgling I was almost helpless on how to achieve (all the movie information app such as pudding love life etc all need to realize the effect of coverflow selection It happened that I had to do one too) the advent of Icarousel solved a big problem for me.
Since then Icarousel has become the essential medicine (and my favorite library) for every project, whether it's a coverflow or a carousel ad. Its built-in dozen display types basically address 90% of the UI requirements and its powerful customization capabilities can resolve the remaining 10%:)
Unfamiliar friends can try their beautiful demo (pod try Icarousel) all the features in the demo
Author Nicklockwood is also a high-yielding great God while maintaining a large number of high-quality open source libraries (such as iversion irate) you might as well go to see Amoy
Afnetworking/alamofire
The leader of the HTTP framework was at the end of the competition with asihttprequest (and of course because the author of ASIHTTPRequest did not maintain it, but many companies in the country are self-sustaining for historical reasons) because of the new features of maintaining and embracing language in a timely manner. Quickly accepted and loved by everyone
I'm sure everyone has used it.
Mknetworkkit
If Afnetworking is the boss, then Mknetworkkit can be said to be a younger brother. But also because of the reason than afnetworking light weight has been favored by many developers
That year, because ASIHTTPRequest stopped maintenance, I chose the latter between afnetworking and Mknetworkkit and used it in many projects, in a fortuitous coincidence.
But maybe it's because afnetworking is growing faster and quicker, and the author is a soldier. The author also basically gave up the update (version number at 0.8x) Very pity
Sdwebimage
Image asynchronous download and cache management UITableView's gold partner, whose code has been shared by developers for countless times, the kingfisher (which can be said to be swift version of Sdwebimage) is also deeply affected.
Asynchronous download afnetworking and Mknetworkkit have implemented data caching and Fastimagecache and Tmcache, but it's only sdwebimage.
In addition to the simple use of sd_setimagewithurl outside the Sdimagecache can also be used independently of the function is also quite powerful
Zxingobjc
Zxing is Google's QR code scanning component originally written in Java, now also has a variety of languages of the transplant version and ZXINGOBJC is one of them
Zxing support a variety of mainstream one-dimensional code QR code scanning simple and easy to use small factory if you want to achieve QR code scanning this function will be selected zxing
However, IOS7 has built-in QR Code camera scan and IOS8 also has built-in QR code static map scanning may no longer need to use the Zxing:(
Mbprogresshud
Easy-to-use and stable HUD components Translucent black white style also enduring loading tips for the best choice
Masonry/snapkit
The best use of the AutoLayout handwriting library (cartography is not bad, but still not used to) help me to easily cross the AutoLayout this way
I have also mentioned several times in the article about the use of masonry if you have not used a friend may wish to take a look at
Pop
Facebook's engineers have always been a God-made contribution to the open source community and greatly contributed to the development of languages such as hiphop to PHP react to JavaScript pop to objective-c, etc.
Whether it's hiphop react Facebook engineers are always in a disruptive attitude to open source POPs is no exception I have briefly introduced the pop-based paper a release shocked the entire app at this point pop is also very good
Pop also supports custom animations well I also wrote mmtweananimation based on pop custom animations
Reactivecocoa
I'm ashamed of the famous RAC. I only used a little fur (only to do input validation)
For the time being, there is no deep-seated understanding of RAC also on the surface stage but this article is very detailed and worth a look.
Gpuimage
If you want to do an image (photo or video) related processing or simply want to make a photo filter like Camera360, then you must study the Gpuimage
As its name describes Gpuimage is a GPU-based image processing framework we all know that GPUs are the key to improving performance, which is why gpuimage is so important and so popular.
Lumberjack
The log system is something that every project should have and lumberjack is the leader in the log system.
You can simply think of it as a substitute for nslog (lumberjack faster than NSLog) or to build a more powerful log system based on your needs.
Nslogger
From the name can be seen Nslogger is also a log system is characterized by a powerful desktop viewer allows you to easily view the log generated by the app (support hierarchical filtering and so on can even directly log a picture)
Awesomemenu
That year turned out of the path its beautiful design wonderful animation do not know how many people mouth are not together and the most praise is its pop-up menu for the moment to become the object of each app scramble to imitate
With Awesomemenu, you can easily implement it.
Mmdrawercontroller
Normal slide-off menu with Mmdrawercontroller.
Realm
The status of the CoreData as a data store is self-evident, but also because it is not easy to use it will appear magicalrecord this auxiliary class or even fmdb this kind of pure SQLite-based library
And Realm's debut as a challenger is not only faster to read (it is said to be a coradata) interface is easy to use (the data is used in the form of objects, which is similar to Leancloud's idea) and also cross-platform (Ios/android can use oc/swift/ Java all support)
If you're used to using modal like mantle, Realm-json can be a favor.
The quality of the incubation project as a ycombinator is guaranteed, at least I'm trying to make a big surprise. Whether it is the design of the API or the definition of the data object, even the database version upgrade is very convenient)
Xcode Plugin
Alcatraz
Similar to Cocoapod Alcatraz is Xcode's plug-in manager that allows you to easily manage Xcode plugins (not only managing plugins but managing themes, etc.)
Fuzzyautocomplete
If only let me choose a plug-in left that must be fuzzyautocomplete strong fuzzy match input so you can write code no longer have to mind to remember the name of the long object or function name is good to make you want to cry
Xalign
As a neat-and-tidy code farmer to see the misaligned codes must not be tolerated xalign can easily solve your troubles
Vvdocumenter-xcode
Another big one. The parameters and return types of the current function can be identified to help you quickly write code that conforms to the specification (Javadoc is currently the standard)
Deriveddata-exterminator
If you're constantly encountering xcode, you need to delete a file in a directory for some reason. But then you will be moved by this plugin because it means that you're not the only one who's met.
Xcode-quick-localization
Multi-language is not very convenient in iOS development you can save a lot of things with it.
Backlight-for-xcode
It is also a friendly hint to highlight a line that is currently being edited if the default 80-word paging prompt is the same as Xcode. I don't like it.

Some of the third-party libraries and controls common to iOS

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.