iOS初探

这只是一篇很简略的文章

只为让自己坚持学习

基本都是从书中得到的笔记


2007年1月,苹果发布了iPhone OS 1.0,逐渐,iPhone手机便开创了一个新的时代。乔帮主对人类的贡献可谓是巨大的。

2013年6月10日,苹果公司在WWCD 2013大会中发布了最新的iOS 7系统,至此,扁平时代是否就会因此到来?

网上对于iOS 7的看法有褒有贬,无论怎么样,对于我自己来说,一样新的东西出现的时候,还是能引起我的兴趣的。


对于一个完全没有学过oc和搞过iOS 的人来说,这个学习过程必定不轻松。

好了,就先做做关于iOS架构的笔记吧。(笔记内容来自《iOS 7 应用开发技术详解》一书以及http://www.580114.com/Forum/t-36409,感谢分享!)


iOS实现可以看做多个层的集合,底层为所有应用程序提供基础服务,高层则包含一些复杂的服务和技术。

1. Cocoa Touch层(主要包含UIKit)

Cocoa Touch层包含创建iOS应用程序所需的关键框架。上至实现应用程序可视界面,下至于高级系统服务交互,都需要该层技术提供底层基础。在开发应用程序的时候,尽可能不要使用更底层的框架,尽可能使用该层的框架。Cocoa Touch层支持多任务、数据保护、推送通知服务、本地通知和手势识别器等高级特性。

最接近用户的层面,包括了触摸、位置服务、摄像头等应用。



2. Media层(主要包含Core Graphics、Open GL ES、Core Animation)

Media层包含图形技术、音频技术和视频技术,这些技术相互结合就可为移动设备带来最好的多媒体体验,更重要的是,它们让创建外观音效俱佳的应用程序变得更加容易。可以使用iOS得高级框架更快速地创建高级得图形和动画,也可以通过底层框架访问必要得工具,从而以某种特定得方式完成某种任务。

主要包括了各种媒体文件的处理,例如JPEG、PNG以及TIFF等,还有PDF文件的处理,这些成为iOS系统的处理内容,成为了基本的媒体应用,并且可以被各种应用调用,提高了iOS的系统性能。



3. Core Services层(主要包含Core Data、Foundation)

Core Services层为所有得应用程序提供基础系统服务。可能应用程序并不直接使用这些服务,但它们是系统很多部分赖以建构的基础。

包含了多种服务,例如URL服务,还有大量的网络应用等



4.Core OS层

Core OS层的底层功能是很多其他技术de构建基础。通常情况下,这些功能不会直接应用于应用程序,而是应用于其他框架。胆识,在直接处理安全事务或和某个外设通信的时候,必须要应用到该层的框架。

Core OS是最为核心的系统,包括了多种硬件管理,还有安全管理等内容,是iOS的核心应用。事实上,iOS是基于Unix系统开发的,自然跟Unix一样了。




接下来就是iOS常用的几个框架:

Foundation框架

Foundation框架为所有应用程序提供基本的系统服务。应用程序以及UIKit和其他框架,都建立在Foundation框架的基础结构之上。

Foundation框架提供许多基本的对象类和数据类型,使其成为应用程序开发的基础。

功能:

1)创建和管理集,如数组和字典

2)访问储存在应用程序中的图像和其他资源

3)创建和管理字符串

4)发布和观察通知

5)创建日期和时间对象

6)自动发现IP网络上的设备

7)操控URL流

8)异步执行代码


UIKit框架

UIKit框架提供的类可用于创建基于触摸的用户界面,提供基础结果用于在屏幕上绘图、处理时间,以及创建通用用户界面元素。UIKit还通过管理屏幕上显示的内容来组织复杂的应用程序。提供了大量用于设计用户界面交互的常用控件。

功能:

1)构建和管理用户界面

2)处理基于触摸和运动的事件

3)显示文本和网页内容

4)优化应用程序以实现多任务

5)创建自定用户界面元素


Core Data框架

Core Data框架用于管理应用程序的数据模型。借助Core Data,可以创建模型对象(称为被管理的对象),管理那些对象之间的关系,并通过框架更改数据。Core Data利用内建的SQLite技术高效地储存和管理数据。

功能:

1)存储对象和从储存处取回对象

2)支持基本的撤销/重做

3)自动验证属性值

4)对内存中的数据进行过滤、分组和整理

5)使用NSFetchedResultsController管理表格视图中的结果

6)支持基于文稿的应用程序


Core Graphics框架

使用Core Graphics框架可以创建图形。而在iOS中创建图形最简易、便捷的方法,是将预渲染的图像与UIKit框架的标准视图和控制配合使用,并让iOS完成绘图。由于UIKit提供用于自定绘图的类,包括路径、颜色、图案、渐变、图像、文本和变换,因此建议尽可能地使用UIKit,而非Core Graphics。

功能:

1)制作基于路径的绘图

2)使用边缘模糊化渲染

3)添加渐变、图像和颜色

4)使用坐标空间变换

5)创建、显示和解析PDF文稿


Core Animation框架

制作高级动画和视觉效果。UIKit提供的动画是建立在Core Animation之上的。

借助Core Animation能够创建不同层次的层对象,并对它们进行操控、旋转、缩放、变换等。

功能:

1)创建自定动画

2)给图形添加时序功能

3)支持关键帧动画

4)指定图形布局约束

5)将多层更改分组为原子更新


OpenGL ES框架

提供2D和3D绘图工具,支持基础的2D和3D绘图。

功能:

1)创建2D和3D图形

2)制作更复杂的图形,如数据可视化、飞行模拟或视频游戏

3)访问底层图形硬件


12点了,今天先写到这啦!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值