目前移动端开发市场上引导开发者追求技多不压身,一个全栈开发者至少要懂后台服务器、数据库、Android、web、ios开发等。“一超多强”是指开发者先成为一门技术的专家然后掌握了解多门技术,这是一种好的发展趋势,另外,这种技多不压身我认为当开发者更适合发展成为Leader管理岗位,随着年龄慢慢变大,成家立业后,基层单一码农已晋升之路受到阻碍了,作为项目经理或总监的时候,需要你能够“多才多艺”,才能管理好带领好你的团队。这一篇将掀起 IOS 开发之路,点关注不迷路。
可跳过介绍,直接上手敲代码: IOS 新手入门实现第一个HelloWorld项目
iOS是苹果公司为它的移动设备(iPhone、iPad、iWatch等)开发的移动操作系统。
2007年苹果发布iPhone Runs OS X
2008年更名iPhone OS
2012年WWCD 2012上发布iOS 6
2013年WWCD 2013上发布iOS 7
2014年WWCD 2014上发布iOS 8和Swift
2015年WWCD 2015上发布iOS 9和Watch OS
ios目前流行两种开发语言:Objective-C 和 Swift。前者有C语言基础者上手会容易些;后者Swift是iOS/Mac未来开发的主要语言,无论从编程思想还是从api书写,都赏心悦目,但缺点是没有Objective更稳定,且事实上去面试一些公司都要求的是用 Objective-C,只是把 Swift作为学习语言。
设备 屏幕尺寸 分辨率 坐标点
iPhone 3和3s 3.5英寸 320*480 320*480
iPhone 4和4s(支持Retina) 3.5英寸 640*960 320*480
iPhone 5和5s(支持Retina) 4英寸 640*1136 320*568
iPhone 6 4.7英寸 750*1334 375*667
iPhone 6 Plus 5.5英寸 1080*1920 414*736
iPad 1和2(不支持Retina) 9.7 768*1024 768*1024
iPad 3和4(支持Retina) 9.7 1536*2048 768*1024
iPad Air 9.7 1536*2048 768*1024
iPad Mini(不支持Retina) 7.9 768*1024 768*1024
iPad Mini2(支持Retina) 7.9 1536*2048 768*1024
1、ios系统架构可以分为如图所示的四层,Cocoa Touch框架的地位不言而喻。
Core OS和Core Service提供了底层支持,包括文件访问、网络协议、低级数据类型等。
Media提供了基本绘图和音视频的支持,包括OpenGL、Quartz、Core Audio和Core Animation等。
Cocoa Touch包括了开发使用的大部分API,主要由Foundation(文件访问、网络操作、数据和容器类型)和UIKit(UI控件、控制器等)两个部分构成。在进行App开发时,应该由上到下使用这些技术层次,越上层的API封装得越好,开发越方便,但能自己发挥的东西越少。
2、对比,android系统架构:
Android其本质就是在标准的Linux系统上增加了Java虚拟机Dalvik,并在Dalvik虚拟机上搭建了一个JAVA的application framework,所有的应用程序都是基于JAVA的application framework之上。
也分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。
实现App开发中的用户界面首先要从UIResponder及其子类开始研究,当然整个过程会覆盖整个UIKit框架,比如UIColor(颜色)、UIEvent(事件)、UIFont(字体)、UIGestureRecognizer(手势识别)、UIImage(图像)、UIScreen(屏幕)等诸多内容。
UIView和UIWindow
1、UIWindow和UIView的继承关系
UIWindow是UIView的子类。UIView定义了一个矩形区域以及操作这个矩形区域中内容的编程接口,除此之外UIView还要处理运行时区域中内容的交互行为(绘图、动画和事件处理)。从上面的图中我们也可以看出,我们要使用的控件都是UIView的子类型。视图会按层次结构排列,位于视图层次结构顶端的就是应用窗体。任何应用都有且仅有一个UIWindow对象,UIWindow对象就像一个容器,负责包含应用中的所有视图。应用需要在启动时创建并设置UIWindow对象,然后为其添加其他的视图,就像上面的代码呈现的那样。加入窗口的视图会成为该窗口的子视图。子视图也可以有自己的子视图从而构成一个以UIWindow作为根的视图层次结构(树形结构)。
2、UIView的基本属性和方法
frame属性:设置视图的坐标和尺寸
backgroundColor属性:设置视图的背景色
window属性:视图所在的窗口对象
-addSubview方法:添加子视图
Xcode创建iOS项目
启动Xcode在欢迎页中选择”Create a new Xcode project”。在项目创建向导中选择iOS->Application->Single View Application然后点击下一步。接下来需要设置项目名称、组织名称、组织标识、开发语言(OC或Swift)和设备(iPhone、iPad或Universal)。下一步之后选择项目的位置就可以点击”Create”完成项目创建了。参考我的下一个博文:IOS新手入门第一个HelloWorld项目
熟悉开发工具Xcode
Xcode的上方是工具栏,有很多工具按钮。Xcode的左侧是导航区域,包括:项目导航、符号导航、查询导航、问题导航、测试导航、调试导航、断点导航、报告导航,可以使用Command+1-8的数字键在8种导航之间切换。Xcode的中间是编辑器区域;中间的下面是调试区域。Xcode的右侧上方是检查器(审查)区域;右侧下方是各种库的区域。
Xcode常用功能和快捷键 (*实用)
Command+[ -> 代码块左移
Comamnd+] -> 代码块右移
Tab -> 接受代码自动完成提示
Esc -> 显示代码提示
Command+B -> 编译
Command+R -> 运行
Control+F -> 前移光标
Control+B -> 后移光标
Control+P -> 光标移到上一行
Control+N -> 光标移到下一行
Control+A -> 光标移到行首
Control+E -> 光标移到行尾
Control+T -> 交换光标左右字符
Control+D -> 删除光标右边的字符
Control+K -> 删除本行
Control+L -> 将光标所在位置置于窗口中央
按住Option双击鼠标 -> 搜索文档
Command+Y -> 激活/禁用断电
Command+Control+Y -> 继续运行
AppDelegate与ViewController的作用与区别:
AppDelegate是你整个应用的一个代理。当你应用启动的时候,最先被调用到的就是你AppDelegate中的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法。你可以在这个方法中做些全局初始化。
一般设计准则是尽量保持AppDelegate干净、简洁。
AppDelegate中可以做应用退出后台或从后台返回到前台的一些处理。
ViewController一般作为根视图控制器,把显示相关的都放到这里面去做。
由于Xcode自带的虚拟机不像真机那样有一个可以用手指按的Home键回到主界面的实体按钮,所以需要用到快捷键:
command + shift + h (回到主界面)
command + shift + hh (可滑动清理应用)