iOS开发技术入门和基础知识_第1页
iOS开发技术入门和基础知识_第2页
iOS开发技术入门和基础知识_第3页
iOS开发技术入门和基础知识_第4页
iOS开发技术入门和基础知识_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、演讲人:王益南IOS开发技术入门和基础知识2021年年12月月9日星期四日星期四12021年年12月月9日星期四日星期四2课程内容11. iOS开发入门2. iOS概述和架构介绍3. iOS开发限制介绍4. Hello World实例演示5. iPhone开发工具安装和介绍6. Xcode基础介绍2021年年12月月9日星期四日星期四3课程内容21. OC概述及命名规范2. OC变量和常量3. OC运算符和表达式4. If语句5. for语句6. while语句7. switch语句2021年年12月月9日星期四日星期四41、iOS开发入门 2007年诞生第一代iPhone2021年年12月月

2、9日星期四日星期四5iOS开发入门 除了iPhone还有iPad、iPod touch和AppleTV2021年年12月月9日星期四日星期四6iOS开发入门 成为iOS开发人员 http:/ iOS授权账户分类:普通账户、企业账户、校园账户普通授权账户普通授权账户企业账户企业账户校园账户校园账户iOS的SDK试用版YESYESN/AiOS的SDK正式版YESYESYES真机安装YESYESYES有偿开发服务YESYESN/AAdHoc发布YESYESN/AApp Store发布YESN/AN/AIn-Hourse发布N/AYESN/A企业的批量采购YESN/AN/A内置收益广告YESN/AN/

3、A年费$99$299免费申请要求合法的信用卡邓白氏编码高等教育机构2021年年12月月9日星期四日星期四8iOS开发入门 App Store平台2021年年12月月9日星期四日星期四92、iOS概述和架构介绍iOS的发展历史的发展历史 2007年6月 iPhone OS 1.0 2008年3月 正式发布iPhone OS 2008年7月 Apple推出革命性的商业模式Appstore 2008年8月 iPhone OS 2.0 2009年6月 iPhone OS 3.0随着iPhone 3GS一起发布 2010年4月 iPad发布,同时发布iPhone OS 3.2 2010年6月 iPhon

4、e OS正式更名为“iOS”,iOS4.0发布 2011年10月 iOS5.0与iPhone4S一起发布 2012年9月 iOS6.0与iPhone5一起发布 2013年9月 iOS7.0与iPhone5s及iPhone5c一起发布2021年年12月月9日星期四日星期四10iOS概述和架构介绍iPhone3GSiPhone4siPhone5iPhone5s3.5in.Screen320 x480pixels3.5in.Screen640 x960pixels4.0in.Screen640 x1136pixels4.0in.Screen640 x1136pixels2021年年12月月9日星期四

5、日星期四11iOS概述和架构介绍 iOS操作系统是iPhone、iPod touch及iPad设备的核心。 iOS平台开发工具和开发技术源于Mac OS X,都是以UNIX为基础。 iOS应用程序开发依赖于iPhone软件开发包(SDK),其中SDK继承与Xcode中XcodeiOS SDKMac OS XXcode 3.2.6iOS SDK 4.3GM Seed for Snow Leopard 10.6.6Xcode 4.0.2iOS SDK 4.3.2Snow Leopard 10.6.6Xcode 4.1iOS SDK 5.0Snow Leopard 10.6.7Xcode 4.2iO

6、S SDK 5.0Snow Leopard 10.6.7Xcode 4.3.2iOS SDK 5.1Lion 10.7.xXcode 4.6iOS SDK 6.1Lion 10.7.4Xcode 5.0iOS SDK 7.0Mountain Lion 10.8.52021年年12月月9日星期四日星期四12iOS概述和架构介绍 从整体看,iOS扮演底层硬件和应用程序的中介。 创建的应用程序不能直接访问硬件,而需要和系统接口进行交互。iOS实现可以看作多个层的集合,底层为所有程序提供基础服务,高层则包含一些复杂的服务和技术。2021年年12月月9日星期四日星期四13iOS概述和架构介绍COCOA

7、TOUCH层层 提供了基本的系统行为支持,当需要实现更为复杂的行为和界面时,提供了基本的系统行为支持,当需要实现更为复杂的行为和界面时,才考虑向下层探寻技术支持。才考虑向下层探寻技术支持。UIKit框架:框架:提供程序运行必须得关键对象,使APP能够捕获用户输入和在屏幕上显示内容。MapKit框架:框架:iOS3.0引入该框架,可被嵌入到应用程序的地图界面,该框架包含一个可以滚动的地图视图。Address Book UI框架:框架:iOS3.0引入该框架,用于撰写电子邮件,并将其放入到用户的发件箱排队等候发送。Message UI框架:框架:显示创建或者编辑联系人的标准系统界面。还有Game

