swiftui 100天整理100 Days of SwiftUI

100 Days of SwiftUI —— Day 61:Ti

2020-06-10  本文已影响0人  韦弦Zhy

\color{red}{\Huge \mathtt{100 \ \ Days \ of \ SwiftUI \ — \ Day \ 61}}

\underline{\color{orange}{\large \mathit{Time \ for \ Core \ Data}}}

如果我对您说过,您的挑战是构建一个应用程序,该应用程序将从网络中获取数据,将其解码为本地Swift类型,然后使用导航视图进行显示——哦,顺便说一句,应该使用Core Data……好吧,您很可能对挑战不屑一顾。

因此,我做了一个快速的总结:昨天,我让您研究了该应用程序的基础知识,确保您了解JSON,正确获得了Codable支持,仔细考虑了UI等等。

今天,我将要做在任何现实项目中不可避免发生的事情:我将向项目范围添加新功能请求。这有时称为“范围蔓延”,几乎您从事的每个项目都将面对这一问题。这并不意味着预先计划不是一个坏主意——正如温斯顿·丘吉尔(Winston Churchill)所说,“尽管很少计划,但计划的人比不计划的人做得更好。”

因此,我们不遵守计划;我们正在添加一项重要的新功能,该功能将迫使您重新思考构建应用程序的方式,希望使您思考如何构建代码,并为您提供一种应该彻底掌握的技术练习现在熟悉的核心数据。

是的,您今天的工作是扩展您的应用程序,以便它使用Core Data。您的老板只是通过电子邮件发送电子邮件给您,说该应用程序很棒,但是一旦获取了JSON,他们便真的希望它可以脱机工作。这意味着您需要使用Core Data来存储您下载的信息,然后使用Core Data实体来显示您设计的视图——您只需要提取一次数据。

希望最终结果将与我一次给您所有任务一样,但是将它分成这样的两部分希望可以使它看起来更容易实现,同时还使您有机会思考代码结构的良好程度已适应未来的需求变更。

祝好运!

上一篇下一篇

猜你喜欢

热点阅读