iOS开发入门总结
2014-08-28 17:55
211 查看
首先,我自己总结的应用程序的结构
首先是UIApplicationMain,这个代表了这个应用程序,一个程序是只有一个的。
感觉跟我以前做过的Qt比较像,都有一个main函数作为整个应用程序的入口,Android就没有一个函数作为整个程序的入口。至于为什么会这样,我理解为这是C语言的残留。
iOS在main函数中建立一个UIApplicationMain,并返回UIApplicationMain函数的返回值。
那么UIApplicationMain里面有什么呢?我看到有一个参数的参数是AppDelegate,这是一个托管类,我理解为通过这个参数,我们把整个应用程序托管给了系统。
应用程序的启动,显示,挂起,以及退出,都由系统来判断并执行相应的托管函数。
托管类管理整个应用程序的生命周期,我们可以在相应的函数中定义应用程序去做什么。
托管类的头文件里面有一个属性,是UIWindow,一个应用程序也只有一个UIWindow。然后iOS里面的一个界面就是一个场景。
到这儿,我就不是太理解iOS为什么要这么做,一个UIAppcationMain对应一个AppDelegate,一个AppDelegate对应一个UIWindow,然后一个UIWindow对应多个场景。
层级很复杂
但是Android就只有一个Application,而且存在感很低,因为系统会自动创建这个类,除非你想用它来做些什么,比如实现应用程序级的全局变量等等,我们才会去继承它,所以一般就只有一个层级,就是activity,一个activity对应一个界面,一个应用程序会有多个activity。
在功能上一个activity对应一个场景,但是activity也包含了一定UIWindow和托管的功能。就我自己感觉,这样扁平化的层级设计,是更加合理的。
不过话又说回来,iOS和Android都只有两部分的生命周期,一个是application本身的,一个是每个界面的生命周期。
大概就这么多,慢慢看吧
话说英语真的太重要了,当最好的资料全是英文的时候,英文太差真是无比的影响效率啊。
首先是UIApplicationMain,这个代表了这个应用程序,一个程序是只有一个的。
感觉跟我以前做过的Qt比较像,都有一个main函数作为整个应用程序的入口,Android就没有一个函数作为整个程序的入口。至于为什么会这样,我理解为这是C语言的残留。
iOS在main函数中建立一个UIApplicationMain,并返回UIApplicationMain函数的返回值。
那么UIApplicationMain里面有什么呢?我看到有一个参数的参数是AppDelegate,这是一个托管类,我理解为通过这个参数,我们把整个应用程序托管给了系统。
应用程序的启动,显示,挂起,以及退出,都由系统来判断并执行相应的托管函数。
托管类管理整个应用程序的生命周期,我们可以在相应的函数中定义应用程序去做什么。
托管类的头文件里面有一个属性,是UIWindow,一个应用程序也只有一个UIWindow。然后iOS里面的一个界面就是一个场景。
到这儿,我就不是太理解iOS为什么要这么做,一个UIAppcationMain对应一个AppDelegate,一个AppDelegate对应一个UIWindow,然后一个UIWindow对应多个场景。
层级很复杂
但是Android就只有一个Application,而且存在感很低,因为系统会自动创建这个类,除非你想用它来做些什么,比如实现应用程序级的全局变量等等,我们才会去继承它,所以一般就只有一个层级,就是activity,一个activity对应一个界面,一个应用程序会有多个activity。
在功能上一个activity对应一个场景,但是activity也包含了一定UIWindow和托管的功能。就我自己感觉,这样扁平化的层级设计,是更加合理的。
不过话又说回来,iOS和Android都只有两部分的生命周期,一个是application本身的,一个是每个界面的生命周期。
大概就这么多,慢慢看吧
话说英语真的太重要了,当最好的资料全是英文的时候,英文太差真是无比的影响效率啊。
相关文章推荐
- IOS 开发入门总结
- 5个月iOS开发入门总结(C++转行iOS)
- Android IOS WebRTC 音视频开发总结(九)-- webrtc入门001
- IOS开发入门教程-总结篇-写给狂热的编程爱好者们
- 5个月iOS开发入门总结(C++转行iOS)
- iOS开发 入门学习总结(-)
- 【IOS 开发学习总结-OC-38】★ios入门 ——ios项目基础之知识点拾贝
- Android IOS WebRTC 音视频开发总结(九)-- webrtc入门001
- Android IOS WebRTC 音视频开发总结(十)-- webrtc入门002
- ios开发入门级错误总结
- iOS开发 入门学习总结(二)Objective-C 语法特性总结
- iOS开发——React Native入门总结
- IOS 入门开发之构建第一个应用程序(一)
- 【iOS-cocos2d-X 游戏开发之二】【必看篇】总结阐述Cocos2d-X与Cocos2d-iphone区别;
- IOS 入门开发之分页栏TabBar的使用(四)
- ios开发笔记之 网络编程总结
- 【iOS-cocos2d-X 游戏开发之二】【必看篇】总结阐述Cocos2d-X与Cocos2d-iphone区别;
- IOS 入门开发之创建标题栏UINavigationBar的使用(二)
- Objective-C编程语言iOS开发入门宝典 - 51CTO.com
- iPhone开发:Objective C 代码规范-iOS总结版