【读书笔记】iOS-如何选择本地化应用
早在2007年发布iPhone的时候 ,苹果并没有一同发布本地化SDK,苹果公司声称不需要本地SDK,鼓励大家使用JavaScript,CSS和HTML开发Web应用。但接下来剧情并没有按照苹果设计的那样发展,也许是苹果的思想太超前,大多数开发者不并不吃这一套,他们希望自己开发的应用和iOS系统内置的应和一样,可以直接访问硬件并和系统高度集成。
因为iPhone发布不到一年后的2008年3月,苹果公司就公开表示要改变策略,并且向开发者社区发布了期待已久的官司方SDK。这也许是苹果对于开源社区所做的努力的回应吧。不过苹果一贯遮遮掩掩,让人琢磨不透,要说这是苹果本来的计划也有可能。到底是怎么样,只有乔布斯知道 。
对于苹果发布的SDK,也不是所有人都 买账,在有些人看来这简直是技术的退步,他们认为Web应用已经足够好了。因为用Object-C专门针对iPhone开发的应用很难移植到其他平台,而Web应用只需要开发一套新的CSS模板就可以了。
大部分情况下,提出使用Web技术 或者其他非本地化框架的人往往是从开发者角度来考虑问题。这当然不无道理,不过或许你更应该考虑一下用户的感受,他们唯一关心的是可用性而非什么技术来实现。
用户是很挑剔的,他们决绝购买你的应用往往只是因为你还支持了其他平台。这听起来很滑稽,其实很好理解。他们只希望一个应用的风格看起来和系统里其他应用是一样的。
本地化应用最明显的优势在于可以实现Web技术无法完成的事情。举一个简单的很典型的例子,第一代现实增强类应用就依赖多种硬件设备,比如GPS芯片,加速度传感器,指南针和摄像头等。
AppStore里绝大多数的应用都是将远程数据和本地化UI结合起来的。当无法访问网络的时候 ,一些依赖网络的UI会处于不可用状态,与无法访问网络的Web应用相比,这样的行为至少可以显得优雅一些。或者也可以将那些依赖网络的UI控件一开始就隐藏起来,这样用户在没有网络的情况下依然可以使用应用的一部分功能。
当然,有一些应用是可以不依赖网络的,而且不联网还可以节省电量。即便设备是连接着网的,也不必总是进行网络访问,尽可能的减少数据会让用户和设备有更好的交互体验。也就是说用户界面可以尽量放在本地,只有数据是来源于网络的,不像Web应用那样,完全依赖网络。
基于Web技术的软件的发布可以是增量式的,随时发现Bug并随时修正,不会影响到用户的使用。然而,本地化应用在这方面更像桌面软件。
众所周知,App Store的审核过程是不透明的,审核时间 也没个准,所有的应用不光首次提交要接受审核,每次更新还要审核,一般来说每次审核大概需要7天,也有可能更长。我的一些应用提交后几天就审核通过了。但是有一个应用一直等了4个月才审核通过。
所谓好的设计,评价标准在很大程序上是你的应用是否在用“苹果的方式”去工作,尽量不要重新发明轮子,使用标准控件对iOS用户更有新和力。
参考资料:《iOS编程指南》
【读书笔记】iOS-如何选择本地化应用的更多相关文章
- [读书笔记]iOS 7 UI设计 对比度
好久没写随笔了,最近在读<iOS 7 byTutorials>,很不错,推荐给大家. 每一个好的程序员也都是一个设计师,不懂设计的程序员不是好的CTO.哈哈,开个小玩笑. iOS 7设计的 ...
- 读书笔记-iOS核心动画高级技巧
如果不使用+imageNamed:,那么把整张图片绘制到CGContext可能是最佳的方式了. 这里我们利用了CALayer的KVC来存储和检索任意的值,将图层和索引打标签. 使用KVC打标签
- 【MySQL 读书笔记】普通索引和唯一索引应该怎么选择
通常我们在做这个选择的时候,考虑得最多的应该是如果我们需要让 Database MySQL 来帮助我们从数据库层面过滤掉对应字段的重复数据我们会选择唯一索引,如果没有前者的需求,一般都会使用普通索引. ...
- 远程办公《Remote》读书笔记:中国程序员在家上班月入过六万不是梦
这不是一本新书,这是一本很值得中国程序员看的老书,所以我不是来做卖新书广告的:) 但它的确是一本好书,这本书在Amazon上3个business categories排第一.作者Jason Fried ...
- 读书笔记-实用单元测试(英文版) Pragmatic Unit Testing in C# with NUnit
读书笔记-实用单元测试(英文版) Pragmatic Unit Testing in C# with NUnit Author: Andrew Hunt ,David Thomas with Matt ...
- 数据模型与查询语言 ------《Designing Data-Intensive Applications》读书笔记2
数据模型是开发软件的最重要的部分,因为它们对应用程序有着深远的影响:不仅是软件的编写方式,而且也影响我们如何解决的问题的方式.第二篇读书笔记,我们聊一聊数据模型的设计. 1.数据模型的分层 作为一个开 ...
- 《深入java虚拟机》读书笔记之Java内存区域
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,主要是方便之后进行复习. 运行时数据区域 Java虚拟 ...
- iPhone与iPad开发实战读书笔记
iPhone开发一些读书笔记 手机应用分类1.教育工具2.生活工具3.社交应用4.定位工具5.游戏6.报纸和杂志的阅读器7.移动办公应用8.财经工具9.手机购物应用10.风景区相关应用11.旅游相关的 ...
- Spark存储管理(读书笔记)
Spark存储管理(读书笔记) 转载请注明出处:http://www.cnblogs.com/BYRans/ Spark的存储管理 RDD的存放和管理都是由Spark的存储管理模块实现和管理的.本文从 ...
- 【读书笔记《Bootstrap 实战》】6.单页营销网站
我们已经掌握了很多实用 Bootstrap 的重要技能.现在,是时候拿出更多的创意来帮助客户实现他们全方位在线营销的愿望了.此次将带领大家做一个漂亮的单页高端营销网站. 主要任务如下: □ 一个大型 ...
随机推荐
- django-celery 创建多个broker队列 异步执行任务时指定队列
一.这里不再详细述说 django 框架中如何使用celery, 重点放在如何实现创建多个队列, 并指定队列存放异步任务 笔者使用 django-celery==3.2.2 模块, 配置项及配置参 ...
- WannaCry勒索病毒全解读,权威修复指南大集合
多地的出入境.派出所等公安网络疑似遭遇了勒索蠕虫病毒袭击,已暂时停办出入境业务:加油站突然断网,不能支持支付宝.微信.银联卡等联网支付:大批高校师生电脑中的文件被蠕虫病毒加密,需要支付相应的赎金方可解 ...
- 夜谈Java类的定义
女孩:谈Java了,好耶? 男孩:夜谈一下,Java的类的定义~ 女孩:那谈Java的类的什么呢? 男孩:类的定义,对象的定义,类中的方法,构造方法,this关键字,方法的重载,Java中的类的访问权 ...
- create-react-app脚手架中配置webpack的方法
概述 create-react-app脚手架中的react-scripts能够(1)帮我们自动下载需要的webpack依赖:(2)自己写了一个nodejs服务端脚本代码:(3)使用express的Ht ...
- Python模拟微博登陆,亲测有效
今天想做一个微博爬个人页面的工具,满足一些不可告人的秘密.那么首先就要做那件必做之事!模拟登陆-- 代码是参考了:https://www.douban.com/note/201767245/ 我对代码 ...
- 简单标签SimpleTag
想要开发自定义标签,大多数情况下都要重写doStartTag(),doAfterBody()和doEndTag()方法,并且还要知道SKIP_BODY,EVAL_BODY等等的变量代表着什么,在什么方 ...
- 终于等到你!阿里正式向 Apache Flink 贡献 Blink 源码
摘要: 如同我们去年12月在 Flink Forward China 峰会所约,阿里巴巴内部 Flink 版本 Blink 将于 2019 年 1 月底正式开源.今天,我们终于等到了这一刻. 阿里妹导 ...
- vertical-align_CSS参考手册_web前端开发参考手册系列
该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐.允许指定负长度值和百分比值.这会使元素降低而不是升高.在表单元格中,这个属性会设置单元格框中的单元格内容的对齐方式. <!DOCTYP ...
- centos 7 添加windows 字体
环境: centos 7 mono 5.2 Asp.net MVC5 问题: 在生成验证码时报,验证码无法显示,字体集找不到 解决: 到windows 系统中,拷贝字体到centos中. windo ...
- SQL Server性能优化(14)索引碎片
一. 外部碎片和内部碎片的概念 碎片的概念和检测,参考MSDN:https://msdn.microsoft.com/zh-cn/library/ms189858.aspx 二.对于碎片的解决办法 解 ...