EasyIOS

基于MVVM 的IOS开发框架
授权协议 MIT
开发语言 Objective-C Swift
所属分类 手机/移动开发、 iOS/iPhone/iPad开发包
软件类型 开源软件
地区 国产
投 递 者 段干德泽
操作系统 iOS
开源组织
适用人群 未知
 软件概览

Swift版本最新发布 https://github.com/EasyIOS/EasyIOS-Swift

全新基于MVVM(Model-View-ViewModel)编程模式架构,开启EasyIOS开发函数式编程新篇章。

EasyIOS 2.0类似AngularJs,最为核心的是:MVVM、ORM、模块化、自动化双向数据绑定、等等

关于有疑问什么是MVVM,以及为什么IOS开发需要MVVM思想编程的,请看文章用Model-View-ViewModel构建iOS App有详细介绍.

EasyIOS 2.0是基于MVVM编程思想进行构建的,封装了Scene,SceneModel,Model,Action四种模型来对IOS进行开发,4种模型的定义解决了IOS开发中ViewController承担了过多角色而造成的代码质量低下,使得结构思路更加清晰。

  • 1.其中Scene就是ViewController的子类,负责仅仅负责界面的展示逻辑

  • 2.Model数据模型,父类实现了ORM,可以实现json、object、sqlite三者之间的一键转换,

  • 3.SceneModel 视图-数据模型,主要负责 视图与模型的绑定工作,其中binding的工作交给了ReactiveCocoa。

  • 4.SceneModel包含Action成员,Action类主要负责网络数据的请求,数据缓存,数据解析工作

如果你有看Github的Trending Objective-C榜单,那你肯定是见过ReactiveCocoa了。如果你在weibo上关注唐巧、onevcat等国内一线知名开发者。那也应该听说过ReactiveCocoa了。 ReactiveCocoa简称RAC,就是基于响应式编程思想的Objective-C实践,它是Github的一个开源项目,你可以在这里找到它。

采用MKNetworkKit 网络框架,修改了部分功能,底层支持网络缓存,轻松控制是否启用缓存。

采用ReactiveCocoa 框架,实现响应式编程,减少代码复杂度。

集成了开源代码UIGridView 网格视图

集成了开源代码RTLabel 富文本Label

集成SVProgressHUD指示器

集成MJRefresh下拉刷新,有删改

model类整合Jastor的类库和MojoDataBase类库

整合了很多开源的优秀代码

部分函数借鉴了BeeFramework

常用类库:

Action 负责网络数据请求

Model 负责数据存储

SceneModel 负责Scene与Model的绑定,调用action进行数据请求

Scene 一个视图相当于UIViewController,提供了快速集成网络请求和下拉刷新上拉加载的方法。

SceneTableView 一个TableView,配合scene提供了集成下拉刷新上拉加载的方法

SceneCollectionView 一个CollectionView,配合scene提供了集成下拉刷新上拉加载的方法

2.0版本更新

  • 架构修改,基于MVVM架构

  • 把SceneModel从Scene中剥离出来,并且加入响应式编程框架ReactiveCocoa

  • ReactiveCocoa中文使用说明教程 ReactiveCocoa2实战

  • ReactiveCocoa 在github上有开源项目ReactiveCocoa2

1.0.3版本更新

  • 再也不用担心奇葩的图文混排了

  • 新增字体图片支持 资源里的demo 就是一个基于swift和easyios的字体图片演示,可以用来作为图片字典查阅

  • 可扩展的字体库,字需要添加ttf和json文件就可以轻松扩展特殊字体

  • 目前支持4种图片字体FontAwesome、Zocial-Regular、Ionicons、Foundation

  • FontAwesome 4.1 字体库, 包含 439 个图标

  • Foundation icons 字体库, 包含283 个图标

  • Zocial Contains 字体库, 包含99 个图标

  • ionicons 1.5.2 字体库, 包含601 个图标,大部分是 IOS7 style

1.0.2版本更新

  • fix一些头文件的引用关系,增加了swift头文件支持。

  • 用swift的同学,要设置Objective-C Bridging Header为${PODS_ROOT}/Headers/EasyIOS/swift-bridge.h

  • 1.0.2版本发布到了CocoaPods

1.0.1版本更新

  • 1.增加了ORM支持,从此可以实现json、object、sqlite三者之间的一键转换,可以节省很多代码,是不是很酷。

model类整合了Jastor的类库和MojoDataBase类库

  • 2.修改了Action类中的post的参数,增加了files参数,

