Close Banner

用 Swift 进行 iOS 应用开发入门

构建你的第一个 iPhone 应用

中级

大约 1 个月

6小时每周 (按照自己的节奏)

加入成千上万的全球学员

开始免费课程

加入课程
免费
可享受
课程视频
实战练习与参考项目指导
中级

大约 1 个月

6小时每周 (按照自己的节奏)

加入成千上万的全球学员
观看用 Swift 进行 iOS 应用开发入门课程介绍
观看视频

课程概述

在本课程中,我们将创建一个记录你和朋友间对话的 iPhone 应用,而且让你的声音听起来像花栗鼠或黑武士达斯·维德(Darth Vader,电影《星球大战》中的人物)一样。

本课程将向你介绍如何用 Swift(这是由苹果推出的一款编程语言)进行 iOS 应用开发,迈出成为 iOS 开发者的第一步。

喜欢这门课程?加入“iOS 开发者”纳米学位,点此免费体验

为什么学习这门课程?

本课程可以帮助你成为 iOS 开发者,建立对 iOS 生态系统的基本理解。你还将积累 Swift 的使用经验,这是苹果专为移动开发者创建的编程语言。

先修要求

本课程要求学员之前有编程经验。具体来说,你应该充分理解诸如变量、if 语句、循环、函数和类等编程概念,如果你完全是编程新手,建议先学习我们的计算机科学导论编程基础:Python 课程。

你还需要一台运行 OS X 10.10 或更高版本的 Mac 计算机。

你不需要使用实体设备(即 iPhone 或 iPad)来创建应用。我们会在 Mac 上使用模拟器,它可以在计算机上模拟手机上的电话功能。在课程结尾,我们将还将介绍如何将你开发的应用下载到 iPhone 上(如果你有实体 iOS 设备的话)。

查看使用优达学城的技术要求

你将学习什么内容?

项目

完美音调

构建一个 iPhone 应用来记录你和你的朋友的对话,并让用户可以选择过滤器回放音频,让自己听起来像是花栗鼠或黑武士!

学习计划

第 1 课:简介(1 小时)

在本课中,你需要运行 Xcode,这是用于编写 iOS 应用的环境。你还要学习通过识别重要语法阅读 Swift 编码。

第 2 课:创建应用初始版本(3 小时)

在本课中,你要通过在电话屏幕的精确位置上添加按钮、图像和文本,创建应用的简化版本。你将了解模型-视图-控制器 (MVC) 架构及其在应用开发中的实际应用。

我们将向你介绍以下 iOS 类:

  • UIButton
  • UILabel
  • NSLayoutConstraint
  • UIView
  • UIViewController

我们还将在此课中向你介绍以下框架:

  • UIKit

第 3a 课:应用中两个屏幕间的切换(2 小时)

在本课中,你将学习如何在应用两个屏幕间进行顺畅切换。在学习这节课程的过程中,我们将讨论生命周期视图,包括如何加载不同对象至应用,以及如何处理与内存不足相关的事件。

我们将在此课中向你介绍以下 iOS 类:

  • UINavigationController

第 3b 课:音频播放(4 小时)

在本课中,我们会播放著名电影中的简短音频片段,并更改该电影片段,使其超快速或慢速播放。这时,你还将通过创作公开性博客帖子,论述如何在 Swift 中完成具体任务,从而获得专业开发者的身份。

我们将在此课中向你介绍以下 iOS 类:

  • AVAudioPlayer

我们还将向你介绍如下框架:

  • AVFoundation

第 4a 课:记录音频(2 小时)

在本课中,你要通过学习在应用上记录声音完成收尾工作。这时,我们要探索一个名为 Delegates 的强大的 iOS 概念,它会让应用创建变得容易。

我们将在此课中向你介绍以下 iOS 类:

  • AVAudioRecorder

第 4b 课:添加花栗鼠和黑武士音效(3 小时)

在本课中,我们将学习如何改变在第 4a 课中记录的音频的音调。这种更改会让人的声音听起来像花栗鼠或黑武士。在课程结束时,你将具备在手机上安装应用的专业知识。

我们将在此课中向你介绍以下 iOS 类:

  • AVAudioEngine
  • AVAudioPlayerNode
  • AVAudioUnitTimePitch

最终版本应用提交(1 小时)

在最后一课,你要确保你的应用根据我们规定的标准运作,并且还会有机会向自己的应用添加新的功能。我们还会与你分享包含外部评审人员代码完善建议的代码评审文档。我们会要求你实施这些建议以改进代码,并为上架应用商店做好准备。最后,为修完本课程,你要向优达学城讲师提交应用,以使我们对你的作业进行综合评估。

讲师与合作伙伴

Kunal Chawla

Kunal Chawla

Kunal Chawla 在德克萨斯大学奥斯汀分校获得计算机科学学士学位之后,先做了三年程序员,然后决定转入教育领域。他在中学讲授自然科学课程,参加 Google 的远程学习计划,并在加入优达学城之前,获得了斯坦福大学的教育技术硕士学位。

官方微信公众号二维码

优达学城(Udacity)微信