《iOS应用开发指南——使用HTML5、CSS3和JavaScript》——1.2节内容和情景就是一切

简介:

本节书摘来自异步社区《iOS应用开发指南——使用HTML5、CSS3和JavaScript》一书中的第1章,第1.2节内容和情景就是一切,作者 【美】Kristofer Layon,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.2 内容和情景就是一切
iOS应用开发指南——使用HTML5、CSS3和JavaScript
我为什么要耗费精力在这个相当明显的问题上?因为我提出了很重要的观点,帮助你形象化如何思考设计应用程序的过程。

为了继续这一过程,思考下面这两个日期:

2007年1月9日

2010年5月25日

你能认出这两个日期吗?它们两个都非常重要,因为这影响着我们怎么思考iOS的应用程序。

2007年1月9日这一天,苹果电脑公司(Apple Computer,Inc)改名为苹果公司(App,Inc)。2010年5月25日,苹果公司成为世界上最有价值的科技公司——正是从它的公司名字里去掉电脑一词的3年后。

纽约时报说得最好:

“最重要的技术产品不再放在你的办公桌上,而是握在你的手里。”(2010年5月27日)

2007年初,苹果公司在改名的时候就已经预见到这个情况了,也许是因为那个夏天即将发布的iPhone。

但是不单只是iPhone让苹果在2010年春天成为了最大的高科技公司。这一过程始于2001发布iPod时,并在2003年发布iTunes时得到延续。请注意,虽然当时他们没有停止生产全尺寸的电脑,他们也开始做一些更小一点的电脑。而这些小的电脑比台式机和笔记本电脑更好地整合了计算机技术,并融入到我们的日常生活中。

通过推出新的微型计算机平台iPod,相比从Apple II到Mac的推出,Apple有了更大的飞跃。在第一个进化阶段,苹果普及了图形用户接口(GUI)、电脑桌面、鼠标输入设备,从而创造了一个全新的世界,现在,这个世界已经遍及到了所有的个人电脑。

今天,大部分的人无论是与电脑交互还是用它进行工作,都不再需要使用计算机语言(即无须通过编制程序来指示计算机完成工作)。

关于iPod最不可思议的事情是,它对Mac做了大量的裁剪。更有甚者,苹果不仅去掉了鼠标,也拿掉了桌面。他们把屏幕做得非常小,并使无法直接在iPod设备(图1.2)上创建任何内容。这样一来,苹果把一台电脑裁剪掉大量的功能,使之尽量简单尽量小,并使其完全无生产性。这种与20世纪90年代计算机制造策略背道而弛的做法显得是那么不合情理。


714351433eb9bd52602072d3ac601bef2509b7d8

然而,对电源、尺寸和功能大幅缩减后的结果如何?

销售额飞涨,苹果公司取得了巨大的成功。

这种转变是深刻的,因为我们不会把iPod当做一种微型计算机。相反的,我们认为它是一个便携的、实用的、而且易于使用的设备,用来听音乐、新闻、信息和有声读物,浏览照片或甚至看电影和电视节目。

这不是商业的内容了,这是生活的内容。

有趣的是,苹果引入iOS设备时并没有削弱很多新的技术基础。相反,在2007年引入iPhone时,他们只是简单加回了一些关键特性,这些关键特性是当时从全尺寸的电脑打造微型iPod平台时去掉的。他们恢复了我们在桌面型和笔记本电脑上习惯了的因特网连接,并且重新引入基于屏幕的软键盘来输入信息。这在以前的iPod是被限制了的,只能通过点击和滚动输入。

而且,哦,对了,iPhone还有电话功能。

更重要的是,iOS设备把生活内容的概念又推进了一步。现在新闻可以被打断,音乐可以听现场,信息可以是我们孩子的足球时间表,或餐馆的地址,显示在地图上,并附上用户从所在地点到达该处的最佳路径。

所有这一切都意味着,所有的这些设备的设计需要开始着眼于生活内容,并围绕人类的生命和我们日常需要解决的问题。

为了这些情形设计,我们需要认清现实。

