2021 年快过完了,这份清单上的 iOS 技能,学会多少了?
Posted 程序员大咖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021 年快过完了,这份清单上的 iOS 技能,学会多少了?相关的知识,希望对你有一定的参考价值。
👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇
本文由作者在年初写的一份学习清单,列出了作者认为已经很重要或今年变得越来越重要的技术和技能。希望能激励读者们拓宽视野,学习新事物。或者,这份清单可能会激发您更新对以前看过但有一段时间没有注意的事物的了解。年底了,翻出来看看,一年时间,有多少是我们需要继续学习的。
Combine
Apple 在 ios 13 中发布了 Combine 框架。Combine 是 Apple 的函数式响应式编程框架,与 RxSwift 类似,但也有很大不同。Combine 的主要卖点是它是一个第一方框架。这意味着它将由 Apple 维护,并随着 Apple 操作系统的发布而更新,这既有好处,也有缺点。不可否认,Apple 对 Combine 押下重注,值得一看。特别是因为 SwiftUI 大量使用了 Combine。
如果您想了解有关 Combine 的更多信息,我想推荐我的 Practical Combine 一书,以帮助您入门和运行。
SwiftUI
现在谈论 iOS 开发至少不能不提到 SwiftUI。事实上,SwiftUI 在 iOS 领域正迅速变得越来越重要。在这一点上,您不太可能需要了解 SwiftUI 才能在短期内就业。SwiftUI 是一个重要的学习框架,它肯定可以在找工作时提供优势。
如果您想学习 SwiftUI,可以查看一些很好的资源,包括 Apple 的教程、Paul Hudson 的 SwiftUI 100 天、objc.io 的 Thinking in SwiftUI、Daniel Steinberg 的 SwiftUI Kickstart 和 Majid Jabrayilov 的网站。当然,还有很多很多资源。
SwiftUI 是否可以投入生产是目前一个有趣的讨论。当然有一些粗糙的地方,我们正在共同研究如何在 SwiftUI 中正确编写应用程序。您可能想要查看的 SwiftUI 应用程序的流行架构是 pointfree.co 的可组合架构。
XCTest
如果有一件事我们都知道应该做,但经常跳过,不能做,不会做,或者干脆忘记,那就是单元测试。
尽可能地编写测试的动机是,它让我们知道某些事情是有效的,而不是认为在我们的代码库中的其他地方进行更改后它应该仍然有效。除非我们已经测试过,否则我们不能更确定认为某些事情有效。自动化测试确保我们永远不会忘记测试某些功能,而且它比手动测试要快得多。
最重要的是,作为开发人员,测试应该成为我们流程的一部分。测试可帮助我们编写解耦代码,一旦设置好,我们的测试就会一直运行。这比手动测试要快得多,也更严格。
Collection Views
在过去的几年里,Apple 一直在忙于改进 Collection Views。尤其是 iOS 13 的组合集合视图布局和可区分的数据源是对我们使用集合视图的方式的巨大改进。
在 iOS 14 中,苹果进行了更多改进。例如,我们现在使用非常灵活的集合视图列表布局,并且有一种新的方法来注册和出列自定义单元格,称为单元格注册。
如果您不熟悉集合视图,或者您还没有看过新功能,我强烈建议您这样做。Apple 在集合视图方面做得非常出色。请务必查看 Apple 的示例应用程序,以了解自 iOS 13 以来的大部分新功能。
Core Data
尽管 Core Data 不是一个新框架并且其根植于 Objective-C 领域,但它仍然是一项非常相关的技术。Apple 投入了大量资源让 Core Data 更容易和更好地使用,他们甚至在 iOS 13 中增加了与 iCloud 自动同步的功能。
严格来说,这不是 Apple 首次尝试将 iCloud 同步添加到 Core Data,但这无疑是 Apple 在这方面的最佳尝试。
如果您在 Apple 在 iOS 10 中添加 NSPersistentContainer 之前使用过 Core Data 并且不喜欢它,或者如果您被告知避免使用 Core Data,因为它笨重、糟糕、低效或难以使用,我强烈建议您现在可以试试。
Apple 在他们的网站上有很多关于 Core Data 的信息,像 Antoine van der Lee 这样的社区成员写了很多关于 Core Data 的文章。
Instruments
我们都希望我们的应用程序没有内存泄漏、帧丢失和其他对性能不利的特征。而发现性能问题最值得推荐的方法是 Instruments 工具。Instruments 是一个基本工具,在我看来,它值得在每个 iOS 开发人员的工具箱中占有一席之地。
要开始使用 Instruments,您可以查看 Apple 提供的这篇概述 https://developer.apple.com/library/archive/documentation/AnalysisTools/Conceptual/instruments_help-collection/Chapter/Chapter.html。
沟通技巧
作为开发人员,能够有效地进行沟通很重要。无论是口头的,还是书面的。在我看来,我们从来没有改善我们的沟通方式。
这就是为什么,在 2021 年,我认为花一些时间来提高你所谓的“软”技能是件好事。这将帮助您成为更好的团队成员、更有效的沟通者和更好的倾听者。
这些是我认为开发人员经常低估的技能,这就是为什么将其添加到列表中对我来说很重要。(感谢 HeidiPuk 的提示)。
可以帮助您入门的一些资源是来自 Ask Furrow 的演讲 https://vimeo.com/198777217 以及 Sean Allen 和 Mayuko 的采访/播客节目 https://youtu.be/XHG6OBw_ig4。
练习你的沟通技巧,经常写作,确保你倾听别人的意见,并在可能的情况下就你的沟通技巧寻求反馈。如果你经常这样做,我相信到 2021 年底你会成为一个更强大的沟通者。
构建通用应用程序
现在这是一项我个人希望在 2021 年花大量时间研究的技术。在过去的几年里,Apple 一直在向我们展示如何构建在 iOS 和 Mac 上运行的应用程序。首先使用 catalyst,然后使用 SwiftUI。
既然 Apple 的 M1 Mac 已经推出并且它们可以本地运行 iOS 应用程序,我认为是时候开始考虑将 Mac 作为一个平台,我们应该尽可能为其编写应用程序。类似于我们尝试确保我们的大多数(如果不是全部)应用程序在 iPad 和 iPhone 上运行的方式。
ARKit(和 RealityKit)
随着有关 Apple 眼镜的传言越来越强烈,我认为我们最终可能会看到它们。也许在 2021 年,也许更晚。
然而,一旦这些眼镜(不可避免地)发布,我们可能会想要为它们构建应用程序。
我敢打赌,一旦我们能够为眼镜构建应用程序,我们将在 Apple 的增强现实框架之上进行。
在我看来,现在是开始学习 ARKit 并构建一些增强现实体验的最佳时机。特别是如果您有兴趣为传闻中的 Apple 眼镜制作应用程序。
除了 ARKit 的文档和 WWDC 视频之外,Apple 还提供了大量资源来帮助您开始使用增强现实。
Async / Await
虽然此功能尚未在 Swift 中正式可用(该功能已在 Swift 5.5 中实现),但由于其零碎部分仍在 Swift 论坛上进行审查,我认为 async / await 是今年最值得关注的新事物之一。
我不知道哪个 Swift 版本将包含官方的 async/await 版本,但如果您使用的是最新的 Swift 版本,您可以立即试用该功能。
Async/await 将显着改变我们在 Swift 中编写异步代码的方式,我对此感到非常兴奋。
如果您想关注它的发展,您可以在发布所有评论和推介的 Swift 论坛上进行。
总之
这份 2021 年应该关注的 10 件事清单是我认为相关的清单。当然,有些事情可能与您无关。或者,这个列表可能缺少您认为每个人都应该关注的重要技术或技能。
没关系,我只是希望这份清单为您提供了学习(新)事物的方向。我清单上的一些东西已经存在一段时间了,其他的则是全新的。如果你今年没有时间学习全新的东西,那也没关系。按照您自己的节奏学习和调查,专注于让您到达想去的地方。
-End-
最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!
点击👆卡片,关注后回复【面试题
】即可获取
在看点这里好文分享给更多人↓↓
以上是关于2021 年快过完了,这份清单上的 iOS 技能,学会多少了?的主要内容,如果未能解决你的问题,请参考以下文章
猿创征文|2022年快过完了,是时候总结一下那些优秀的 React 组件库