iOS 官方文档笔记:About iOS App Programming(iPhone应用程序编程指南)

前注:本文章未完成,但是考虑到目前的iOS版本比起当时我写这个笔记的时候已经有很大变化了,所以很多内容可能不同。
本文地址:https://segmentfault.com/a/11...


核心应用程序

应用程序的生命周期:

用户程序里面包含了一个标准的main()函数,这个函数里面的代码应该是最小程度地使用,要么就不改。
main()函数做的事情有两个:
1、创建自动释放池(autoreleasepool)
2、调用UIApplicationMain()

core_objects_2x.png

应用程序的委托(delegate)

每个应用程序中,必须要有这些delegate方法。参见UIApplicationDelegate文档。
这个delegate对象负责处理几个关键的系统事件,很大程度上,用户程序的入口甚至可以说就是从这些delegate开始的。

事件处理周期

比如一个触摸动作,数据传递过程为:
触摸数据 ——封装于——> UIEvent ——包含——> UITouch

UIApplication对象用一个处理触摸事件的输入原来配置主循环(main runloop)
应用程序 ——派发事件——> UIWindow对象 ——传送事件——> 第一响应者
第一响应者(first responder)是什么?一般就是各种UIApplication、UIWindows、UIView或其派生类。

基本设计模式

iOS开发使用MVC模式,分别是模型 - 视图 - 控制器

  1. 模型:负责数据的维护
  2. 视图:GUI
  3. 控制:上述两者的框架

委托

目标 - 动作:控件将用户预先定义好的“动作”发给“控件”处理

内存模型:引用计数


应用程序运行环境

启动、关闭方式

在iOS中,每次只能有一个前台程序在运行。点击应用程序图标时,程序启动,并应该快速初始化。
点击Home时,iOS通知应用程序推出,此时应该尽快保存需要保存的数据,否则5秒内整个程序可能会被终止(注:现在就不一定了)
设计应用程的时候,要让用户看起来觉得好像程序正在后台运行一样。

应用程序的程序包

一个典型的App程序包(比如命名为SomeApp)的内容为:

  1. SomeApp:可执行文件(必需)
  2. Settings.bundle:配置文件的偏好设置
  3. Icon.png:57x57的主icon
  4. IconSettings.png:29x29的icon,用在setting程序中显示
  5. MainWindow.nib:应用程序的主nib文件
  6. Default.png:480x320,在App启动时作为临时界面显示
  7. iTunesArtwork:512x512的icon,用在使用ad-hoc方式发布的程序中
  8. Info.plist:属性列表
  9. en.lproj:本地化资源
信息属性列表

(待续……)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值