iOS Technology Overview_Introduction
关于iOS技术
iOS是运行在iPad,iPhone和iPod touch设备上的操作系统。这个操作系统管理着这些设备的硬件并且提供了实现原生APP所需的技术。这个操作系统也附带许多系统APP,例如Phone,Mail和Safari,这些应用为用户提供了标准的系统服务。
iOS软件开发工具(SDK)包含了用来开发,安装,运行和测试那些运行在iOS设备上的原生APP的工具和接口 。原生APP是用iOS系统框架和Objective-C语言开发,而且能够直接在iOS上运行。不像web应用,原生APP安装在本地,所以即使当设备在飞行模式下仍然能为用户提供有效服务。这些APP与系统应用安装在一起,APP本身和用户的数据都能够通过iTunes同步到用户电脑。

| 注意:在iOS中能够结合使用HTML,CSS和JavaScript编码来创建一个web应用。web应用运行在Safari浏览器中,web应用需要网络连接来使用网络服务。这篇文档不包括创建web应用的内容。更多关于创建web应用的信息请查看Safari Web Content Guide。 |
概览
iOS SDK提供了开发原生APP的资源。理解一点SDK中的技术和工具能够帮助你在思考如何设计和实现你的应用时做出更好的选择。
iOS是层状结构的
在最高层级,iOS扮演着在底层硬件和你创建的APP之间的媒介的角色。APP不会直接与底层硬件通信。作为替代,APP通过一套定义明确的系统接口与硬件进行通讯。这些接口让创建能够在不同硬件性能的设备上都能正常运行的APP变得简单。
iOS的技术实现能够被看做是一组层级的组合,如下图所示。低层级包括基本服务和技术。高层及是在低层级的基础上建立的,它们提供了更多复杂的服务和技术。

