# iOS设备发展史
1.iPhone 发展史
2. iPad 发展史
3. iPad mini 发展史
##1.iPhone 发展史
- iPhone一代(iPhone2G)
+ 2007年发布
+ 支持电子邮件、移动通话、短信、网络浏览等
+ **采取触摸键盘**
+ 3.5英寸,480x320像素
+ 后置摄像头200万像素
>+ 2007年1月10日,在MacWorld大会上苹果正式发布了首款苹果智能手机iPhone,从未涉足过通讯领域的苹果公司也能出手机,当时还是诺基亚的天下,N系列的风光几乎让诺基亚忘了自我。有不少人都在嘲笑苹果iPhone,一款没有键盘的手机能有怎么样,但随后的表现让所有人都傻了眼
>+ 伴随着众多业界的质疑,苹果首款iPhone手机于2007年6月开始全球同步发售。从发售当天众多粉丝彻夜排队购买的情况看,让众多质疑iPhone的人都傻了眼,而这仅仅只是“改变一切”的开始
>+ 在iPhone出现之前,智能手机要不然就是没有配备触摸屏,要不然就是一个配有触控笔的电阻屏。iPhone用电容屏改变了一切,但更重要的是,苹果知道如何利用这些新的硬件来改善人机交互方式,降低用户操作的难度,这让iOS比其他系统更为强大。通过去掉大量的按键仅仅保留一颗Home键,苹果将交互主要的发生地定义在了触摸屏。苹果为了让人机交互更自然,更是引入了众多手势,比如双指缩放图片,即便是在现在看来,依然惊艳不已
>+ 2010年5月,英国的一项调查发现,iPhone被认为是一项十分重要的发明,其重要性甚至超越了洗衣机、内燃机和太空旅行。此项调查中,苹果iPhone入选历史十大发明,排名第8位,排在第9和第10位的分别是抽水马桶和内燃机
- iPhone的出现,让不少人发出这样的感叹:世界上有2种手机,一种叫做iPhone,一种叫做 所有其他手机
- iPhone二代(iPhone3G)
+ 2008年发布
+ **增加了3G的功能**
+ 3.5英寸,480x320像素分辨率
+ 后置摄像头200万像素
- iPhone三代(iPhone3GS)

+ 2009年发布
+ 外观上基本跟iPhone3G没区别,速度更快,**3GS后面的S就是“Speed”的意思**
+ 3.5英寸,480x320像素分辨率
+ **后置摄像头300万像素**
- iPhone4

+ 2010年发布,艳惊四座(里程碑)
+ 全新外观+玻璃材质,9.3毫米厚度,A4单核处理器,支持多任务
+ **3.5英寸Retina显示屏(视网膜屏幕),960x640像素分辨率**
+ **后置摄像头500万像素**
+ **前置摄像头30万像素**
- iPhone4s

+ 2011年发布
+ 外观上与iPhone4区别不大
+ A5双核处理器,性能上有较大的提升
+ **后置摄像头800万像素**
+ 前置摄像头30万像素
- iPhone5

+ 2012年发布
+ 全新外观,机身更轻薄,7.6毫米厚度,屏幕更大
+ A6双核处理器,速度更快
+ **4.0英寸,1136x640像素分辨率**
+ 后置摄像头800万像素
+ **前置摄像头120万像素**
- iPhone5C

+ 2013年发布
+ 4.0英寸,1136x640像素分辨率
+ 后置摄像头800万像素
+ 前置摄像头120万像素
+ **便宜,颜色多样**
- iPhone5s

+ 2013年发布
+ **全新外观,机身更轻薄,7.6毫米厚度,屏幕更大**
+ **A7双核处理器,速度更快**
+ 4.0英寸,1136x640像素分辨率
+ 后置摄像头800万像素
+ 前置摄像头120万像素
- iPhone6

+ 2014年发布
+ **主屏尺寸:4.7英寸**
+ **主屏分辨率:1334x750像素**
+ 后置摄像头:800万像素
+ 前置摄像头:120万像素
+ **内存:1GB**
- iPhone6Plus

