CN106254491A - 一种稳定快捷的ios客户端架构模型 - Google Patents
一种稳定快捷的ios客户端架构模型 Download PDFInfo
- Publication number
- CN106254491A CN106254491A CN201610679249.9A CN201610679249A CN106254491A CN 106254491 A CN106254491 A CN 106254491A CN 201610679249 A CN201610679249 A CN 201610679249A CN 106254491 A CN106254491 A CN 106254491A
- Authority
- CN
- China
- Prior art keywords
- layer
- model
- data
- framework model
- efficiently
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/313—Logic programming, e.g. PROLOG programming language
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
Abstract
本发明公开了一种稳定快捷的IOS客户端架构模型,包括架构模型,所述架构模型分为Api层、Model层、ViewModel层、View层,所述Api层主要负责网络请求业务;所述ViewModel层主要对Api层数据进行解析;所述Model层是对模型数据的描述;所述View层进行视图数据的展现;View层的视图数据经过渲染后形成手机APP程序。与现有技术相比,本发明的架构方式能使一名普通的开发人员快速高效的开发出一个稳定的app,保证合理的开发周期如投入。降低开发业务之间的耦合性,并规范化各个模块的开发方式和代码逻辑,保证逻辑代码的规范。保证整个结构清晰的思路以及低门槛的学习和维护升级。
Description
技术领域
本发明涉及互联网领域,尤其涉及一种稳定快捷的IOS客户端架构模型。
背景技术
IOS操作系统是苹果公司,最早于2007年1月9日的Macworld大会上公布这个系统,发展至今AppStore上的总应用数量达到150+万,App架构方式也日新月异,构建一个稳定快捷的架构模型变得尤为重要。
现有技术通常采用reactivecocoa、MVC,MVP等。以上技术都能从正面或侧面解决一定的IOS端架构设计问题,但是到了真正的开发应用场景往往不得不做出一定的妥协和改变,已达到国内实际App开发流程的要求,特别是针对创新型app开发在效率可维护性以及开发投入上都存在一系列的不足:
1.较长时间的学习和实践以及较高难度的学习成本,同事这也直接导致后期app升级维护的成本以及难度。
2.较高的学习难度同时也导致了比较高的bug数量以及app崩溃率。
3.需要更长的app开发周期,甚至前期的预研周期,同时导致更大的开发投入,在一定程度上使创新型app失去了特点时间点的活力。
4.在经过几轮的升级维护后更加容易导致代码整体风格的紊乱,体系思路的不统一,导致整个app毫无架构。
发明内容
本发明的目的就在于提供一种解决了上述问题的一种稳定快捷的IOS客户端架构模型。
为了实现上述目的,本发明采用的技术方案是:一种稳定快捷的IOS客户端架构模型,包括架构模型,其特征在于:所述架构模型分为Api层、Model层、ViewModel层、View层,
所述Api层主要负责网络请求业务,接收服务器数据,并将服务器数据经逻辑处理后发送至ViewModel层;
所述ViewModel层主要对Api层数据进行解析,并将解析后的模型数据发送至Model层,将解析后的视图数据转移到View层,同时剥离了Controller的业务逻辑代码,使Controller更专注于用户行为,降低了代码之间的耦合度,使Controller更专注于用户行为,降低了代码之间的耦合度;
所述Model层是对模型数据的描述;
所述View层进行视图数据的展现;
View层的视图数据经过渲染后形成手机APP程序。
作为优选,所述构架模型通过cocoapods类库管理工具来整合须使用和依托的相关重要组件。
作为优选,所述相关重要组件包括Api层的afnetworking、Model层的解析JsonModel,以及数据本地化相关的Realm组件。
作为优选,所述构架模型依托持续化集成平台Jenkins,实时检测代码规范中的不足和缺陷,并加以相关提醒和警告通知。
作为优选,还包括缓存模块,所述ViewModel将解析后的数据传送至缓存模块进行缓存。
与现有技术相比,本发明的优点在于:
1.通过严格分层把控,严格明确各层作用,在此基础上引入一些可靠稳定通用的第三方库如AFNetworking,Realm等,架构方式能使一名普通的开发人员快速高效的开发出一个稳定的app,保证合理的开发周期如投入。
2.降低开发业务之间的耦合性,并规范化各个模块的开发方式和代码逻辑,保证逻辑代码的规范。
3.严格的分层使项目结构清晰,思路明确,降低了学习和维护门槛。
附图说明
图1为本发明结构框图。
具体实施方式
下面将对本发明作进一步说明。
实施例:参见图1,一种稳定快捷的IOS客户端架构模型,包括架构模型,所述架构模型分为Api层、Model层、ViewModel层、View层,
所述Api层主要负责网络请求业务,接收服务器数据,并将服务器数据经逻辑处理后发送至ViewModel层;
所述ViewModel层主要对Api层数据进行解析,并将解析后的模型数据发送至Model层,将解析后的视图数据转移到View层,同时进行业务相关的处理;还包括缓存模块,所述ViewModel将解析后的数据传送至缓存模块进行缓存;
所述Model层是对模型数据的描述;
所述View层进行视图数据的展现;
View层的视图数据经过渲染后形成手机APP程序。
所述构架模型通过cocoapods类库管理工具来整合须使用和依托的相关重要组件,所述相关重要组件包括Api层的afnetworking、Model层的解析JsonModel,以及数据本地化相关的Realm组件。通过cocoapods方便升级第三方库,以及方便引入配置。
所述构架模型依托持续化集成平台Jenkins,实时检测代码规范中的不足和缺陷,并加以相关提醒和警告通知。
以上对本发明所提供的一种稳定快捷的IOS客户端架构模型进行了详尽介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,对本发明的变更和改进将是可能的,而不会超出附加权利要求所规定的构思和范围,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (5)
1.一种稳定快捷的IOS客户端架构模型,包括架构模型,其特征在于:所述架构模型分为Api层、Model层、ViewModel层、View层,
所述Api层主要负责网络请求业务,接收服务器数据,并将服务器数据经逻辑处理后发送至ViewModel层;
所述ViewModel层主要对Api层数据进行解析,并将解析后的模型数据发送至Model层,将解析后的视图数据转移到View层,同时剥离了Controller的业务逻辑代码;
所述Model层是对模型数据的描述;
所述View层进行视图数据的展现;
View层的视图数据经过渲染后形成手机APP程序。
2.根据权利要求1所述的一种稳定快捷的IOS客户端架构模型,其特征在于:所述构架模型通过cocoapods类库管理工具来整合须使用和依托的相关重要组件。
3.根据权利要求2所述的一种稳定快捷的IOS客户端架构模型,其特征在于:所述相关重要组件包括Api层的afnetworking、Model层的解析JsonModel,以及数据本地化相关的Realm组件。
4.根据权利要求1所述的一种稳定快捷的IOS客户端架构模型,其特征在于:所述构架模型依托持续化集成平台Jenkins,实时检测代码规范中的不足和缺陷,并加以相关提醒和警告通知。
5.根据权利要求4所述的一种稳定快捷的IOS客户端架构模型,其特征在于:还包括缓存模块,所述ViewModel将解析后的数据传送至缓存模块进行缓存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610679249.9A CN106254491A (zh) | 2016-08-17 | 2016-08-17 | 一种稳定快捷的ios客户端架构模型 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610679249.9A CN106254491A (zh) | 2016-08-17 | 2016-08-17 | 一种稳定快捷的ios客户端架构模型 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106254491A true CN106254491A (zh) | 2016-12-21 |
Family
ID=57592200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610679249.9A Pending CN106254491A (zh) | 2016-08-17 | 2016-08-17 | 一种稳定快捷的ios客户端架构模型 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106254491A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019041668A1 (zh) * | 2017-08-31 | 2019-03-07 | 武汉斗鱼网络科技有限公司 | 组件工程调用主工程代码的方法、存储介质、设备及系统 |
CN110187888A (zh) * | 2018-02-23 | 2019-08-30 | 武汉斗鱼网络科技有限公司 | 一种Pod发布方法、存储介质、电子设备及系统 |
CN110727419A (zh) * | 2019-09-06 | 2020-01-24 | 广东户外媒体村科技有限公司 | 一种监测系统 |
CN110740048A (zh) * | 2018-07-18 | 2020-01-31 | 广东亿迅科技有限公司 | 一种基于iOS网络的网络请求处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140101635A1 (en) * | 2012-10-09 | 2014-04-10 | Martin Hoffmann | Automated generation of two-tier mobile applications |
CN104580532A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 一种跨平台应用系统 |
US20160110055A1 (en) * | 2014-10-20 | 2016-04-21 | Oracle International Corporation | Event-based architecture for expand-collapse operations |
CN105549972A (zh) * | 2015-12-10 | 2016-05-04 | 天津海量信息技术有限公司 | 基于统一认证协议的mvc框架结构及其运行方法 |
-
2016
- 2016-08-17 CN CN201610679249.9A patent/CN106254491A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140101635A1 (en) * | 2012-10-09 | 2014-04-10 | Martin Hoffmann | Automated generation of two-tier mobile applications |
US20160110055A1 (en) * | 2014-10-20 | 2016-04-21 | Oracle International Corporation | Event-based architecture for expand-collapse operations |
CN104580532A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 一种跨平台应用系统 |
CN105549972A (zh) * | 2015-12-10 | 2016-05-04 | 天津海量信息技术有限公司 | 基于统一认证协议的mvc框架结构及其运行方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019041668A1 (zh) * | 2017-08-31 | 2019-03-07 | 武汉斗鱼网络科技有限公司 | 组件工程调用主工程代码的方法、存储介质、设备及系统 |
CN110187888A (zh) * | 2018-02-23 | 2019-08-30 | 武汉斗鱼网络科技有限公司 | 一种Pod发布方法、存储介质、电子设备及系统 |
CN110740048A (zh) * | 2018-07-18 | 2020-01-31 | 广东亿迅科技有限公司 | 一种基于iOS网络的网络请求处理方法及装置 |
CN110740048B (zh) * | 2018-07-18 | 2022-09-27 | 广东亿迅科技有限公司 | 一种基于iOS网络的网络请求处理方法及装置 |
CN110727419A (zh) * | 2019-09-06 | 2020-01-24 | 广东户外媒体村科技有限公司 | 一种监测系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102222012B (zh) | 针对外部数据源的静态类型检查 | |
CN103297327B (zh) | 消息推送方法、装置及显示终端 | |
US9286040B2 (en) | Software builder | |
CN104615462B (zh) | 跨平台的移动应用生成服务端及系统 | |
CN108255653A (zh) | 一种产品的测试方法及其终端 | |
CN106254491A (zh) | 一种稳定快捷的ios客户端架构模型 | |
CN109951547B (zh) | 事务请求并行处理方法、装置、设备和介质 | |
US10014030B2 (en) | Method, device and system for playing video | |
US20160210632A1 (en) | Secured payment method and relevant device and system | |
CN110597888B (zh) | 基于区块链的虚拟资源获取方法及装置、介质、设备 | |
CN108121543A (zh) | 一种软件代码编译处理方法及装置 | |
CN109885355A (zh) | 一种应用启动方法及相关装置 | |
JP2018523218A (ja) | コンパイルされたソフトウェア内の機械命令を修正する方法およびシステム | |
CN109002320A (zh) | 用于软件开发包的更新方法、系统、电子设备及存储介质 | |
WO2019029451A1 (zh) | 发布移动应用的方法和电子设备 | |
CN104133676A (zh) | 一种基于脚本的功能执行方法和设备 | |
CN106598662A (zh) | 基于android的应用加载方法及装置 | |
CN104298500A (zh) | 在线自动生成并可以分享的电子相册App系统及方法 | |
CN112068879A (zh) | 基于配置化的客户端应用程序开发框架构建方法及装置 | |
CN110471786A (zh) | 在线热修复方法、装置、设备及计算机可读存储介质 | |
CN109634647B (zh) | 大型前端项目的构建方法及系统 | |
CN113240088A (zh) | 文本意图识别模型的训练方法 | |
CN108848398B (zh) | 一种本地弹幕消息的分发方法、装置、终端和存储介质 | |
CN113110982A (zh) | 数据访问层验证方法及装置、存储介质及电子装置 | |
Lecrenski et al. | Beginning Windows Phone 7 Application Development: Building Windows Phone Applications Using Silverlight and XNA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161221 |