Summarize and share the top ten favorite libraries of iOS developers

Source: Internet
Author: User
Tags image processing library server hosting apple apps

The 10 largest iOS developer's favorite library is voted by the iOS coaching team member Marcelo Fabri, which includes the developer team, iOS coaching team, and industry guests. Each team chooses the five best libraries according to the following rules: 1) cannot cast its own library; 2) exclude large architectures, such as game architectures, 3) Exclude libraries that are not running on the device, such as Cocoapods or Rack::coredata.

The following 10 major iOS developers ' favorite libraries were selected:

  1) Sstoolkit

Sam Soffes is a objective-c genius, Sstoolkit is an example. The author makes a code base of the various UI effects he implements in the app, which is easy for other people to use.

Sstoolkit some of the underlying classes include Sscollectionview,ssgradientview

From the UI widgets to the convenient foundation categories have been carefully designed and documented to help developers solve common problems, such as tracking whether a device has a retina display or whether it can clip a picture

  2) Gpuimage

Gpuimage is a very powerful and easy-to-use image processing library.

offers a wide range of image processing filters and supports real-time filters for cameras and cameras

GPU-based image acceleration with ultra-fast image processing and the ability to customize image filters

Support Arc

However, some of the advanced features of core image, such as face detection, are missing.

Filter

  3) Socketrocket

Socketrocket is a websocket client (WebSocket is the next-generation full-duplex protocol for Web applications, known as "TCP for the Web", which implements two-way communication between the browser and the server), written by Object-c. Super robust and easy to use, it's the perfect partner for real-time applications.

Socketrocket follow the latest WebSocket specification RFC 6455

Only some newer browsers like Chrome support this library

Support for TLS (WSS), IOS 4.x system

Use Nsstream/cfnetworking (available for free), use arc

Adopt a parallel architecture

Most of the work is done by the backend, based on delegation programming. No UI package dependencies.

Because of Square, socketrocket.

  4) Hockeykit

Hockeykit is an iOS Ad-hoc auto-update framework. It can be used by all the apps in the Apple Store, which can significantly improve the entire beta process, in two parts: Server and client framework. Server-side components do not require a client library to work alone.

You can work with multiple applications of bundle identifier (with different bundle identifier for debug, Adhocbeta, and AppStore releases) by simply installing the server on the service side

By default when the app starts or wakes up, the client detects updates from the server, and the user can modify this setting in the Settings dialog box: Once a day or manually detect updates

The Android platform is supported in addition to support for Ios,hokeykit, but the Android version is still in the alpha phase, supporting OTA and in-app updates

Providing server hosting services for Hockeykit users

Beta test Demo

  5) Jsonkit

Jsonkit is a more commonly used JSON data access tool on the objective C platform.

Jsonkit can be automatically connected to Libz.dylib without manual connection in the case of operation

During parsing, if there is a gzip file detected, Jsonkit can automatically decompress

Super fast, support for previous iOS versions (but note that iOS already has native JSON parsing tools starting with iOS 5)

Jsonkit's performance is much better than json-framework (ie, sbjson), Jsonkit is also very simple to use and performance is better than the nsjsonserialization in Apple iOS 5.0. Faster than Nsjsonserialization 25% to 40%, is already a very big gap

Benchmark test result diagram

  6) Magicalrecord

The use of core data will use a lot of reference code, so that the work becomes very complex, people have a sense of frustration, the emergence of Magicalrecord is to solve these problems.

Not only cleans up the core data code, but also makes nsfetchrequest modifications when necessary

Requires iOS 5.0 and later, Mac OS 10.7 and later

Using arc

Use icloud to sync core data stores

  7) RestKit

Restkit is an open-source objective-c framework.

Simple interaction with RESTful Web Services in iOS and Mac OS x objective-c

Contains a simple HTTP Request/response API

With a powerful object mapping system to reduce code length

Restkit reduces resource consumption for json/xml processing, supports JSON parsing through Sbjson and YAJL

When your app needs to be integrated with a rest remote API, Restkit will come in handy to help you reduce your workload (tutorial guide).

Add Restkit

  8) TestFlight

Want to easily send and beta applications? With TestFlight, there's no need to go through itunes, someone has sorted out its three great killer:

Easily capture test users ' Udid and iOS versions, hardware versions, and send them to developers. After receiving the developer's TestFlight invitation, the user simply takes their iphone to open the link in the invitation, registers the account, registers the hardware

After the test package, do not send each email, just to upload the IPA to the TestFlight website, and then check the appropriate test users, click Confirm, you are done, the user will immediately receive TestFlight update notice, Then just log on to the TestFlight website on his iphone and TestFlight will automatically install the test IPA on his iphone

Don't worry about the user not installing successfully, Testfligh can give you real-time feedback of the latest statistics

The desktop app is now available for faster and easier use.

 9) Mbprogresshud

Apple apps generally use a semi-transparent progress display, but this API is not public, so if you use it, you'll probably be kicked out of AppStore. And Mbprogresshud provides an alternative that does not see the difference between the results and the official program.

Additional features such as virtual progress indicators and completion prompts are also available

You can also install other things, such as text that needs to be displayed, animations, x and Y settings, and so on, and many iOS instructors are using it, typically used for in-app purchases

Mbprogresshud applies to any iOS version, requires LLVM 3.0 and above compiler architecture, compatible with arc and non-arc projects, depending on Apple's following architecture:

Foundation. Architecture

UIKit. Architecture

Coregraphics. Architecture

Transparency Progress Effect

 ) afnetworking

Afnetworking is a lightweight iOS Network Service class library. It is based on such libraries as Nsurlconnection and Nsoperation, which makes the implementation of many network communication functions very simple.

Support for HTTP requests and rest-based network services (including GET, POST, PUT, delete, etc.)

Support Arc

Requires iOS 5.0 and later

There are plugins that extend existing functionality and a full-featured API

How easy is it to get json from a URL? Take a look at the following lines of code

Nsurl *url = [Nsurl urlwithstring:@ "Https://alpha-api.app.net/stream/0/posts/stream/global"]; Nsurlrequest *request = [Nsurlrequest Requestwithurl:url]; Afjsonrequestoperation *operation = [afjsonrequestoperation jsonrequestoperationwithrequest:request success:^ ( Nsurlrequest *request, nshttpurlresponse *response, id JSON) {NSLog (@ "app.net Global Stream:%@", JSON);} Failure:nil]; [Operation start];

In these 10 large libraries, Afnetworking is the biggest winner and is now the third largest objetive-c library on GitHub, and many of the most popular applications on Iphone,ipad Use this class library, which is a favorite of many people.

Here to put the use of the library to introduce to everyone, hoping to really help the developers, so that your life is easier.

--Open source China

Summarize and share the top ten favorite libraries of iOS developers

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.