相关文章
|
5天前
|
JavaScript 前端开发
js变量的作用域、作用域链、数据类型和转换应用案例
【4月更文挑战第27天】JavaScript 中变量有全局和局部作用域,全局变量在所有地方可访问,局部变量只限其定义的代码块。作用域链允许变量在当前块未定义时向上搜索父级作用域。语言支持多种数据类型,如字符串、数字、布尔值,可通过 `typeof` 检查类型。转换数据类型用 `parseInt` 或 `parseFloat`,将字符串转为数值。
11 1
|
22天前
|
JavaScript 前端开发 算法
JavaScript 中的 if 判断:深入理解、实战应用与进阶技巧
【4月更文挑战第7天】探索 JavaScript 中的 if 判断语句,它是构建逻辑清晰程序的基础。了解其概念、语法、应用示例及编程技巧,包括条件控制、else if 结构、三目运算符。注意条件表达式简洁性,避免 falsy 值陷阱,利用逻辑运算符优化,并减少 if 嵌套。实践这些技巧将提升编程能力和代码质量。
22 0
|
24天前
|
JavaScript 前端开发 算法
JavaScript 中算术操作符:全面解读、实战应用与最佳实践
【4月更文挑战第5天】本文探讨JavaScript中的算术操作符,包括加、减、乘、除、求余、自增、自减及复合赋值等,强调理解与熟练运用它们对提升编程效率和代码准确性的重要性。文中通过示例介绍了各种操作符的用法,同时提醒注意数据类型转换、浮点数精度、除以零错误以及利用短路求值优化逻辑等问题。通过学习,读者能更好地掌握算术操作符在不同场景的应用,提升编程技能。
22 1
|
2月前
|
JavaScript 前端开发
解释JavaScript闭包的工作原理,并举例说明其在游戏开发中的应用。
JavaScript闭包允许内部函数访问并保持对外部函数变量的引用,即使外部函数执行结束。当函数返回内部函数时,形成闭包,继承父函数作用域链。在游戏开发中,闭包用于创建具有独立状态和行为的角色实例。例如,`createCharacter`函数创建角色并返回包含属性和方法的对象,内部函数如`getHealth`、`setHealth`和`attack`通过闭包访问并操作角色的变量。这种方式确保了每个角色的状态在不同实例间独立,是实现游戏逻辑的强大工具。
13 2
|
2天前
|
开发框架 JavaScript 前端开发
【JavaScript 与 TypeScript 技术专栏】TypeScript 在 Web 开发中的前沿应用
【4月更文挑战第30天】TypeScript在Web开发中日益重要,以其强大的类型系统提升代码质量,支持组件化开发,与React、Vue、Angular等框架良好集成。在大型项目管理中,TypeScript助于代码组织和优化,提高团队协作效率。此外,它提升开发体验,提供智能提示和错误检测。众多成功案例证明其前沿应用,未来将在Web开发领域持续发挥关键作用。
|
2天前
|
前端开发 JavaScript 网络协议
【JavaScript技术专栏】WebSockets在JavaScript中的应用
【4月更文挑战第30天】WebSocket是为解决HTTP协议在实时通信上的局限而诞生的技术,提供全双工、持久连接的通信方式,适合在线聊天、实时游戏等场景。JavaScript中的WebSocket API使浏览器与服务器能建立持久连接,通过事件处理连接、发送/接收数据及错误。相较于AJAX轮询和长轮询,WebSockets更高效、实时,是现代Web实时通信的优选。
|
2天前
|
移动开发 JavaScript 前端开发
【JavaScript技术专栏】Web Worker在JavaScript中的应用
【4月更文挑战第30天】HTML5的Web Worker API解决了JavaScript单线程性能瓶颈问题,允许在后台线程运行JS代码。本文介绍了Web Worker的基本概念、类型、用法和应用场景,如复杂计算、图像处理和数据同步。通过实例展示了搜索建议、游戏开发和实时数据分析等应用,并提醒注意其无法直接访问DOM、需消息传递通信以及移动端资源管理。Web Worker为前端开发提供了多线程能力,提升了Web应用性能和用户体验。
|
2天前
|
设计模式 前端开发 JavaScript
【JavaScript 技术专栏】JavaScript 设计模式与实战应用
【4月更文挑战第30天】本文探讨JavaScript设计模式在提升开发效率和代码质量中的关键作用。涵盖单例、工厂、观察者、装饰器和策略模式,并通过实例阐述其在全局状态管理、复杂对象创建、实时数据更新、功能扩展和算法切换的应用。理解并运用这些模式能帮助开发者应对复杂项目,提升前端开发能力。
|
3天前
|
JSON 前端开发 JavaScript
使用JavaScript制作一个简单的天气应用
使用JavaScript制作一个简单的天气应用
|
5天前
|
JavaScript 前端开发
js的let、const、var的区别以及应用案例
【4月更文挑战第27天】ES6 中,`let` 和 `const` 是新增的变量声明关键字,与 `var` 存在显著差异。`let` 允许重新赋值,而 `const` 不可,且两者都具有块级作用域。`var` 拥有函数级作用域,并可在函数内任意位置访问。`let` 和 `const` 声明时必须初始化,而 `var` 不需。根据需求选择使用:局部作用域用 `let`/`const`,全局或函数范围用 `var`,不可变值用 `const`。
14 2