8、Kit,Event Kit UI,iAd框架等2021年年12月月9日星期四日星期四14iOS概述和架构介绍Media层层 包含图形、音频、视频等技术。包含图形、音频、视频等技术。AV Foundation框架:框架:用于播放和编辑复杂的音频和视频。Core Image框架:框架:包含高级图像和视频处理功能。如:人脸识别和图像过滤功能。Core Graphics框架:框架:包含2D绘画和合成功能。Media Player框架:框架:提供典型的屏幕控件用于播放电影。Quartz Core框架:框架: 包含Core Animation接口。用于实现复杂的动画和视觉效果。还有Image I/O,Co

9、re Text等框架。2021年年12月月9日星期四日星期四15iOS概述和架构介绍CORE SERVICE层层 用于访问较多低级的操作系统服务,如文件存取,联网和常见的数据对象类型。Foundation框架:为Core Foundation框架的许多功能提供Objective-C封装。Core Foundation框架:一组C语言的接口,为iOS应用程序提供基本数据管理和服务功能。Core Location框架:用于定位设备当前经纬度。System Configuration:用于确定设备网络配置的当前状态。还有CFNetwork、Core Data、Quick Look等框架。2021年年

10、12月月9日星期四日星期四163、iOS开发限制介绍平台间差异:平台间差异:iPhone OS设备和台式机或笔记本电脑的开发的不同,也和桌面应用程序不同,需要意识到终端开发的特殊性。屏幕大小的限制:屏幕大小的限制:由于iPhone OS设备具有高分辨率的小型屏幕,在iphone5之前设备都是3.5in,iphone5及iphone5c,iphone5s都是4.0in,在设计应用时需要注意不要放置非必要的元素。内存限制:内存限制:iOS的内存非常有限,避免分配超出设备的可用内存,不然应用程序将终止。当发生内存过低时,iOS系统将发出警告,需要进行及时清理内存。同时需要注意避免内存泄露。窗口显示限

11、制窗口显示限制:在iOS环境上,用户每次只能看到单个窗口。多个窗口只能顺序访问和查看。电量限制电量限制:iPhone OS设备是通过电池供电,而高速运转的系统,大屏幕,上网或看电子书都会消耗电量。2021年年12月月9日星期四日星期四174、Hello World实例演示3种创建方式种创建方式 NSBundle类创建类创建 直接使用Single View Application创建工程,拖动UILabel显示。 Interface Builder创建创建 创建一个Empty Application工程,新建一个xib文件并添加到界面。 直接使用直接使用“手写手写”代码创建代码创建2021年年1

12、2月月9日星期四日星期四185、iPhone开发工具安装和介绍 Xcode: iOS集成开发环境,也是编译器,负责管理应用程序工程。 Interface Builder: 快速原型开发工具,可视化的组装用户UI接口的工具,集成在Xcode中。 Instruments:功能强大的性能调试工具,以及内存分析工具。 iPhone Simulator:Mac OS X平台应用程序,它是模拟应用程序,但不能完全模拟所有功能。 iOS SDK:iOS软件开发工具包。2021年年12月月9日星期四日星期四19iPhone开发工具安装和介绍下载Xcode并安装开发环境必须是Mac OS X系统,可以是在win

13、dow上安装Mac OS X的虚拟机直接在App Store上搜索Xcode,进行下载安装若要下载旧版本登陆 https:/ Xcode.app, iPhone SDK, iPhone Simulator, Instruments下载完成后运行安装程序,没必要修改任何默认配置,不断点击continues按钮完成安装。安装完成即可运行Xcode。2021年年12月月9日星期四日星期四206、Xcode基础介绍 进行Xcode后选择“Create a New Xcode project” 创建新项目2021年年12月月9日星期四日星期四21Xcode基础介绍 Xcode操作界面2021年年12月月

14、9日星期四日星期四22Xcode基础介绍 Xcode项目的文件组织2021年年12月月9日星期四日星期四23Xcode基础介绍项目文件释义Supporting Files plist文件:应用程序相关设置(属性)的文件 strings文件:设置应用程序本地化的文件 main.m:程序的入口 pch文件:程序的预处理文件frameworks 存放框架位置products 应用程序执行文件2021年年12月月9日星期四日星期四24Xcode基础介绍模拟器常用操作选取设备旋转设备返回首页锁定模拟内存警告呼叫状态栏目拷贝屏幕以及屏幕快照常用快捷键2021年年12月月9日星期四日星期四251. OC概述