当你编写代码时,推荐使用高层级的框架。高层级的框架提供了面向对象的底层结构的抽象。这些抽象一般来说使编码更简单,因为减少了大量必须写的或者用来封装可能非常复杂特征的代码,例如sockets和threads。如果在低层级的框架中包含着一些没有在高层及框架中暴露技术时你也可以使用低层级的框架。
| 关键字:Cocoa Touch Layer, Media Layer, Core Services Layer, Core OS Layer |
iOS技术被打包成框架
苹果提供的系统接口大多数在一个特殊的包内,这个包被称作框架。所谓框架就是一个字典,这个字典包含了一个动态共享库和支持库的相关资源(例如头文件,图片和辅助应用)。使用框架时,你可以通过Xcode将这些框架添加到你的工程中。
| 关键字:iOS Frameworks |
开发者库能够帮助你
iOS开发者库是开发时需要用到的一个非常重要的资源。这个库中包含了API参考,编程指导,版本注释,技术文档,代码示例,同时也提供了一些其他的资源,这些资源提供了一些窍门和指引来帮助你用最好的方式来创建你的应用。
你可以在Apple Developer网站或者从Xcode中使用到iOS开发者库。在Xcode中,选择Help > Documentation and API Reference来打开Xcode文档窗口,这是使用iOS开发信息的中央资源。你可以使用文档窗口来浏览,搜索和标记文档。
如何使用文档
iOS技术概览这篇文章是为所有刚开始在iOS平台开发的人员的一个入门指南。它提供了一个技术和工具的概览,这个概览对开发过程产生影响,并且提供了相关文档和其他信息源的链接。你应该这样来使用文档:
·让你自己适应iOS平台
·学习iOS软件技术,思考你为什么很想去使用这些技术,还有你什么时候去使用这些技术
·了解平台的发展机遇
·获取关于从其他平台转到iOS平台的一些建议和指导
·找到与你感兴趣的技术相关的关键文档
这篇文章不能提供用户级特性的信息,也不能影响到软件开发过程,更无法列出具体的iOS设备硬件性能。新的开发者应该知道,这篇文章是用来熟悉iOS。有经验的工程师可以把这篇文章当做是一张用来探索技术和开发技巧的地图。
另请参阅
如果你是刚刚接触iOS开发,这本书只能提供关于系统的概览。要想学习更多关于iOS APP开发的知识,你需要阅读下面的文档:
·Start Developing iOS Apps Today提供了整个开发过程的指导,从如何配置你的系统开始到将App提交到App Store的流程为止。如果你是刚开始做iOS App开发,这将会是另外一种探索iOS开发的起点。
·iOS Human Interface Guidelines提供了如何设计你的用户界面的相关指导和信息
·App Distribution Guide,它从开发工具的角度描述了iOS的开发过程。这篇文章中介绍了开发所需配置和设备配置,同时也包含了使用Xcode和其他工具来创建,运行和测试你的软件。
在苹果设备上开发,你要注册并付费加入iOS Developer计划,然后配置一台设备做开发用。你注册以后,将会在iOS Dev Center获得Xcode和iOS SDK的备份。
============================================================================================================
原文:
About the iOS Technologies
iOS is the operating system that runs on iPad, iPhone, and iPod touch devices. The operating system manages the device hardware and provides the technologies required to implement native apps. The operating system also ships with various system apps, such as Phone, Mail, and Safari, that provide standard system services to the user.
The iOS Software Development Kit (SDK) contains the tools and interfaces needed to develop, install, run, and test native apps that appear on an iOS device’s Home screen. Native apps are built using the iOS system frameworks and Objective-C language and run directly on iOS. Unlike web apps, native apps are installed physically on a device and are therefore always available to the user, even when the device is in Airplane mode. They reside next to other system apps, and both the app and any user data is synced to the user’s computer through iTunes.
Note: It is possible to create web apps using a combination of HTML, cascading style sheets (CSS), and JavaScript code. Web apps run inside the Safari web browser and require a network connection to access your web server. This document does not cover the creation of web apps. For more information about creating web apps in Safari, see Safari Web Content Guide.
At a Glance
The iOS SDK provides the resources you need to develop native iOS apps. Understanding a little about the technologies and tools contained in the SDK can help you make better choices about how to design and implement your apps.
The iOS Architecture Is Layered
At the highest level, iOS acts as an intermediary between the underlying hardware and the apps you create. Apps do not talk to the underlying hardware directly. Instead, they communicate with the hardware through a set of well-defined system interfaces. These interfaces make it easy to write apps that work consistently on devices having different hardware capabilities.
The implementation of iOS technologies can be viewed as a set of layers, which are shown in Figure I-1. Lower layers contain fundamental services and technologies. Higher-level layers build upon the lower layers and provide more sophisticated services and technologies.
As you write your code, it is recommended that you prefer the use of higher-level frameworks over lower-level frameworks whenever possible. The higher-level frameworks are there to provide object-oriented abstractions for lower-level constructs. These abstractions generally make it much easier to write code because they reduce the amount of code you have to write and encapsulate potentially complex features, such as sockets and threads. You may use lower-level frameworks and technologies, too, if they contain features not exposed by the higher-level frameworks.
Relevant chapters: Cocoa Touch Layer, Media Layer, Core Services Layer, Core OS Layer
The iOS Technologies Are Packaged as Frameworks
Apple delivers most of its system interfaces in special packages called frameworks. A framework is a directory that contains a dynamic shared library and the resources (such as header files, images, and helper apps) needed to support that library. To use frameworks, you add them to your app project from Xcode.
Relevant sections: iOS Frameworks
The Developer Library Is There to Help You
The iOS Developer Library is an important resource for you to use during development. The library contains API reference, programming guides, release notes, tech notes, sample code, and many other resources offering tips and guidance about the best way to create your apps.
You can access the iOS Developer Library from the Apple Developer website or from Xcode. In Xcode, choose Help > Documentation and API Reference to display the Xcode documentation window, which is the central resource for accessing information about iOS development. Use the documentation window to browse, search, and bookmark documents.
How to Use This Document
iOS Technology Overview is an introductory guide for anyone who is new to the iOS platform. It provides an overview of the technologies and tools that have an impact on the development process and provides links to relevant documents and other sources of information. You should use this document to:
- Orient yourself to the iOS platform
- Learn about iOS software technologies, why you might want to use them, and when
- Learn about development opportunities for the platform
- Get tips and guidelines on how to move to iOS from other platforms
- Find key documents relating to the technologies you are interested in
This document does not provide information about user-level features that have no impact on the software development process, nor does it list the hardware capabilities of specific iOS devices. New developers should find this document useful for getting familiar with iOS. Experienced developers can use it as a road map for exploring specific technologies and development techniques.
See Also
If you’re new to iOS development, this book provides only an overview of the system. To learn more about how to develop iOS apps, you should read the following documents:
- a target="_self" Start Developing iOS Apps Today/a provides a guided tour of the development process, starting with how to set up your system and ending with the process of how to submit apps to the App Store. If you are new to developing iOS apps, this is another good starting point for exploring iOS app development.
- iOS Human Interface Guidelines provides guidance and information about how to design your app’s user interface.
- App Distribution Guide describes the iOS development process from the perspective of the tools. This document covers the configuration and provisioning of devices for development and covers the use of Xcode (and other tools) for building, running, and testing your software.
To develop on a device, you sign up for Apple’s paid iOS Developer program and then configure a device for development purposes. After you sign up, obtain a copy of Xcode and the iOS SDK at the iOS Dev Center
iOS Technology Overview_Introduction的更多相关文章
- ios 程序学习
马上着手开发iOS应用程序:五.提交应用与寻找信息 2013-01-11 15:36 佚名 apple.com 我要评论(0) 字号:T | T 本文介绍了您已经学习完如何开发一个优秀的iOS应用之后 ...
- iOS开发,新手入门指导
在做了近两年wp,安卓开发之后,某一天突然决定投身iOS的开发之中. 因为一直用的mac,做wp开发的时候都用双系统,vs开久了,就会比较烫,这点让人不爽.后来更多地做安卓,直接mac下开发,很舒适的 ...
- iOS Document Interaction(预览和打开文档) 编程指南
原文:http://developer.apple.com/library/ios/#documentation/FileManagement/Conceptual/DocumentInteracti ...
- iOS Document Interaction 编程指南
本文转载至 http://www.2cto.com/kf/201306/219382.html iOS支持在你的app中用其他app预览和显示文档.iOS还支持文件关联,允许其他app通过你的程序打开 ...
- ios notification
apps can use local or push notifications to let people know when interesting things happen, such as: ...
- 如何学习ios(摘自知乎https://www.zhihu.com/question/20016551)
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:Wang Hailong链接:https://www.zhihu.com/question/20016551/answer/1 ...
- iOS-关于使用其他应用打开本应用文档
简介:本片文章是对官方文档的翻译,非常的感谢文章的翻译者:颐和园 官方地址:Document Interaction Programming Topics for iOS 文章的介绍内容: ***** ...
- 苹果Xcode帮助文档阅读指南
文档导读 https://developer.apple.com/legacy/library/navigation/ 前面我们讲Xcode的文档结构是在介绍如何能够快速定位到你要找的内容.但是很多人 ...
- 1.9 From Native to HTML5
The mobile technology has become more and more mature, and it has evolved from a ridiculous situatio ...
随机推荐
- GET方法传递中文参数乱码解决办法
1.在页面中对你的URL进行编码 使用------encodeURI(你要使用的中文参数值)如:...?username"+encodeURI(“小甜甜") 2.在后台通过解码来接 ...
- 编写高质量JS代码的68个有效方法(三)
[20141030]编写高质量JS代码的68个有效方法(三) *:first-child { margin-top: 0 !important; } body>*:last-child { ma ...
- IconVault – 创建自定义图标字体的神器推荐
图标字体简单来说就是外观呈现为图标的字体,同时具有矢量图形的特征,在不同的设备上使用图标的时候就不用加载不同尺寸的图片文件,能够减少 HTTP 请求数,提高页面加载速度. IconVault 这款在线 ...
- 个人阅读作业Week17
个人阅读作业Week17 reading buaa software 解决的问题 这是提出问题的博客链接:http://www.cnblogs.com/SivilTaram/p/4830893 ...
- scrum1.4---Sprint 计划
燃尽图
- ADO.NET 基础
*程序要和数据库交互要通过ADO.NET进行,通过ADO.NET就能在程序中执行SQL了,ADO.NET中提供了对各种不同数据库的统一操作接口. 1.连接SQLServer 连接字符串,程序通过链接字 ...
- [水煮 ASP.NET Web API2 方法论](3-4)设置路由可选项
问题 怎么样创建一个路由,不管客户端传不传这个参数,都可以被成功匹配. 解决方案 ASP.NET WEB API 的集中式路由和属性路由都支持路由声明可选参数. 在用集中式路由中可以通过 RouteP ...
- 【C#】1.2 控制台应用程序学习要点
分类:C#.VS2015 创建日期:2016-06-14 教材:十二五国家级规划教材<C#程序设计及应用教程>(第3版) 一.要点概述 <C#程序设计及应用教程>(第3版)的第 ...
- git 使用笔记(一)
1. 环境介绍 windows10 2.使用 2.1 安装git for windows 2.2 创建一个文件夹, 开始git管理 2.3 查看该目录,包括隐藏文件 2.4 把testgit.txt添 ...
- bootstrap 学习片段
1. 只要单击按钮添加了data-toggle="dropdown"属性, 在单击按钮的时候,默认隐藏的下拉列表就会显示出来 <div class="row&quo ...