![Swift程式設計[第3單元] 網路程式基礎](https://attach.mobile01.com/attach/202502/mobile01-27b937da7bdca39b8fe6118305505e2f.png)
#1 前言
Apple 新產品終於發布,新版的 MacOS 12 與 iOS/iPadOS 15 預計下週就可以更新,因此差不多可以開始進行下一單元的課程。
原本第3單元的規劃是要寫2D平面繪圖,這是 SwiftUI 另一個重要部分,然後第4單元才會學習網路程式設計,不過因為第2單元學過傑森解碼器(JSON),從JSON延伸到網路比較順理成章,而且網路應用比2D繪圖的效用更大更廣,因此決定第3單元先講網路程式的基礎。
本單元的目標是學習Swift 網路程式基本的指令與應用,預計包括以下主題(但章節還未確定):
* URL & URLSession 物件
* 下載網路圖片
* 用傑森解碼器連接網路API
* 搜尋 iTunes 音樂
* 連接Open API
* async/await 指令
* 錯誤處理
* 撰寫App (iPad版Swift Playgrounds 4.0適用)
本單元設想的對象仍是高中程度的初學者,但需要前兩單元的基礎知識,最好能按部就班從第1單元依次學習,會比較熟悉課程用語與程式風格。所需配備如下:
* 需要配備: Apple iPad 或 Macbook, iMac, Mac mini
* 需要軟體: Apple Swift Playgrounds App
* 作業系統: iPadOS 13 或 macOS 10.15 以上
本單元所有範例,均使用 Swift Playgrounds 作為編寫程式的環境,Swift Playgrounds 這個原廠免費App 可以在Mac 電腦與 iPad 上執行,在本單元後半部,會使用新版 MacOS 12 或 iPadOS 15才支援的 async/await 指令,所以請確認硬體規格(大約2014年以後)可以升級到新版作業系統。
關於範例程式,強烈建議讀者自己一行一行打,而不是整個複製剪貼,打字對於程式設計,就像學英語開口說一樣重要,打字過程會放慢速度,讓你有時間思考,可以注意到重要細節,甚至可能出現錯字漏打,讓你有機會除錯,熟悉正確語法。
程式設計的一些細節,特別是標點符號的使用:為什麼這裡要加句號 .,有些地方要用冒號 : 引號 " " 或括號( ) ,什麼時候要用大括號 { } ,這些都牽涉到程式的邏輯,非常重要,但初學者很容易疏忽或混淆,透過打字細心學習,可以得到正確的觀念。
只要一開始掌握正確的思路與方法,就能慢慢培養出程式設計的素養。
第1單元 Swift 程式語言基礎 https://www.mobile01.com/topicdetail.php?f=482&t=6402999
第2單元 SwiftUI 圖形介面基礎 https://www.mobile01.com/topicdetail.php?f=482&t=6424982
Swift Playgrounds App https://www.apple.com/tw/swift/playgrounds/













































































































