一个月的时间学 iOS 开发
2017-03-26 16:19
225 查看
我非常推荐 Android 开发者学习开发 iOS 应用。这听起来很奇怪,但值得一试,原因是:扩宽知识面可以帮助你在自己的领域中更加深入。
“如果你做了一些事,并且做好了,那就应该去做一些其它美好的事情,不要拖延太久。只是要弄清楚接下来要做什么。”—史蒂夫·乔布斯
不扯远了,回到主题。我为自己写了一个月的计划,然后开始了我的学习之旅。当然所有学习资源都是免费的。
你也可以学习 Objective-C,但我真心推荐你从 Swift 开始。它很友好而且易学。
我最先在苹果官方资源获取学习资源。通读基本概念,然后在 XCode
中着手尝试那些代码。
此外,你可以试试 Udacity
上的 Swift 学习课程。虽然网站上说需要 3 周,但实际可以在几天内完成(甚至几小时)。
我花了一周学习 Swift。如果你有时间,可以去看看下面这几个资源:
Swift 基础演练场
Raywenderlich’s Swift 教程
Swift 中的设计模式
现在来到可视化部分。UIKit 使工作内容在 iOS 上呈现,并与 iOS 设备互动。
我在 Udacity 上搜索免费的 UIKit
基础课程。
起初,我觉得 iOS 自动布局非常奇怪。在开发 Android 应用的时候,我通常在 xml 文件中布局界面,其结果是可以看到的,几乎不需要使用拖放功能。然而 iOS 完全不同。我花了一些时间,通过实践了解自动布局机制之后,我学到了超越常规 Android 设计风格的东西。
此外,在 XCode 中制作屏幕过渡只需要向 Storyboard 中拖入它们的连接,这在 Android 需要一些代码才能实现。
你可以探索其各种不同的特性。
而且,你可以在 iOS
Raywenderlich 页面的“核心概念”中找到更多 iOS UIKit 教程。
熟悉 UIKit 之后,你可以向用户展示数据并从他们那接收数据。
下一步是存在数据,让用户即使在应用关闭后重新打开也能获得这些数据。意思就是把数据保存在用户设备的硬盘中,而不是远程服务器中。
iOS 应用中你有几个选择:
NSUserDefaults:键值对类型,就像 Android 中的 SharePreferences
NSCoding / NSKeyedArchiver:在兼容类和数据持久之间进行序列化并通过 NSUserDefaults 保存到文件系统中
Core Data:iOS 超强大的框架
其它:SQLite、Realm 等
与 Core Data 相比,现在很多 iOS 开发者都更喜欢 Realm。不过我推荐学习 Core Data,因为它是 iOS 官方推出的持久化框架,只要你理解了它的核心结构和实现,就可以举一反三。
我曾经使用过的资源包括:
iOS
数据持久化和 Core Data,来自 Udacity
一些
Core Data 教程,在 Youtube 上
NSCoding/NSKeyedArchiver
文章,来自 Mattt Thompson
我们生活在互联网时代,所以你的应用应该开放并与外界交换信息。现在进入下一课:iOS 网络。在这里学习 iOS 中的 REST API。有一件很重要的事情要记住:这时候你不能使用任何第三方库。我们将使用 iOS 内建的框架来完成这个课程。
将来你有很多机会用到炫酷的网络库,比如 Alamofire,但我们现在应该先学习基本的知识。
推荐的课程和教程:
NSURL
Protocol 教程,来自 Raywenderlich
NSURL
Session 教程,来自 Raywenderlich
基本网络课程,来自 Udacity
“光知道是不够的,我们要应用知识。”—达·芬奇
“如果你做了一些事,并且做好了,那就应该去做一些其它美好的事情,不要拖延太久。只是要弄清楚接下来要做什么。”—史蒂夫·乔布斯
不扯远了,回到主题。我为自己写了一个月的计划,然后开始了我的学习之旅。当然所有学习资源都是免费的。
从 Swift 开始
你也可以学习 Objective-C,但我真心推荐你从 Swift 开始。它很友好而且易学。我最先在苹果官方资源获取学习资源。通读基本概念,然后在 XCode
中着手尝试那些代码。
此外,你可以试试 Udacity
上的 Swift 学习课程。虽然网站上说需要 3 周,但实际可以在几天内完成(甚至几小时)。
我花了一周学习 Swift。如果你有时间,可以去看看下面这几个资源:
Swift 基础演练场
Raywenderlich’s Swift 教程
Swift 中的设计模式
使用 UIKit 绘制应用界面
现在来到可视化部分。UIKit 使工作内容在 iOS 上呈现,并与 iOS 设备互动。我在 Udacity 上搜索免费的 UIKit
基础课程。
起初,我觉得 iOS 自动布局非常奇怪。在开发 Android 应用的时候,我通常在 xml 文件中布局界面,其结果是可以看到的,几乎不需要使用拖放功能。然而 iOS 完全不同。我花了一些时间,通过实践了解自动布局机制之后,我学到了超越常规 Android 设计风格的东西。
此外,在 XCode 中制作屏幕过渡只需要向 Storyboard 中拖入它们的连接,这在 Android 需要一些代码才能实现。
你可以探索其各种不同的特性。
而且,你可以在 iOS
Raywenderlich 页面的“核心概念”中找到更多 iOS UIKit 教程。
理解 iOS 的数据持久化
熟悉 UIKit 之后,你可以向用户展示数据并从他们那接收数据。下一步是存在数据,让用户即使在应用关闭后重新打开也能获得这些数据。意思就是把数据保存在用户设备的硬盘中,而不是远程服务器中。
iOS 应用中你有几个选择:
NSUserDefaults:键值对类型,就像 Android 中的 SharePreferences
NSCoding / NSKeyedArchiver:在兼容类和数据持久之间进行序列化并通过 NSUserDefaults 保存到文件系统中
Core Data:iOS 超强大的框架
其它:SQLite、Realm 等
与 Core Data 相比,现在很多 iOS 开发者都更喜欢 Realm。不过我推荐学习 Core Data,因为它是 iOS 官方推出的持久化框架,只要你理解了它的核心结构和实现,就可以举一反三。
我曾经使用过的资源包括:
iOS
数据持久化和 Core Data,来自 Udacity
一些
Core Data 教程,在 Youtube 上
NSCoding/NSKeyedArchiver
文章,来自 Mattt Thompson
iOS 通过网络与外界接触
我们生活在互联网时代,所以你的应用应该开放并与外界交换信息。现在进入下一课:iOS 网络。在这里学习 iOS 中的 REST API。有一件很重要的事情要记住:这时候你不能使用任何第三方库。我们将使用 iOS 内建的框架来完成这个课程。将来你有很多机会用到炫酷的网络库,比如 Alamofire,但我们现在应该先学习基本的知识。
推荐的课程和教程:
NSURL
Protocol 教程,来自 Raywenderlich
NSURL
Session 教程,来自 Raywenderlich
基本网络课程,来自 Udacity
构建第一个应用
“光知道是不够的,我们要应用知识。”—达·芬奇相关文章推荐
- ios 开发中获得当前时间的 年月日,时分秒
- UIDatePicker 日期/时间选取器(滚轮)—IOS开发
- 【ios开发】自定义Actionsheet实现时间选择器和省市区选择器
- UIDatePicker 日期/时间选取器(滚轮)—IOS开发
- IOS开发笔记-字符串转换为日期时间存在时差问题的处理
- IOS开发基础之──获取时间示例
- ios开发点滴-关于UIDatePicker 时间相差8个小时的问题
- IOS开发之格式化日期时间
- IOS开发之格式化日期时间
- IOS开发之格式化日期时间
- UIDatePicker 日期/时间选取器(滚轮)—IOS开发
- UIDatePicker 日期/时间选取器(滚轮)—IOS开发
- ios开发教程之申请更多后台时间
- iOS开发 当前时间 时间戳 转换
- IOS开发之格式化日期时间
- UIDatePicker 日期/时间选取器(滚轮)—IOS开发
- ios开发之触摸时间处理
- IOS开发之格式化日期时间
- iOS开发:日期与时间的处理
- IOS开发之格式化日期时间(转)