MVVM-based iOS development framework Easyios

Source: Internet
Author: User

New MVVM (Model-view-viewmodel)-based programming schema, opening Easyios development functional programming chapter.

Easyios 2.0 similar to ANGULARJS, the core is: MVVM, ORM, modular, automated two-way data binding, and so on

For questions about what MVVM is and why iOS development requires MVVM's thought programming, see the article on building iOS apps with Model-view-viewmodel in detail.

Easyios 2.0 is built on the idea of MVVM programming, encapsulating scene,scenemodel,model,action Four models to develop iOS. The definition of 4 models solves the poor code quality of Viewcontroller in iOS development and makes the structure more clear.

    • 1. Scene is a subclass of Viewcontroller, responsible for only the display logic of the interface

    • 2.Model data model, the parent class implements the ORM, can realize the JSON, object, SQLite between the three-key conversion,

    • 3.SceneModel View-The data model, which is responsible for the binding of the view and the model, in which the work of the binding is given to Reactivecocoa.

    • 4.SceneModel contains the action member, the action class is responsible for the network data request, the data cache, the data parsing work

If you look at GitHub's trending objective-c list, you must have seen Reactivecocoa. If you Weibo on the Tang Qi, Onevcat and other domestic first-class well-known developers. That should have been heard Reactivecocoa. Reactivecocoa, called RAC, is a objective-c practice based on the idea of responsive programming, an open source project on GitHub that you can find here.

With the Mknetworkkit network framework, some features have been modified, the underlying network cache is supported, and it is easy to control whether caching is enabled.

Use the REACTIVECOCOA framework to achieve responsive programming and reduce code complexity.

Integrated open source Code uigridview grid View

Integrated open source code Rtlabel Rich Text label

Integrated Svprogresshud Indicator

Integrated Mjrefresh drop-down refresh, with redaction

Model class integrates Jastor class library and Mojodatabase class library

Integrated with a lot of good open source code

Some of the functions draw on Beeframework

Common class Libraries:

Action responsible for network data requests

Model is responsible for data storage

Scenemodel is responsible for the scene and model binding, calling action for data requests

Scene A view is equivalent to Uiviewcontroller, which provides a way to quickly integrate network requests and pull-up reload loading.

Scenetableview a TableView, with scene provides an integrated pull-down refresh loading method

Scenecollectionview a CollectionView, with scene provides an integrated pull-down refresh loading method

2.0 Version Update
    • Schema modification, based on the MVVM schema

    • Peel the Scenemodel out of the scene and join the Responsive programming framework Reactivecocoa

    • Reactivecocoa Chinese Instruction Tutorial REACTIVECOCOA2 combat

    • Reactivecocoa has an open source project on GitHub REACTIVECOCOA2

1.0.3 version Update
    • No more worrying about the wonderful pictures

    • New font image support the demo in the resource is a swift and Easyios-based font image presentation that can be used as a picture dictionary

    • Extensible Font Library, words need to add TTF and JSON file to easily expand special fonts

    • Currently supports 4 kinds of picture fonts Fontawesome, Zocial-regular, Ionicons, Foundation

    • Fontawesome 4.1 Font library with 439 icons

    • Foundation icons Font library with 283 icons

    • Zocial Contains Font Library with 99 icons

    • Ionicons 1.5.2 Font Library with 601 icons, mostly IOS7 style

1.0.2 version Update
    • Fix some header file reference relationships, which adds support for swift header files.

    • With Swift's classmate, to set the objective-c bridging header to ${pods_root}/headers/easyios/swift-bridge.h

    • 1.0.2 version released to Cocoapods

1.0.1 version Update
    • 1. Added ORM support, from this can realize the JSON, object, SQLite between the three-key conversion, you can save a lot of code, is not cool.

The model class integrates the Jastor class library and the Mojodatabase class library

    • 2. Modified the parameters of the post in the action class, adding the files parameter,

Therefore, action. Post_msg, you need at least 3 parameters now.

    • 3. Learn from the BEEFRAMEWORK message notification mechanism ... silently give Guo Da a praise.

    • 4. Fixed a drop-down refresh bug

    • 5. Provide a button to open the Baidu map, Apple Maps, Google Maps, the German map of the interface to initiate calls, no longer have to worry about looking at the map document

MVVM-based iOS development framework Easyios

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.