Swift設計思想Result<T>與Result<T, E: Error>類型解析
目錄背景知識錯誤類型泛型參數選擇哪個比較好?ResultT,E:Error優點缺點Result結論背景知識CocoaAPI中有很多接受回調的異步方法,比如URLSession的dataTask... ...
swift指針及內存管理內存綁定實例詳解
目錄swiftAPI綁定繞過編譯器檢查-assumingMemoryBound內存轉換-bindMemory臨時改變內存綁定-withMemoryReboundswiftAPI綁定... ...
swift內存管理指針類型使用實例詳解
目錄為什么說指針不安全指針類型原始指針-rawPointer的使用size/stride/alignment的理解情況一情況二泛型指針的使用為什么說指針不安全我們在創建一個對象的時候,是需要在堆上開... ...
Swift使用enum抹平數組元素差異實例詳解
目錄前言業務場景用什么控件使用UIScrollView的分析使用UITableView的分析加工數據總結前言通過Protocol去封裝入參,抹平了入參之間的差異。今天這篇依然圍繞一個我遇到的業務場景,... ...
Swift enum枚舉類型使用詳解
目錄前言AFErrorResultOptional最后舉一個enum的典型例子總結前言我一直在思考如何去講解Swift中的枚舉類型,它是如此讓人熟悉,不免就讓你跟著編程經驗走,列舉幾個狀態就感覺萬事大... ...
Swift 圖表使用Foudation庫中測量類型詳解
目錄前言定義圖表的數據在圖表中使用測量值設計一個包裝器類型顯示格式化標簽前言在這篇文章中,我們將建立一個條形圖,比較基督城地區自然散步的持續時間。我們將使用今年推出的新的SwiftCharts框架... ...
Swift 并發修改Sendable 閉包實例詳解
目錄前言使用Sendable使用泛型和枚舉時的隱式一致性從線程安全的實例中拋出錯誤如何使用Sendable協議要在同一源文件中遵守Sendable的限制如何使用@SendabeleSwift6... ...
Swift 指針底層探索分析
目錄概要1.指針的認識1.1指定類型指針1.2未指定類型指針1.3訪問結構體實例對象2.指針的常見綁定2.1指針與內存空間的綁定(指向)(bindMemory)2.2元組指針類型轉換(假... ...
swiftui開發之padding默認值設置詳解
目錄正文padding的默認值對某個方向設置padding同時對多個方向設置padding對上下左右4個方向的padding進行精確設置總結正文swiftui中的padding用于設置... ...
LeetCode 題解 Swift 有效的完全平方數
目錄題目方法一:使用內置的庫函數思路及解法復雜度分析方法二:暴力思路及解法代碼復雜度分析方法三:二分查找思路及解法細節代碼復雜度分析題目給定一個正整數num,編寫一個函數,如果num是一個完全... ...
LeetCode 刷題 Swift 兩個數組的交集
目錄題目方法一:兩個集合思路及解法代碼復雜度分析方法二:排序+雙指針思路及解法代碼復雜度分析題目給定兩個數組nums1和nums2,返回它們的交集。輸出結果中的每個元素一定是唯一的。... ...
SwiftUI 引導頁界面實現示例
目錄引言頁面分析-元素構成實戰編程-創建項目實戰編程-引導圖片實戰編程-引導文字實戰編程-引導按鈕實戰編程-輪博滾動整體效果-預覽本章小結引言當用戶首次啟用App時,客戶端應用常常會出現一段過渡的Ap... ...
SwiftUI 登錄界面布局實現示例詳解
目錄引言頁面分析-元素構成實戰編程-背景圖片實戰編程-說明文字實戰編程-登錄方式實戰編程-輔助文字本章小結引言為了更好地了解和學習SwiftUI,我們快速學習SwiftUI的三種基本布局:HStack... ...
Swift使用SnapKit模仿Kingfisher第三方擴展優化
目錄正文SnapKit擴展方式簡要思考Kingfisher擴展方式簡要思考自行模仿嘗試最后正文我們平時用swift寫第三方擴展(OC中的分類)時,可能會直接就往擴展里面寫方法,簡單又方便,然而當我們看... ...
判斷 ScrollView List 是否正在滾動詳解
目錄正文方法一:Introspect方案一優點方案一缺點方法二:Runloop方案二優點方案二缺點方法三:PreferenceKey方案三優點方案三缺點IsScrolling總結正文判斷一個可滾動控件... ...
swift語言Codable 用法及原理詳解
目錄CodableCodable的用法JSON和模型的相互轉換解碼(JSONData-Model):編碼(Model-JSONData):Codable支持的數據類型基礎數據類型D... ...
swift語言AutoreleasePool原理及使用場景
目錄使用場景NSAutoreleasePool@autoreleasepool__autoreleasing源碼分析__AtAutoreleasePool結構體AutoreleasePoolPageP... ...
Swift Extension擴展得使用詳細介紹
目錄擴展(Extension)協議與初始化器協議泛型擴展(Extension)1、Swift中的擴展,有點類似于OC中的分類(Category)2、擴展可以為枚舉、結構體、類、協議添加新功能可以添加方... ...
Swift運算符使用方法淺析
目錄溢出運算符(OverflowOperator)運算符重載(OperatorOverload)EquatableComparable自定義運算符(CustomOperator)溢出運算符(O... ...
Swift Access Control訪問控制與斷言詳細介紹
目錄訪問控制(AccessControl)訪問級別的使用準則元組類型泛型類型成員、嵌套類型getter與setter初始化器枚舉類型的case協議擴展將方法賦值給varlet一些補充知識Custo... ...
如何刪掉編程中的 Switch 語句
目錄什么是多重方法?多重方法是什么樣子?多重方法有什么好處?實現一個多重方法庫多重方法是一種有趣的方式,可以幫你擺脫令人討厭的switch。而且,這也有助于提升代碼的可讀性。所以,在決定繼續堅持使用... ...
SwiftUI List在MacOS中的性能優化示例
引言List在iOS中有懶加載的特性,但是在MacOS中會一次性加載完List中的所有的數據。并沒有懶加載的特性。所以在MacOS的List中當數據量巨大時,會存在巨大的性能瓶頸。varbody... ...
Swift繼承Inheritance淺析介紹
目錄繼承(Inheritance)內存結構重寫屬性重寫實例屬性重寫類型屬性屬性觀察器final繼承(Inheritance)1、值類型(枚舉、結構體)不支持繼承,只有類支持繼承2、沒有父類的類,稱為:... ...
Swift初始化方法的使用介紹
目錄初始化初始化器初始化器的相互調用兩段式初始化安全檢查重寫自動繼承初始化初始化器1、類、結構體、枚舉都可以定義初始化器classSize{init(age:Int){}}va... ...
Swift初始化器與可選鏈的使用方法介紹
目錄初始化器required屬性觀察器可失敗初始化器反初始化器(deinit)可選鏈(OptionalChaining)初始化器required用required修飾指定初始化器,表明其所有子類都必... ...