Day01 初探 iOS

前言

目前担任Android/Flutter Developer,从Android 开发出生,这一年多来开始接触Flutter,关於Flutter 的介绍可以参考之前的文章从零开始的Flutter世界,简单来说就是Google推行的跨平台开发框架,目的是为了能够同时开发Android以及iOS。
总体而言在画面设计上皆可透过Flutter开发,但功能上还是会有原生开发的需求,所以需要学习一点iOS,希望能藉由这次的铁人赛学习和分享我的心得。

接下来这30天的规划大概会有以下几个重点:

  • UIKit(App Delegate & Scene Delegate、Storyboard 等等)
  • SwiftUI(Life Cycle、数据流)
  • Combine
  • URLSession
  • Core Data

那有兴趣的朋友们记得准备好Mac,并安装好Xcode,接着我们先来简单的介绍一下iOS的背景:
iOS开发需要使用到Xcode(为iOS的IDE),语言上可以使用objective-C以及swift,以下内容主要使用swift,并不会放心力在介绍程序语言身上,有需要的朋友建议先去学习一下

主要的框架:
在2019 WWDC 大会上,Apple 发表了SwiftUI,有别於从 Xcode 诞生就一直存在的UIKit,只要在 Xcode 11 以上以及 iOS 13 以上就可以选择用SwiftUI 来当作专案的User Interface,而从2020 WWDC 大会上,更释出了Xcode 12,在这个版本上创建新的 SwiftUI 专案时,视窗在初始配置有一个改变,就是多了 Life Cycle 选单,可以选择用之前的UIKit App Delegate 或者是SwiftUI App来处理 App 的生命周期及其各种状态

看到这边,就一个刚要学iOS 的我来说,心里觉得很累,感觉势必需要了解其中各个差异以及运作方式,毕竟之後遇到的问题或是参考文件每一个版本种类都有可能,而其中可否兼容,如何兼容也是需要理解的,所以接下来会先对其依依介绍

以下文章范例皆使用Xcode 12

第一天先介绍一下背景,作为我们迈向iOS的第一步,记得安装完需要的工具(Xcode)


<<:  我想用 AJAX,但是...

>>:  [Day01]我要成为稽核大师

How to fix Gmail not receiving emails on iPhone?

Are you encountering Gmail not receiving emails is...

30-16 之 DataSource Layer - RowDataGateway

这篇文章我们将说来谈谈《 Patterns of Enterprise Application Ar...

Day26 Let's ODOO: ODOO Studio

今天来介绍Odoo studio,对於程序苦手或非程序人员,运用Odoo studio可以直接透过见...

Day6 输入框介绍

看完上一篇的输入,今天来介绍不一样表单元件 Input text Textarea多行文字 Chec...

不只懂 Vue 语法:为何 v-for 的 key 必须是唯一值?v-for 与 v-if 能否同时使用?

问题回答 v-for 的 key 必须是唯一值,才可以让 Vue 在更新 v-for 所产生的列表时...