- Swift 5從零到精通iOS開發訓練營
- 張益琿編著
- 569字
- 2022-07-27 18:32:12
第5章 函數與閉包技術
所謂科學,包括邏輯和數學在內,都是有關時代的函數,所有科學連同它的理想和成就統統都是如此。
——穆爾
任何復雜的系統都是由許多簡單的系統組合演化而來的,在編程中更是如此,任何復雜的功能都是由一些簡單的功能組合演化而來的。函數是高級語言共有的代碼特性,在數學中,函數是一種特定的算法映射,自變量的改變將引起因變量的改變。在編程中,函數的實質是完成特定功能的代碼塊,只是此代碼塊有一個名稱,開發者可以通過函數名來調用函數完成特定的需求和功能。
Swift語言中提供了十分靈活的方式來創建和調用函數。實際上,在Swift語言中,每個函數都有特定的類型,函數的類型取決于參數和返回值。另外,在Swift語言中函數可以進行嵌套。
閉包的功能與函數類似,其也是有一定功能的代碼塊,在Objective-C語言中,與之相似的語法結構被稱為block結構。閉包與函數有著密不可分的關系:函數是有名稱的功能代碼塊,閉包在大多數情況下是沒有名稱的功能代碼塊,在語法結構上,閉包與函數有著很大的差異。由于對閉包語法的支持,Swift語言更加強大而靈活。本章將向讀者介紹在Swift語言中閉包結構的應用與簡化技巧。
通過本章,你將學習到:
- 函數的創建與調用。
- 函數的類型與嵌套。
- 函數的inout參數。
- 編寫可變參數函數。
- 了解閉包的應用場景及設計思路。
- 對閉包結構進行簡化。
- 特定條件下使用后置閉包。
- 逃逸與非逃逸閉包的應用。
- 自動閉包的應用。
推薦閱讀
- UI設計基礎培訓教程
- Modular Programming with Python
- Visual Basic程序開發(學習筆記)
- 名師講壇:Java微服務架構實戰(SpringBoot+SpringCloud+Docker+RabbitMQ)
- C語言程序設計
- jQuery炫酷應用實例集錦
- The Professional ScrumMaster’s Handbook
- Mastering Akka
- Python Essentials
- OpenCV 3計算機視覺:Python語言實現(原書第2版)
- Python計算機視覺和自然語言處理
- 從0到1:HTML5 Canvas動畫開發
- Java服務端研發知識圖譜
- Node.js核心技術教程
- Java程序設計項目教程(第二版)