《企业级ios应用开发实战》一1.2 iOS企业应用程序的架构

简介: 本节书摘来自华章出版社《企业级ios应用开发实战》一 书中的第1章,第1.2节,作者:杨宏焱,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.2 iOS企业应用程序的架构

本书把iOS企业应用定义为传统企业应用向iOS手机终端的顺延和扩张。在此定义下,iOS企业应用由服务端和iOS客户端构成,二者间通过3G移动互联网(CDMA/TD/WCDMA)连接或通信。

1.2.1 服务端

服务端(企业网络或Web服务)实际上为iOS企业应用提供企业数据和服务。如果把iOS客户端看做是前端应用,则服务端就是后台服务。服务端向前端提供一系列访问传统企业应用的接口,也可以为前端提供企业数据库和业务系统的访问。因此,iOS企业应用的服务端可能有两层或多层:接口、企业应用、企业数据库。
本书的核心内容是介绍iOS开发技术,不会对企业开发技术做过多的介绍。因此服务端代码(企业应用和企业数据库)的开发细节不会在本书中出现,但对于本书中涉及的接口,会提供必要的代码给读者学习。此外,本书中的接口代码是以Java编写的,需要读者对Java语言有一定的了解。

1.2.2 iOS 客户端

iOS客户端是一个标准的iOS应用,当然它也具备一些企业应用所特有的特点。但无论如何,它不应当是在浏览器中运行的Web网页。如果你想找一本介绍如何开发在iPhone浏览器上运行的Web网页应用程序的书,那么不应该是本书。
本书大部分内容旨在教你开发标准的iOS应用程序,这与市面上大部分介绍iPhone开发的书籍是一致的,但有一些例外。
首先,作为运行在手机上的iOS企业应用来说,安全是尤其需要注意的问题。因为iPhone等手持式移动终端所特有的一些特点,比如随身携带、随处可用,不需要登录,容易丢失等等,稍有不慎,就有可能导致企业机密的泄漏。
其次,对于企业应用来说,访问网络的需要,尤其是访问企业网络内部资源,如服务器、数据库等,永远是必不可少的重要内容。无论在任何情况下,网络带宽永远是企业的稀缺资源,对于企业应用尤其如此,因此,必须在节省带宽和提高用户体验中进行平衡。本书使用了很大的篇幅来介绍网络访问技术,此外,企业网络的类型(例如APN网络)会给iOS访问企业数据带来麻烦。由于iOS本身的限制,iPhone在切换APN网络时显得不太灵活——iPhone只能通过.mobileconfig描述文件切换APN。你可以在App Store上找到一堆的应用,专门用于给iPhone提供APN切换的功能。因此,本书也会介绍如何在自己的项目中实现一个简单APN切换器。
另外,与App Store中占据主要份额的游戏应用不同,iOS企业应用有使用数据库技术的迫切需要——作为企业开发人员,习惯于把业务数据保存在关系数据库中的这一顽疾早已根深蒂固——哪怕我们在客户端使用数据库的目的仅仅是出于把服务端数据缓存到本地的需要。
最后,还需要介绍一下文档和报表的显示。企业办公环境中离不开各种文档:文本、图片、视频和声音,尤其Microsoft 的Office文档俨然已成为了企业办公中公文流转的标准格式。如果在iPhone手机上竟然无法打开这些最为常见的企业办公文档,这绝对是一场悲剧。而报表和图表,是企业管理中最为常见的数据表现形式和数据分析手段,把企业运营数据以报表图表的形式进行展示,显然是iOS企业应用中应该提供的基本功能。
综上所述,企业开发人员必须充分认识到iOS企业应用的特点,结合企业的实际需要,才能开发出一个优秀的iOS企业应用。

