程序猿的自我修养ios编程技术收集开发技能

网易 iOS 极客班学习笔记

2016-02-14  本文已影响1775人  黄穆斌

iOS 实战开发课程笔记

本贴旨在作为对极客班 《iOS 开发实战》第五期期课程视频重新学习的笔记。
目标是建立一个比较完整的 iOS 开发知识点框架以及快速手册,我想找工作……所以,打结实点基础,你们懂的。
对各个内容的详细研究会在学习完毕后开启新贴深入探究。
简书我不知道怎么添加目录,所以我觉得也许在网易上看会更清晰点……篇幅过长。
这是我的网易博客账号,欢迎各位同学吐槽。
http://blog.csdn.net/mubinhuang/article/details/50649650
该贴仍在不断完善中。

0 导论


0.1 技术支持

0.1.1 苹果技术支持

0.1.2 其他技术支持

0.2 学习方法

0.2.1 方法

0.2.2 参考书

0.2.3 App Programming Guide for

View Controller Programming Guide
View Controller Catalog
View Programming Guide
UIKit User Interface Catalog
Event Handing Guide

Drawing and Printing Guide
Concurrency Programming Guide
Quartz 2D Programming Guide
Core Animation Programming Guide

Network & Internet Starting Point (知道个方向)
Networking Overview (了解个概念)
Data Management Starting Point (知道个方向)

Auto Layout Guide
Scroll View Programming Guide
Table View Programming Guide
Collection View Programming Guide

<br />

1 Hello Word


1.1 创建新工程

1.2 选择工程模板

可以选择多种多样的工程模板,包括 iOS, OS X, watchOS, tvOS 一般选择 iOS -> Single View Application。

1.3 工程信息

1.4 Git 仓库

版本控制
Source Control:Create Git repository on My Mac
后续版本控制有专门篇幅。

1.5 Xcode界面了解

1.6 Storyboard

1.7 模拟器

1.8 真机调试

1.9 App 基本概念

<br />

3 Button - Storyboard 与代码之间联系方式


介绍最常用的 Interface 组件之一 UIButton,以及它的使用方法。
从而介绍 Outlet Action 等概念。

3.1 UIButton

3.2 IBOutlet

其实我自己都看不懂这段在说什么……大概是说 outlet connection 其实是标注了界面与代码之间的关系,然后在程序运行的时候,会通过一系列 runtime 方法调用这种关系,并根据界面模板实例化界面组件,从而生成组件绘制吧。

<br />

4 Image


图片流:界面全部由现成的图片构成。耗内存,但是简便。
代码流:界面全部由代码绘制而成,省内存,适应性高。

4.1 UIImage

4.2 Assert Catalog

<br />

5 第一个 App


5.1 需求分析

5.2 程序设计

平衡设计原则:设计程序时为未来可能的需求做好准备。但是这种办法有好有坏,有时候考虑太多,就会导致当前事情难以完成。如果完全只考虑当前,就可能增加未来重构的次数。中间的度需要靠程序员把握。

5.3 示例代码结构

各个代码模块之间的联系和关系的明确。

5.4 Keynote 课件展示

<br />

6 View Controller


6.1 简单的设计模式介绍

6.2 UIViewController

6.3 View Controller Lifecycle

6.3 多个 View Controller

<br />

7 Storyboard


Storyboard 也是一个 xib 文件,只是它里面不只是放 View,而是放置 Scene.
可以点击 ViewController 然后直接拖出 Segue 到其他 ViewController 当中,从而创建没有组件触发事件的 Segue。

7.1 Storyboard Segue

7.2 多 Storyboard

<br />

8 App Lifecycle


8.1 应用启动

8.2 用户互动

RunLoop Mode: [source] 其实就是事件源。

8.3 AppDelegate

8.4 移动应用的特点。

移动应用的使用会非常的零散,会在各种状态中来回切换。

<br />

9 Navigation


9.1 Navigation Bar

9.2 UINavigationController

9.3 在代码中使用 NavigationController

并不推荐使用代码创建,毕竟用 Storyboard 就很方便了。
setViewControllers:animated: 比较有时机意义,可以让导航不用每次都从 rootViewController 开始。更加灵活。

9.4 自定义导航栏

了解以下各个类的属性,并根据实际要求自定义。
苹果有提供 Customizing UINavigationBar 的代码示例,里面有各种各样的自定义方法。

导航栏标题之上的小字在 Navigation Item -> Prompt 中设置。

<br />
iOS 实战开发课程笔记

本贴旨在作为对极客班 《iOS 开发实战》第五期期课程视频重新学习的笔记。
目标是建立一个比较完整的 iOS 开发知识点框架以及快速手册。
对各个内容的详细研究会开启新贴深入探究。
该贴仍在不断完善中。

0 导论


0.1 技术支持

0.1.1 苹果技术支持

0.1.2 其他技术支持

0.2 学习方法

0.2.1 方法

0.2.2 参考书