因此,action.POST_MSG的时候现在至少要3个参数哦

  • 3.借鉴了beeframework的消息通知机制。。.默默给郭大点个赞。。

  • 4.修复了一个下拉刷新的bug

  • 5.提供了一键打开百度地图、苹果地图、google地图、高德地图发起调用的接口,再也不用担心看地图文档

  • https://github.com/zhuchaowe/EasyIOS/wiki/Request

  • 转自:http://www.oschina.net/news/58487/easyios-2-2 2.2 版本更新 修改Action类中的配置方式:由原来的宏调用改为类方法配置 针对IOS8优化 为UIScrollView增加下拉放大效果 新增EZNavigationController类,解决ios7中快速push容易crash的问题 重写下拉刷新,与上拉加载,完全解耦,支持自定义UI。 新增A

  • 随着苹果发布了swift语言,很多人拿OC与之对比,下面是苹果列出的Swift几项特性(它们不包含Objective-C已经有的特性,比如自动内存管理) 类型推断(Inferred types) – 类型推断让代码更清晰以及更少的错误 模块(Modules) – 模块移除了头文件并提供命名空间 闭包和函数(Closures & Functions) – 闭包和函数指针相匹配 元组(Tuples)

  • 软件简介 全新基于MVVM(Model-View-ViewModel)编程模式架构,开启EasyIOS开发函数式编程新篇章。 EasyIOS 2.0类似AngularJs,最为核心的是:MVVM、ORM、模块化、自动化双向数据绑定、等等 关于有疑问什么是MVVM,以及为什么IOS开发需要MVVM思想编程的,请看文章用Model-View-ViewModel构建iOS App有详细介绍. EasyI

  • 全新基于MVVM(Model-View-ViewModel)编程模式架构,开启EasyIOS开发函数式编程新篇章。 EasyIOS 2.0类似AngularJs,最为核心的是:MVVM、ORM、模块化、自动化双向数据绑定、等等 关于有疑问什么是MVVM,以及为什么IOS开发需要MVVM思想编程的,请看文章用Model-View-ViewModel构建iOS App有详细介绍. EasyIOS 2.

 相关资料
  • Model-View-ViewModel (MVVM)是用于开发软件应用程序的架构设计模式。 MVVM由Microsoft Architect John Gossman于2005年开发。该模式源自模型 - 视图 - 控制器(MVC)模式。 MVVM的优势在于它将应用程序层的图形用户界面与业务逻辑分开。 MVVM负责处理来自底层模型的数据,以便非常容易地表示和管理它。 MVVM中的ViewModel

  •   有一个禅宗佛教的概念叫做”初心”。禅宗法师铃木俊隆写道:”初学者的心中有很多可能性(潜意识的点子),但在专家心里(这种可能性/点子)就相对少很多”。在写作本书的过程中,我经常会回到这个概念里重新审视自己,提醒自己不要对那些看起来很新的或不习惯的事物过早下结论.   本着这种精神,我们回过头来看看你当初接触iOS应用开发的情形:与可能只知道使用Model-View-Controller(MVC)

  • 本文向大家介绍iOS开发项目- 基于WebSocket的聊天通讯(2),包括了iOS开发项目- 基于WebSocket的聊天通讯(2)的使用技巧和注意事项,需要的朋友参考一下 公司项目需要开发一个类似QQ、微信的即时IM聊天功能,做到实时监控消息,需要用的技术是websocket,今天整理下语言聊天这块;其实语言聊天,包含两部分,录音和音乐播放,关于简单语言聊天功能如下图: 录音 在AVFound

  •   本章的其他部分将把Functional Reactive Pixels Demo的其他代码迁移到MVVM架构中。我们将添加一个新的库到Podfile文件里。Github上创作了ReactiveCocoa的黑客,也同时创建了一个ViewModel的基类:ReactiveViewModel.我们将要使用它的0.1.1版本。更新Podfile之后立即运行pod install以安装该库。   重构的

  •   在传统的MVC架构的应用中,你有三种组件:数据模型、视图以及试图控制器。数据模型保持你的数据,而视图用来呈现这些数据。控制器介于这两个组件之间调解所有的交互。   希望于Apple已经很好地测试过它的业务逻辑了。剩下的视图控制器它很少进行单元测试。   当新的数据到达时,model会通知ViewController(通常是通过键-值观察(KVO)的方式),然后ViewController会更新

  • 本文向大家介绍iOS App开发中Masonry布局框架的基本用法解析,包括了iOS App开发中Masonry布局框架的基本用法解析的使用技巧和注意事项,需要的朋友参考一下 Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性,而且同时支持 iOS 和 Max OS X。Masonry是一个用代码写iOS或OS界面的库,可以代替Aut