+ 2014年发布
+ **主屏尺寸:5.5英寸**
+ **主屏分辨率:1920x1080像素**
+ 后置摄像头:800万像素
+ 前置摄像头:120万像素
+ **内存:1GB**
- iPhone7/8/9/10
- iPhone +∞
- iPhone为何如此受欢迎?
+ 外观优雅简洁,机身轻薄
+ 用户体验极佳,操作简单,让用户感受到从未有过的爽
+ 软件种类丰富、高质量
+ 性能极佳,支持众多大型3D游戏
+ ... ...
- 如何证明?
+ iPhone6 plus首日全球预定量 1600万台 (iPhone5,5c首周900万台,三星的galaxy s5 25天卖了1000万台)
+ iPhone6,plus国内情况: 6小时预约破200万,24小时破400万 两次打破iPhone预约量记录
##2.iPad 发展史
- iPad1
+ 2010年发布
+ A4单核处理器,9.7英寸,1024x768像素分辨率
- iPad2
+ 2011年发布
+ A5双核处理器,9.7英寸,1024x768像素分辨率
+ **前置摄像头:30万像素,后置摄像头:70万像素**
- iPad3(The NewiPad )
+ 2012年发布
+ **A5X双核处理器,9.7英寸Retina显示屏,2048x1536像素分辨率**
+ **前置摄像头:30万像素,后置摄像头:500万像素**
- iPad Air
+ 2013年发布
+ A7双核处理器,9.7英寸Retina显示屏,2048x1536像素分辨率
+ **前置摄像头:120万像素,后置摄像头:500万像素**
- iPad Air2
+ 2014年发布
+ A8X 三核处理器,9.7英寸Retina显示屏,2048x1536像素分辨率
+ **前置摄像头:120万像素,后置摄像头:800万像素**
+ **配备指纹解锁**
##3.iPad mini 发展史
- iPad mini
+ 2012年发布
+ A5双核处理器,7.9英寸显示屏,1024x768像素分辨率
+ 前置摄像头:120万像素,后置摄像头:500万像素
- iPad mini2

