发布于 2014-11-10 05:53:15 | 728 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

EasyIOS 基于MVVM 的IOS开发框架

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


随着苹果发布了swift语言,很多人拿OC与之对比,下面是苹果列出的Swift几项特性(它们不包含Objective-C已经有的特性,比如自动内存管理)

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

  • 类型推断(Inferred types) – 类型推断让代码更清晰以及更少的错误

  • 模块(Modules) – 模块移除了头文件并提供命名空间

  • 闭包和函数(Closures & Functions) – 闭包和函数指针相匹配

  • 元组(Tuples) – 元组和多重返回值

  • 泛型(Generics) – 泛型带来的好处是不言而喻的。

  • 结构体(Structs) – 支持方法、扩展、接口的结构体。

  • 函 数式编程模式(Functional Programming Patterns) – 比如map和filter。 这些都是在Objective-C基础上显而易见的改进。让我们将关于泛型的好处、类型推断、函数式编程等等的争论放到一边,干脆的同意Swift在许多 地方比Objective-C要优越。

但是Swift没有减少开发程序时我们在那些样板代码里花费的时间和精力。甚至 如果我们分解Swift的陡峭的学习曲线,我们会发现它仅仅只是将运行时 的调试转移到编译时,所以只是看上去入门简单了。它解决了Objective-C里的一些通常的实现错误,但并没有让程序更快的实现。

对于 Swift,从搜索引擎得到的结果将会是这样:Objective-C开发者将花费接下来的数年时间以过渡到Swift的语法和功能当中。不过,即使过渡 结束了,我们还是会和2014年一样,花费长时间编写关于持久化、网络、触发器和响应,以及布局的具体实现代码,这些代码也还是会和以前一样 无聊、容易出bug、并且无法重用。

阻碍IOS开发最大的问题不在于语言本身,我们需要的不是一个新的Objective-C,我们需要的是一种新的开发范式。

EasyIOS 以提升开发效率为宗旨

EasyIOS框架是以提升开发效率为目标的,基于MVVM架构的快速开发框架,在IOS开发的基础上解决了开发者的以下的痛点

  • 代码分离 -Model-View-ViewModel- 分离ViewController中的大量逻辑代码,解决ViewController承担了过多角色而造成的代码质量低下。增加视图与模型的绑定特性。

  • 自 动持久化 -Model to Db– 我再也不想思考如何实现持久化了。在我的想法里,将模型对象直接扔到一个bucket里,然后它就能自动的对数据进行存储、缓存、合并以及唯一化。我应当 关注于描述对象间的属性和联系,以及我希望它们分组的方式。其他的实现细节都应该是不可见的。

  • 自动RESTful API –Json to Model- 一旦我给程序发出指令,将一个API响应对应到一个数据对象,网络和JSON转换应该被自动完成。我只想关注如何将JSON中那些项目展示给用户。

  • 有表现力的触发器和响应 -ReactiveCocoa– 我想用源于响应意图(Intent)的语法来描述事件的响应和触发器,我不关心它们间的连接是如何实现的,并且这些连接也不应该在重构时出错。

  • 简洁明了的网络请求 -Action and Request- 对于简单的GET、POST请求,可以进行对象化操作,我只想告诉程序,链接在哪里,有哪些参数,接下来就自动拉取到想要的数据,顺便帮我把缓存也做齐了,也是极好的。

  • 便 捷的UI布局 – FLKAutolayout-更加便捷的进行autolayout布局,不管你使用springs & struts或者AutoLayout,每种方法都需要你明确相关视图如何排列。你需要花大量的时间编写和修正这些排列,特别是现在有这么多设备需要适配 的情况下。没有什么是自动写好的,UI布局依赖于对细节的不断调整。推荐开发期间Debug工具FLEX,pod 'FLEX', '~> 1.1.1'需要手动集成,发布release版本时请删除。

  • 友好的线程控制 -GCDObjC-

  • 便捷的正则匹配

  • 富文本的Label

  • and so on……

EasyIOS框架还在不断更新中,我们相信基于它可以极大的提升IOS开发效率,为IOS开发提供一种新的开发范式。



历史版本 :
EasyIOS-Swift 2.0发布,支持FlexBox布局
EasyIOS-Swift 1.0.0 发布,基于 MVVM+HTML+LiveLoad 开发
EasyIOS 2.2 版本发布,IOS开发框架
EasyIOS: 如何提升 iOS 开发效率
EasyIOS 2.1 发布,优化网络请求与ORM操作
EasyIOS 2.0 发布,基于 MVVM 的 IOS 开发框架
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务