缘起#
Swift 和 typescript 是一门语言,这门语言可以用来开发 iOS 应用、开发 Mac 应用、开发服务端。
因为工作关系和个人兴趣,感觉 swfit 和 kotlin 很有趣,有动力学习相关知识,我的目标是能阅读、编写简单的逻辑、在 ai 的辅助下能完成一些简单功能,并不需要成为专职开发人员。
有了这样的目标,我开始尝试学习 Swift 生态知识。
信息筛选#
我看了 roadmap.sh 上的的 ios 路线图,发现有点看不懂,名词比较多,新领域看到东西有点眼晕。官方文档中文不是特别全。还是舒适区的前端舒服。
快速在视频网站、学习网站上搜索了一些关键词、在百度、谷歌上搜了一些文档中文网站。快速查看,比对筛选了一波,最后确定了几个目标。
- 前期不看英文,看中文,不逐一阅读
- 视频 + 文字结合,随时切换状态,看视频、文字多了会倦怠
- 快速查阅,不求甚解,只求眼熟,技术细节问 ai
最后找了
- 一份系统课程 swift 核心技术与实战
- 一个 swift 语言本身的翻译
- 官方英文文档 https://www.swift.org/getting-started/
- Swift 编程语言作者号称:可能是最用心的翻译了吧
- GPT-4o-mini
- 官方 uikit、swiftUI 不着急看
初步结果#
快速学习和实践了:
- 如何运行 swift:playground 和 xCode 工程,关联 [[如何快速学习和测试 Swift 和 UIKit 代码?]]
- 基本数据结构、常规逻辑判断语法、函数、类和 oop
- 三方依赖管理、引入三方包发起网络请求、JSON 处理
有了这些基础知识,有信心了。重新回看 roadmap。
roadmap#
这里常看常新 https://roadmap.sh/ios
- 选择一个语言:Swift - 看过了
- swift 发展历史、基础知识
- 基本知识
- ios 架构,一些名词 - 没看过
- 核心语言概念
- oop/pop - 看过了,协议组合
- 函数式编程 - 了解一点
- 内存管理没看过
- viewcontroller 生命周期
- 错误处理
- 并发 gcd async/await
- 版本管理 git
- app 组件
- xcode 安装、创建、导航、debug、自动布局等
- uikit - 接下来的核心
- swift ui
- 基础
- 简单 ui 布局相关
- 界面和导航
- ui 设计
- uikit
- swiftui
- 核心动画
- 设计结构
- mvc/mvvm 等
- 响应式编程 combine rxswift
- 模式和技术 patterns and techniques
- 设计模式
- callbacks
- async/await 并发
- storage
- 数据持久化
- json/xml
- 网络
- 异步
- 并发和多线程
- 依赖管理
- cocoapods cathage spm
- 框架和库
- 访问性
- t 通用服务各种 kit
- linting - 代码质量工具
- debugger
- debu 技术
- 测试
- app 分发