+ 2013年发布
+ **A7双核处理器,7.9英寸Retina显示屏,2048x1536像素分辨率**
+ 前置摄像头:120万像素,后置摄像头:500万像素
- iPad mini3
+ 2014发布
+ 尺寸: 7.9英寸分辨率: 2048x1536核心数: 双核心处理器型号: 苹果 A7系统内存:
+ 前置摄像头:120万像素,后置摄像头:500万像素
+ **配备指纹解锁**
- iPod Touch是一台没有电话服务功能的iPhone
+ 可以使用wifi接入无线网络,拥有和iPhone一样的上网体验-
+ 天朝有一种很神奇的东西叫做苹果皮,通过苹果皮可以实现打电话和短信功能
+ 已经出到iPod Touch5版本了
- Apple TV由苹果公司推出的一款高清电视机顶盒产品,用户可以通过Apple TV在线收看电视 节目,也可以通过Airplay功能,将iPad、iPhone、iPod和PC中的照片、视频和音乐通过传 输到电视上进行播放。目前,中国大陆不在Apple TV销售范围。
> - 乔布斯并不是PC(电脑)的发明者,但是苹果电脑却使人眼睛发光
> - 他也没有发明MP3,但iPod却风靡世界
> - 他以前没有做过手机,但iPhone将诺基亚、摩托罗拉打得落花流水
> - 在乔布斯之前许多人做平板电脑失败了,但iPad却激发了消费者的狂热
##1.什么是iOS ?
- iOS是一款由苹果公司开发的操作系统(OS是Operating System的简称),就像平时在电脑上用的Windows XP、Windows 7,都是操作系统
- 那什么是操作系统呢?
+ 操作系统其实是一种软件,是直接运行在硬件(电脑、手机等)上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行
+ 操作系统安装在什么地方?
+ 软件安装在什么地方?
>+ 用户打开某个应用软件,在软件的使用过程中,这个软件会不断地跟底层的操作系统进行交互,接着操作系统会控制硬件去做一些事情来满足用户的需求
>+ 比如:当我们打开手机上的一个照相机软件,按下屏幕上的拍照按钮时,照相机软件会通知操作系统“喂,我需要拍照!”,接着操作系统就会控制手机上的摄像头进行聚焦、拍照
>+ 操作系统可以看作用户与硬件的接口、桥梁,它为应用软件和用户提供了控制、访问硬件的手段
- iOS与Win7等操作系统的差异?
+XP、Win7是PC操作系统,也就是运行在电脑上的操作系统
+ iOS是手持设备操作系统,也就是运行在手机上的操作系统。目前搭载这款操作系统的设备有: iPhone、iPad、iPodtouch、iPad mini、Apple TV、iWatch
+ 在iPad等设备出现之前,当时只有iPhone搭载了这款操作系统,称为“iPhone OS”,后来 iPad等设备也搭载了这款操作系统,改名为“iOS”
##2.什么是iOS开发 ?
-iOS开发就是开发运行在搭载iOS系统上的应用或者游戏软件,比如手机QQ、微博或者游戏。说白了,就是开发手机软件。
- iOS开发可以归类到“移动开发”(手机开发)领域
- 从事iOS开发的人员,可以称之为“iOS软件攻城狮”或“iOS程序猿(媛)”
##3.主流操作系统
- 目前应用在手机上的操作系统主要有:iOS 、Android(安卓)、BlackBerry(黑莓)OS、Windows Phone、Symbian(塞班)
##4.学习iOS开发的准备 ?
- 积极思考、积极动手、能吃苦、培养兴趣
- 英文水平:不限
- 专业:不限
- 编程语言:C语言、Objective-C、Swift、C++(可选)
- 开发工具:Xcode(Xcode6及以上)
- 电脑系统:MacOS X(OS X10.10及以上)
- 真机设备:iPhone、iPad等(可选)
- iOS证书:调试证书(可选)、发布证书(可选)
# 开发环境配置
##本小节知识点:
1. Xcode开发工具介绍
2. Xcode下载、安装
2. Xcode界面布局
3. Xcode常见的快捷键
##1.Xcode开发工具介绍
- Xcode是苹果公司向开发人员提供的集成开发环境(非开源),用于开发Mac OS X,iOS的应用程序。其运行于苹果公司的Mac操作系统下。
- 不管你用C、Objective-C、Swift、C++编写程序,在AppleScript里编写脚本,还是试图从另一个奇妙的工具中转移编码,你会发现 Xcode 编译速度极快。每次操作都很快速和轻松。
##2.Xcode下载、安装
- Xcode下载地址
:https://developer.apple.com/xcode/
- 安装
+ 方式1:通过AppStore直接获取
+ 方式2:下载dmg文件
* 双击dmg文件
* 将左边的Xcode6-Beta文件拖拽到右边的Applications文件夹中,开始将文件拷贝到应用 程序.
* 上图进度条结束,就表示安装完成,可以在 Finder-->应用程序中找到
* > 注意:在Windows中,软件一般都自带安装和卸载程序,只有一些绿色软件才可以不安装直接使用,不过在Mac OS当中,所有软件都是绿色软件,只需把映像文件中的软件图标拖放 到应用程序图标上就行了,“安装”就是一个简单的复制过程!
##3.Xcode界面布局
+ Toolbar:该区域可以选择你的方案和目的,运行你的程序,以及通用接口布局之间进行切换。
+ Navigation Area: 这里概括你的项目,符号,错误和导航。
+ Editing Area:这里是你所有魔法发生区域。包括顶端视图的附件。
+ Utility Area:包括检测和库文件。
+ Debugging Area:包括编译结果和变量监测。
##4.Xcode常见的快捷键
- 在项目工作中,你每天都要和这些视图互动,所有这些视图在Xode中都是必不可少的。
+ Command (⌘):用来导航,主要用来控制导航区域。
+ Alt (⎇): 控制右边的辅助编辑器或者其他实用的编辑器。
+ Control:跳转栏和顶部编辑栏区域的交互。
|组合键|功能|
|Command 1~8 |用来跳转导航栏|
|Command 0 |用来关闭导航区域|
|Command Alt 1~6 |用来跳转栏工具栏|
|Command Alt 0 |用来关闭工具栏|
|Control CommandAlt 1~4 |用来跳转库文件|
|Control 1~6 |用来展开跳转栏标签|
|组合键|功能|
|--|--|
|Command + Enter:|显示标准当窗口编辑视图|
|Command + Alt +Enter: |打开助理编辑器|
|Command + AltShift + Enter: |打开版本控制编辑器|
|Command + Shift +Y|打开或者关闭调试区域|
- 其它快捷键
|组合键|功能|
|--|--|
|Command + R|运行程序|
|Command + .|停止程序|
|Command + Control+ 上/下箭头键|切换头文件和m.文件|
|Command + Control+ 左/右箭头|打开上一个/下一个历史文件|
|Command + Option+ ]/[| 上下移动代码|
|Command + ]/[| 左右移动代码|
|Command + Shift +n|新建项目|
|Command + n|新建文件|
|Command + Shift +o|快速查找文件|
|Command + Shift +j|快速将文件聚焦到编辑器
|Command + Option+ 左/右箭头| 折叠打开某一段代码|
|Command + Option+ Shift + 左/右箭| 折叠打开当前文件所有代码 |
|Command + Shift +k|清理缓存|
|Command + \| 添加删除断点|
# C语言
C语言历史
- C语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX以前主要是用汇编语言写的,它奠定了操作系统的基础)
- 随着UNIX操作系统的成功,C语言也得到了大幅度地推广,被先后使用到大、中、小、微型主机上,至今还是世界上最流行、使用最广泛的高级程序设计语言之一
- C语言是一门面向过程的语言,非面向对象的语言
- C语言版本
+ 1983年美国国家标准局(American National Standards Institute,简称ANSI)成立了一个委员会,开始制定C语言标准的工作
+ 1989年C语言标准被批准,这个版本的C语言标准通常被称为ANSI C
+ 1999年,国际标准化组织ISO又对C语言标准进行修订,在基本保留原C语言特征的基础上,针对应该的需要,增加了一些功能,命名为C99
+ 2011年12月8日,ISO正式公布C语言新的国际标准草案:C11
想了解更多可以参考 [C语言发展史]:
(http://wenku.baidu.com/link?url=W7b-TFTW96N-ABKoOgzUHUnLEWcoacVPb21Z1FzTSMFAnwSQBQdve-EOIyHGoZG04lCmpwRyDCyAIw9rzS85Eh0JLvF6-sdHWsk8fU5NgFa)
1. C语言的发展现状
2. C语言学习中的重难点
##1.C语言的发展现状
- C语言在计算机编程语言中排名第一
+ [编程语言排行榜查看]
(http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html)
##2.C语言学习中的重难点
- 运算符:自增、自减运算符(`重点`)
- 进制:各种进制转换、原码、反码、补码
- 数组:一维数组(`重点`)、二位数组、多维数组
- 循环:多重循环的嵌套、排序、查找(`重点`)
- 函数:递归函数、递归调用
- 指针:一级指针(`重点`)、多级指针、指针和数组、函数、结构体之间的关系
- 内存管理:C语言的内存管理问题、内存泄露、野指针
- 有参宏及条件编译(`重点`)
- 多文件开发:多文件编译、多文件开发(`重点中的重点`)
##3.C语言特点
- 丰富的运算符
- 丰富的数据类型
- 可以直接操作硬件
- 高效的目标代码
- 可移植性好
# 第一个C语言程序
1. 编写C语言程序用什么工具?
2. C语言“Hello World”
3. 【掌握】源程序分析
##1.编写C语言程序用什么工具?
- 文本编辑器
- UltraEdit
- Vim
- **Xcode**
##2.C语言“Hello World”
- 新建程序
- C语言源程序组成
+ C语言中,程序由"函数"构成,每个函数有自己的功能
+ 一个程序有且只有一个主函数
+ 如果一个程序没有主函数,则这个程序不具备运行能力
+ 函数都是只有在调用的时候才会去执行的,主函数有系统调用
+ 主函数的格式必须按照规范写
- 程序代码
#include
int main(int argc,const char * argv[]) {
// insert code here...
printf("Hello, World!\n");
return 0;
}
##3.源程序分析
- 1.
#include
+ 告诉系统printf函数在哪
- 2.
int main() {
printf("Hello, World!\n");
return 0;
}
+ main 函数的名称
*一个程序只能有一个main函数/主函数
* C程序的入口是main函数
+ (int argc, const char * argv[]) 函数接受的参数
* int argc, const char * argv[] 可以没有
+ return 0; 函数返回值
* 可以理解为人买东西, 例如: 希希(main)我给你10快钱(int argc, constchar * argv[])你给我一张光盘(int)
+ printf("Hello, World!\n"); 调用系统的输出函数, 接受一个参数"Hello,World!\n"
* 可以理解为光盘的内容
# 源程序分析
1.如何运行程序
2. main函数其它写法
##1.如何运行程序
- 利用Xcode编译后在终端运行
- 直接利用Xcode运行程序
-执行流程
+ 源代码:程序员自己写代码,.c是C语言的源代码文件
+ 编译:把源代码翻译成0、1,生成一个.o目标文件
+ 链接:把目标文件和库函数进行整合生成一个.out可执行文件
##2.main函数其它写法
int main() {
printf("Hello, World!\n");
return 0;
}
int main() {
printf("Hello, World!\n");
}
main() {
printf("Hello, World!\n");
}
>+ 语法错误:编译器会直接报错
+ 逻辑错误:没有语法错误,只不过运行结果不正确