15、及命名规则计算机语言的历史计算机语言的历史 第一代编程语言 纯机器语言 第二代编程语言 汇编 第三代编程语言 C、Pascal等面向过程的语言 C+、java面向对象的语言 oc同样是面向对象的语言2021年年12月月9日星期四日星期四26OC概述及命名规则OC概述概述 Mac OS X和iOS使用相同的开发环境和开发语言Objective-C。 由于Mac OS X和iOS都是基于Unix内核,所以对大小写敏感。 oc是C语言的超集,C语言的扩展,与C语言完全兼容。添加了关键字“”,区别于C语言。 oc的头文件格式是“.h”,实现文件格式是“.m”。如果需要使用C+的语法和内容,那么实现文件

16、格式是“.mm”。 历史:1988年乔布斯的NeXT公司买下StepStone代码授权和Objective-C商标权。1996年苹果公司收购NeXT公司,将操作系统NeXTSTEP重名成Cocoa(很多Cocoa框架的类库都以NS开头),Objective-C语言成为苹果公司的主要使用语言。2007年更新为Objective-C 2.0 。2021年年12月月9日星期四日星期四27OC概述及命名规则命名规则命名规则 oc语言中,对各种变量变量、方法方法和类类等要素命名时使用的字符序列称为标识符标识符。 oc标识符由字母、数字、美元符“$”和下划线“_”组成。名字开头首位都会写上字母,因为数字被

17、认为是非法的,下划线被认为有特殊含义(下划线的变量惯例为成员变量,双下划线的变量惯例为系统内部变量)。 oc标识符大小写敏感,长度无限制。&user 错误。 “&”作为首位且不支持此符号。sum(a_b) 错误。“()”不支持此符号。email address 错误。 不支持空格。5cakes 错误。数字不可以作为名字首位。char 错误。不能与oc中保留字重名。2021年年12月月9日星期四日星期四28OC概述及命名规则 保留字,即关键字(keyword),系统专门使用的字符串。 oc中的关键字全部都是小写。intenumfloatgotodoubleregistershor

18、tsizeofstructtypedefunsignedvolatilebreakcharcontinuedolongexternforwhileautoreturnsignedstaticswitchunionvoidifcaseconstdefaultelse2021年年12月月9日星期四日星期四29OC概述及命名规则命名规范命名规范匈牙利命名法: 变量名 = 变量特性+变量类型+描述如m_iUserID变量,m代表member,i代表integaer,UserID变量含义。变量特性变量特性g_: 全局变量c_: 常量s_: 静态变量m_: 类成员变量变量类型变量类型简写简写变量类型变量类

19、型简写简写charch 或 cchar *szinti 或 ndoubledpointerplonglboolbunsignedufloatf2021年年12月月9日星期四日星期四30OC概述及命名规则命名规范命名规范 驼峰式命名法: 即每个单词的首字母大写,但变量名的第一位小写。通常在变量名前些上变量类型的简称。 NSString *strUnitTestResult; NSString *unitTestResult; NSArray *arrTestResult; 其中NSString和NSArray常用简写str和arr。 为了避免不同开发者创建相同名字的变量、方法或类的情况,最好在名

20、字前加上一个前缀。如NS(NEXTSTEP的缩写)前缀,表示Foundation类库。2021年年12月月9日星期四日星期四31OC概述及命名规则代码格式规范代码格式规范 大括号要对齐 遇到“”Tab缩进 方法和程序块之间加换行 运算符两侧加空格 “”前面有空格 “”成对出现2021年年12月月9日星期四日星期四322. OC变量和常量常量常量oc中不同的数据类型表示的常量: const int kInitNum = 123; 整型常量 const float kPI = 3.1415926; 实型常量 const BOOL kIsFinished = TRUE; 逻辑常量 const cha

21、r kExamResult = a; 字符常量 const char *kWelcome = Hello World!; 字符串常量 const NSString *kBaiduURL = http:/; oc中约定,常量使用大小写混排的驼峰命名规则,第一个字中约定,常量使用大小写混排的驼峰命名规则,第一个字母是母是k。 objective-c中方法不能使用中方法不能使用const修饰。修饰。2021年年12月月9日星期四日星期四33OC变量和常量变量变量oc变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。oc程序中每一个变量都属于特定的数据类型,在使用前必须对其声明。如: int i = 12345; float f = 12.12f;按被声明的位置可分为:局部变量:方法或语句块内部定义的变量实例变量: (成员变量)方法外部、类的内部定义的变量按所属的数据类型可分为:基本数据类型变量和指针数据类型变量2021年年12月月9日星期四日星期四34OC变量和常量变量变量 局部变量:方法体内部声明的变量(包括形参)。方法体内部是指与方法对应的大括号内部。 - (void)test NSString *str = “hello World!”;/str就是一个局部变量。 成员变量:在方法体外,类体内声明的变量。 interface AppDelegate : UI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论