【读书笔记】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 的重要技能.现在,是时候拿出更多的创意来帮助客户实现他们全方位在线营销的愿望了.此次将带领大家做一个漂亮的单页高端营销网站. 主要任务如下: □ 一个大型 ...
随机推荐
- 856. Score of Parentheses
Given a balanced parentheses string S, compute the score of the string based on the following rule: ...
- c# 多线程实现ping 多线程控制控件
这个备份器放在项目目录下面,每次使用就双击一下,因为便捷性,就不采用xml等等储存信息,全部在面板内做,这样可以保证一个exe就运行了. 我发现运行起来还蛮快的,唯一没有实现的是ping通的电脑如果出 ...
- maya2014卸载/安装失败/如何彻底卸载清除干净maya2014注册表和文件的方法
maya2014提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装maya2014失败提示maya2014安装未完成,某些产品无法安装,也有时候想重新安装maya ...
- Ubuntu18.04安装网易云音乐
一. 安装 去网易云官网下载对应于ubuntu系统的安装包 安装依赖 dpkg -s libcanberra-gtk-module #检查依赖是否安装 sudo apt install libcanb ...
- nginx代理tomcat做负载
先对三台服务器统一环境. 对两台tomcat服务器的操作 查看jdk环境 # java -version openjdk version "1.8.0_65" OpenJDK Ru ...
- Python集成开发工具Pycharm的使用方法:复制,撤销上一步....
复制行,在代码行光标后,输入Ctrl + d ,即为复制一行,输入多次即为复制多行 撤销上一步操作:Ctrl + z 为多行代码加注释# 代码选中的条件下,同时按住 Ctrl+/,被选中行被注释,再 ...
- CSS基础和选择器
什么是CSS? CSS是指层叠样式表(Cascading Style Sheets),样式定义如何显示HTML元素,样式通常又会存在于样式表中.也就是说把HTML元素的样式都统一收集起来写在一个地方或 ...
- ffmpeg 视频实现各种特效
直接上命令: //渐入i in.mp4 -vf fade=in:0:90 out.mp4 //黑白 i in.mp4 -vf lu ...
- docker容器中Postgresql 数据库备份
查看运行的容器: docker ps 进入目标容器: docker exec -u root -it 容器名 /bin/bash docker 中,以root用户,创建备份目录,直接执行如下命令, p ...
- Linux学习笔记之十————Linux常用服务器构建之ftp服务器
p服务器介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”. 用于Internet上的控制文件的双向传输. 同时,它也是一个应用程序(Ap ...