相关文章
|
1月前
|
人工智能 安全 Java
微服务引擎 MSE:打造通用的企业级微服务架构
微服务引擎MSE致力于打造通用的企业级微服务架构,涵盖四大核心内容:微服务技术趋势与挑战、MSE应对方案、拥抱开源及最佳实践。MSE通过流量入口、内部流量管理、服务治理等模块,提供高可用、跨语言支持和性能优化。此外,MSE坚持开放,推动云原生与AI融合,助力企业实现无缝迁移和高效运维。
|
1月前
|
容灾 网络协议 数据库
云卓越架构:云上网络稳定性建设和应用稳定性治理最佳实践
本文介绍了云上网络稳定性体系建设的关键内容,包括面向失败的架构设计、可观测性与应急恢复、客户案例及阿里巴巴的核心电商架构演进。首先强调了网络稳定性的挑战及其应对策略,如责任共担模型和冗余设计。接着详细探讨了多可用区部署、弹性架构规划及跨地域容灾设计的最佳实践,特别是阿里云的产品和技术如何助力实现高可用性和快速故障恢复。最后通过具体案例展示了秒级故障转移的效果,以及同城多活架构下的实际应用。这些措施共同确保了业务在面对网络故障时的持续稳定运行。
|
2月前
|
开发工具 Android开发 iOS开发
Android与iOS生态差异深度剖析:技术架构、开发体验与市场影响####
本文旨在深入探讨Android与iOS两大移动操作系统在技术架构、开发环境及市场表现上的核心差异,为开发者和技术爱好者提供全面的视角。通过对比分析,揭示两者如何塑造了当今多样化的移动应用生态,并对未来发展趋势进行了展望。 ####
|
2月前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
2月前
|
安全 Android开发 iOS开发
深入探索iOS与Android系统架构差异及其对开发者的影响
本文旨在通过对比分析iOS和Android两大移动操作系统的系统架构,探讨它们在设计理念、技术实现及开发者生态方面的差异。不同于常规摘要仅概述内容要点,本摘要将简要触及核心议题,为读者提供对两大平台架构特点的宏观理解,铺垫
|
3月前
|
运维 Kubernetes Docker
深入理解容器化技术及其在微服务架构中的应用
深入理解容器化技术及其在微服务架构中的应用
107 1
|
3月前
|
Cloud Native 安全 持续交付
深入理解微服务架构及其在现代软件开发中的应用
深入理解微服务架构及其在现代软件开发中的应用
112 32
|
3月前
|
安全 Linux Android开发
深入探索Android与iOS的系统架构:一场技术较量
在当今数字化时代,智能手机操作系统的选择成为了用户和开发者关注的焦点。本文将深入探讨Android与iOS两大主流操作系统的系统架构,分析它们各自的优势与局限性,并对比两者在用户体验、开发生态和安全性方面的差异。通过本文的技术剖析,读者将对这两个平台的核心技术有更深入的理解。
|
3月前
|
监控 持续交付 API
深入理解微服务架构及其在现代应用开发中的应用
深入理解微服务架构及其在现代应用开发中的应用
47 4
|
3月前
|
IDE 安全 Android开发
深入探索Android与iOS操作系统的架构差异
本文旨在对比分析Android和iOS两大主流移动操作系统在架构设计上的根本差异。通过详细解读两者的系统架构、开发环境、以及安全性等方面,揭示它们各自的特点及优势,为开发者选择合适的平台提供参考。

热门文章

最新文章

  • 1
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
    24
  • 2
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    33
  • 3
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    28
  • 4
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
    23
  • 5
    uniapp开发ios打包Error code = -5000 Error message: Error: certificate file(p12) import failed!报错问题如何解决
    143
  • 6
    【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到app store完整流程·不借助第三方上架工具的情况下无需花钱但需仔细学习-优雅草央千澈详解关于APP签名以及分发-们最关心的一篇来了-IOS上架app
    234
  • 7
    app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
    90
  • 8
    深入探索iOS开发中的SwiftUI框架
    143
  • 9
    ios样式开关按钮jQuery插件
    58
  • 10
    Android与iOS生态差异深度剖析:技术架构、开发体验与市场影响####
    75