在知乎上搜索了一些学习建议,先整合一下资料。

学习方法(最核心):多写多练

iOS 开发怎么入门? - 知乎 https://www.zhihu.com/people/Fang. 这里都是干货,就不粘贴了。

2021 年,如何学习 iOS 开发? - 知乎  王禹效 Legolas - 知乎

“在当下及可见的未来中,「MVVM 应用架构 + OOP/Functional 编程范型 + SPM 包管理 + Swift 编程语言 + SwiftUI 描述性视图框架 + Combine 响应式数据关联 + NSPersistentCloudKitConatiner 本地及云端存储」这个组合将会是现在及未来 Apple 独立应用开发的知识基础”......“建议以 SwiftUI + Combine 作为起点。UIKit,Delegate 这些兴趣奠定起来之后若你实在感兴趣再学,而且只需要在必须用到是作为知识补漏就行了。”

现在(2019)入门iOS开发学Swift还是objective-c? - 知乎  王禹效 Legolas - 知乎

建议从 SwiftUI 开始,先玩简单的交互界面。用苹果官方教程:Apple Developer Documentation

接着入门 Swift 语言。用 Hacking with Swift 出的 iOS 教程:​​​​​​​‎Unwrap on the App Store

再接着学习 iOS 理论。用斯坦福的 193P:​​​​​​​Developing iOS 11 Apps with Swift - Free Course by Stanford on iTunes U(CS193p - Developing Apps for iOS)

再再接着,构思一个简单的应用程序并发布到商店。用 Ray Wenderlich 的教程:​​​​​​​How to Submit An App to Apple: From No Account to App Store – Part 1 | raywenderlich.com

为扩充知识面,没事听听博客。用 Swift by Sundell 的博客:​​​​​​​Podcast | Swift by Sundell

在完成这些后,你大概已经很明确自己到底想不想做 iOS 开发了,如果你觉得越来越好玩,继续这些。

研究 Apple Search Ad,推广你之前发布的那个应用程序,用苹果送的 100 美元学学广告搜索优化。​​​​​​​Help - Apple Search Ads

读 HIG 确定自己开发的应用程序视觉上满足需求。​​​​​​​Human Interface Guidelines - Design - Apple Developer

在 WWDC 往年视屏里里研究下你喜欢的主题,可以从设计的视频看起,慢慢转向科技向。​​​​​​​Design - Videos - Apple Developer

不会的,卡住的,去提问或阅读大腿的解答。​​​​​​​Stack Overflow - Where Developers Learn, Share, & Build Careers

实在解决不了的问题,用苹果的 Develoepr TSI 去提问。​​​​​​​开发过程遇到卡壳?不必放弃,请苹果官方帮助你 - 少数派

美术方面,学习 Sketch 做 Mockup,以及整理各种美术素材。​​​​​​​The digital design platform · Sketch

想做更复杂的东西,需要后台数据库,去学 Firebase。​​​​​​​https://firebase.google.com/

如果你想先精进程序基础:SwiftUI 和 Combine 是描述式和响应式编程的核心体现,也是未来 iOS 开发的主要方向。推荐阅读阅读 SwiftUI + Combine 教程 ​​​​​​​ObjC 中国 - SwiftUI 与 Combine 编程

如果你想先精进交互界面:可以考虑手把手跟着教程做一些简单的交互和动画。推荐学习 Design Code 的 SwiftUI 视频教程。​​​​​​​Build an app with SwiftUI Part 1 - Design+Code

作者:王禹效 Legolas
链接:https://www.zhihu.com/question/308188405/answer/984111496
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

iOS开发学习指南(2021更新) - 知乎

1. 学习英语

2. 多用google而非百度

3. Swift入门

学习语法,推荐阅读Swift-Apprentice。Swift Apprentice | raywenderlich.com (全英文版的书)。

语法学完了读UIKit-Appretice。UIKit Apprentice | raywenderlich.com

读完上面两本你对iOS开发大体有一个概念了。如果你是为了找一份iOS开发相关的工作,现在回过头去学oc。 如果公司不要求OC, 做一个了解就行。

4. OC入门

从c语言-oc语法-uikit等,能比较轻松的带你一步步接触到一个完整的应用是如何开发的。可以看培训班的视频