0.2.3 App Programming Guide for

View Controller Programming Guide
View Controller Catalog
View Programming Guide
UIKit User Interface Catalog
Event Handing Guide

Drawing and Printing Guide
Concurrency Programming Guide
Quartz 2D Programming Guide
Core Animation Programming Guide

Network & Internet Starting Point (知道个方向)
Networking Overview (了解个概念)
Data Management Starting Point (知道个方向)

Auto Layout Guide
Scroll View Programming Guide
Table View Programming Guide
Collection View Programming Guide

<br />

1 Hello Word


1.1 创建新工程

1.2 选择工程模板

可以选择多种多样的工程模板,包括 iOS, OS X, watchOS, tvOS 一般选择 iOS -> Single View Application。

1.3 工程信息

1.4 Git 仓库

版本控制
Source Control:Create Git repository on My Mac
后续版本控制有专门篇幅。

1.5 Xcode界面了解

1.6 Storyboard

1.7 模拟器

1.8 真机调试

1.9 App 基本概念

<br />

3 Button - Storyboard 与代码之间联系方式


介绍最常用的 Interface 组件之一 UIButton,以及它的使用方法。
从而介绍 Outlet Action 等概念。

3.1 UIButton

3.2 IBOutlet

其实我自己都看不懂这段在说什么……大概是说 outlet connection 其实是标注了界面与代码之间的关系,然后在程序运行的时候,会通过一系列 runtime 方法调用这种关系,并根据界面模板实例化界面组件,从而生成组件绘制吧。

<br />

4 Image


图片流:界面全部由现成的图片构成。耗内存,但是简便。
代码流:界面全部由代码绘制而成,省内存,适应性高。

4.1 UIImage

4.2 Assert Catalog

<br />

5 第一个 App


5.1 需求分析

5.2 程序设计

平衡设计原则:设计程序时为未来可能的需求做好准备。但是这种办法有好有坏,有时候考虑太多,就会导致当前事情难以完成。如果完全只考虑当前,就可能增加未来重构的次数。中间的度需要靠程序员把握。

5.3 示例代码结构

各个代码模块之间的联系和关系的明确。

5.4 Keynote 课件展示

<br />

6 View Controller


6.1 简单的设计模式介绍

6.2 UIViewController

6.3 View Controller Lifecycle

6.3 多个 View Controller

<br />

7 Storyboard


Storyboard 也是一个 xib 文件,只是它里面不只是放 View,而是放置 Scene.
可以点击 ViewController 然后直接拖出 Segue 到其他 ViewController 当中,从而创建没有组件触发事件的 Segue。

7.1 Storyboard Segue

7.2 多 Storyboard

<br />

8 App Lifecycle


8.1 应用启动

8.2 用户互动

RunLoop Mode: [source] 其实就是事件源。

8.3 AppDelegate

8.4 移动应用的特点。

移动应用的使用会非常的零散,会在各种状态中来回切换。

<br />

9 Navigation


9.1 Navigation Bar

9.2 UINavigationController

9.3 在代码中使用 NavigationController

并不推荐使用代码创建,毕竟用 Storyboard 就很方便了。
setViewControllers:animated: 比较有时机意义,可以让导航不用每次都从 rootViewController 开始。更加灵活。

9.4 自定义导航栏

了解以下各个类的属性,并根据实际要求自定义。基本上都是 Storyboard 中的操作,太简单粗暴了无法语言描述。
苹果有提供 Customizing UINavigationBar 的代码示例,里面有各种各样的自定义方法。

导航栏标题之上的小字在 Navigation Item -> Prompt 中设置。

<br />

10 TabBarController


10.1 UITabBarController 的结构

Tab Bar Item 一般不超过五个,否则会被隐藏。

10.2 UITabBarItem

属性对应样式。

10.3 在代码中使用 UITabBarController

记住在设置之时要设置好 ViewController 的 tabBarItem 属性。

10.4 自定义 TabBar

图标的使用请严格按照系统定义来用,否则会让用户混乱。

<br />

11 UITableView


UITableView 是日常开发使用最频繁的组件之一。由于我之前已经做过不少应用,所以听课的时候很多比较简单的东西就没有进行记录了。建议还是要多做几个 Demo 进行练习,并且多看文档。熟悉 UITableViewDataSource 以及 UITableViewDelegate 的各种方法。
如果需要高度定制,还需要了解一下 UIScrollViewDelegate 的方法,UITableViewDelegate 协议也继承自它,所以它的方法也一样有用,这样可以让你的 TableView 更加灵活个性。

11.1 UITableView 的基本使用

datas 是 [[String]] 格式的示例数据。

11.2 UITableViewCell

注意:prepareForSegue 事件触发时,目标 ViewController 还没调用 ViewDidLoad

11.3 UITableViewController

RefreshControl 的使用。

11.4 UITableView 交互

<br />


<br />


<br />

参考资料


知乎:品雪

上一篇 下一篇

猜你喜欢

热点阅读