5...接下来是进阶(我可能暂时还不需要?

Effective Objective-C 2.0 (豆瓣)

Objective-C高级编程 (豆瓣)

推荐两本书,必读!必读!而且推荐反复多次阅读。

另外需要不断完善你知识库,非iOS相关书籍的推荐:http权威指南、正则表达式必知必会、mysql必知必会这几本书。这几本书阅读起来比较轻松,而且实用比较强。

除了读书之外,还推荐把UIKit中自己常用类的API仔仔细细的看一遍。详细阅读官方注释!肯定有你没注意到的细节。

再往上进阶就不是我现在要考虑的事情了,先入门再说。

Cyandev - 知乎

《Objective-C 基础教程》和《精通 iOS 开发》

karottc - 知乎

做的2048小游戏的源码:swift-practice/game2048/game2048 at master · karottc/swift-practice · GitHub

零基础如何学习 iOS 开发? - 知乎

OBJC参考书:

Scott Knaster出的《Objective-C基础教程》 (绿柠檬)Objective-C基础教程.zip_免费高速下载|百度网盘-分享无限制  电子版。

Big Nerd Ranch出的《Objective-C编程(第2版)》(推荐华中师大出的版本黄色自行车)

Objc阶段的学习只是带你入门,如果你想进阶,API和UI控件是必须需要学的。一门语言可能会有成千上百的API和UI控件。你不需要把他们全都记住,只需要记住一些常用的即可。

还需要了解iOS开发的底层原理。这一部分的需要掌握的知识点包括:iOS内存管理、iOS运行时机制、RunLoop、多线程等。每一块都需要掌握的很详细。

你还要熟练使用类库并阅读类库源码,例如AFNetWorking、SDWeblmage等,这两个是初学者必看的。

还有超级多的源码推荐:

作者:匿名用户
链接:https://www.zhihu.com/question/22000647/answer/114700565
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

1、懒人笔记iOS客户端

GitHub - liaojinxing/Voice2Note: Voice2Note iOS client source codes.

2、《猿已阅》码农周刊iOS客户端

GitHub - icepy/manong-reading: 《猿已阅》码农周刊 iOS App(放弃维护,推荐大家下载《开发者头条》App)

3、火狐浏览器iOS客户端

GitHub - mozilla/firefox-ios: Firefox for iOS

4、某位大神做的高仿网易新闻项目源码

GitHub - dsxNiubility/SXNews: High imitation Neteasy News. (include list,detail,photoset,weather,feedback)

5、维基百科iOS客户端

GitHub - wikimedia/wikipedia-ios: The official Wikipedia iOS app.

6、品趣iOS客户端

GitHub - ltebean/novel-design: PinQu ios client

7、YoCelsius——一款天气预报的应用

GitHub - YouXianMing/YoCelsius: A weather app that uses animation to give you an at-a-glance look at the weather.

8、密记iOS版——款简单的笔记应用

GitHub - iHTCboy/SecurityNote: 密记iOS版:本应用主要功能是简单笔记。【已经开源,AppStroe可下载】The application of the main function is a simple notes.

免费视频课程 iOS全栈式开发工程师 - 我赢职场官网

iOS开发自学4个月完全没自信,如何提高? - 知乎 bool周 - 知乎

想转iOS开发,建议你先去学C,学好了C学其他语言会很容易上手。如果你有了编程基础,那就直接去学OC和swift吧。对于基础语法,看书就能解决问题。本人学习swift看的是《Swift Programming Language》,学习Objective-C看的是《Objective-C编程全解》。看书的时候边看编敲,这样会掌握牢固点(虽然我没这么做)。如果你是对编程极度敏感的人,基本看一遍书就都解决了。否则你要多看几遍多敲点代码了。

国内一些有名的iOS开发者博客有:
(1)唐巧的博客
(2)​​​​​​​sunnyxx的技术博客
(3)​​​​​​​分类: Swift | 南峰子的技术博客
(4)​​​​​​​OneV's Den

搜索问题的时候尽量用Google。多看看Apple官方文档,多去StackOverflow问答,尽量熟悉阅读英文的东西。国外有很多优质学习资源是没有被译成中文的。

作者:bool周
链接:https://www.zhihu.com/question/33635697/answer/97569555
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

iOS(0)- 知乎iOS学习资料收集相关推荐

  1. VULKAN学习资料收集

    VULKAN学习资料收集 https://github.com/vinjn/awesome-vulkan 张静初 https://zhuanlan.zhihu.com/p/24798656 知乎 ht ...

  2. Spring Cloud 学习资料收集

    导读 关于Spring Cloud 去年开始逐渐多的出现在我的视线中,随着微服务这个词越来越热,我们或多或少的都听说过这个词,我们可以将Spring Cloud 看做是java 中Spring 为我们 ...

  3. JNI学习开始篇 基础知识 数据映射及学习资料收集

    JNI学习开始篇 基础知识 数据映射及学习资料收集 JNI介绍 JNI(Java Native Interface) ,Java本地接口. 用Java去调用其他语言编写的程序,比如C或C++. JNI ...

  4. small rtos51学习资料收集

    small rtos51学习资料收集 虽然说small rtos51可能是最简单的操作系统,是学习操作系统最容易入门的,但是,还是有一定难度. 对于一个只学会了51单片机简单开发的工程师来说,也许会熟 ...

  5. 第一个 iOS 项目开发小结 - SwiftUI 学习资料、开源项目

    第一个 iOS 项目开发小结 SwiftUI 知识点小记 学习资料 开源项目 一些问题记录 项目预览 这段时间由于项目需要,我学习了一段时间 SwiftUI 并单独完成了一个系统的开发,耗时两个星期, ...

  6. ionic+angularJS+iOS混合开发app的学习资料介绍和基本步骤(干货)

    ionic+angularJS+iOS 先安装nodejs.npm.angularJS和ionic 其中nodeJS和npm安装可以到官网下载nodeJS,然后双击安装就好很简单(网址: http:/ ...

  7. Android 学习资料收集 1

    收集整理这份资料灵感来自于 trip_to_iOS, 征得同意引用了该资料的开头描述 收集整理这份资料主要帮助初学者学习 Android 开发, 希望能快速帮助到他们快速入门, 找到适合自己学习资料, ...

  8. Android学习资料收集

    博客 stormzhang 博主是上海薄荷科技开发主管, 他的博客分享了他从编程白痴到自学 Android 一路走过的经验, 写了一篇 Android学习之路 帮助了无数人, 里面还有很多好的文章非常 ...

  9. python学习内容大全_Python学习资料收集

    Python 实用资料收集 一 . Python 常用链接和基本工具 1. Online Python Tutor :首先,隆重推荐这个牛逼的网站,这是我看到的最让人爱不 释手的学习 Python 的 ...

最新文章

  1. linux获取ad用户列表,Powershell小技巧之查询AD用户
  2. 两台服务器之间mysql数据库怎么做同步_mysql数据库占满磁盘导致服务器无法运行...
  3. jQuery原理第三天
  4. jenkins配置ssh免密码登陆
  5. Oracle数据库的创建、数据导入导出
  6. 第一个linux驱动程序
  7. “BASH: FORK: RESOURCE TEMPORARILY UNAVAILABLE”的解决方案
  8. Android现学现用第十二天
  9. 计算机网络上机指导,计算机网络上机指导书.pdf
  10. python如何处理文本文件_python如何选择合适的异常处理方式?
  11. rabbitmq python 发送失败_RabbitMQ Python端发送消息给Java端 接受消息全数字问题
  12. 好友管理系统 Python
  13. 一款给变量自动取名的工具
  14. c语言作业做出金山打字功能,C语言实现简易金山打字通
  15. EMQ优特云-贵阳娃哈哈生产基地物联网能耗监控项目回顾与展望
  16. ssm学习笔记之spring
  17. 第十章 标准模板库STL
  18. SMEC98SP加密芯片方案实例
  19. ddPCR--数字微滴PCR
  20. Java中基本数据类型和引用数据类型存放的位置(栈内存和堆内存)

热门文章

  1. Burp Suite Professional 2023.1 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
  2. 随机组卷python_一种自动组卷算法的实现
  3. SQL SERVER 2019安装教程-最全安装步骤
  4. SAKURA--博客园主题
  5. 合并或注销重复领英帐号,利用领英高效开发客户技巧。置顶收藏
  6. php 苹果支付验证,IOS苹果内购 PHP后端验证票据
  7. springboot定义全局异常处理类GlobalExceptionHandler
  8. Linux python PyQt5调用百度API实现图片文字转换
  9. 中国企业全球领导力的五大缺失
  10. thinkphp5多级控制器及其使用