原创 令你極度舒適的Swift集合類高階函數

在Swift的集合類型中,有許多十分便捷的函數。相比於Objective-C,這些高階函數會引起你的極度舒適。因爲在Swift的許多函數中引入了閉包元素,這就直接造就了它的靈活性,簡直就是極致的便捷。 下面就來對Swift集合類中

原创 可變參數、不定參數(va_list、va_start、va_arg、va_end)

可變參數、不定參數是什麼 我這裏所說的可變參數或不定參數是指, 方法中的某個形式參數可以接收多個參數(不確定個數的參數)。就比如, 下面的一些系統的方法: [NSArray arrayWithObjects:@"first", @

原创 Swift 之訪問權限

訪問權限級別 Swift 爲代碼的實體提供個五個不同的訪問級別, 分別是open、public、internal、fileprivate、private。這些訪問級別和定義實體的源文件相關,並且也和源文件所屬的模塊相關。 關於訪問

原创 +load和+initialize方法的探究

前言 在OC中, 根類NSObject或其子類被加載和初始化的時候,會觸發一些方法,可以在適當的情況下做一些定製處理。其實, 這正是對應着load和initialize方法。 + (void)load; + (void)initi

原创 問題: Mac外聯硬盤不能更改“-”中的一個或多個項目,因爲它們正在使用中

問題 在Mac中, 外聯移動硬盤或 U盤是 Windows 系統下的 NTFS 分區格式,而 Mac 系統原生是不支持這種格式的。而且很多時候還會產生一些其他的問題, 比如下面這個: 這是第二個文件是灰色的, 當對它進行操作時,

原创 SwiftTips之Language&API

繼令你極度舒適的Swift集合類高階函數之後,把很久之前Swift知識進行了梳理並總結成文。這些Swift知識點大多是一些細節,容易忽略但使用效果又極佳,其中包括語言基礎、內存、指針、OC差異、優雅奇點、開發環境等方面。其中包含一

原创 高效 OC開發之系統框架

㊼ 熟悉系統框架 將一系列代碼封裝爲動態庫(dynamic library),並在其中放入描述其接口的頭文件,這樣做出來的東西就叫框架。有時爲iOS平臺構建的第三方框架所使用的是靜態庫(static library),這是因爲iO

原创 高效 OC開發之Block和GCD

㊲ 理解"塊"的概念 block和函數類似, 只不過是直接定義在另一個函數裏的, 和定義它的那個函數共享同一個範圍內的東西。block可以實現閉包, 有些人也稱它作塊。而且, iOS多線程的核心就是block和GCD(Grand

原创 高效 OC開發之協議與分類

㉓ 通過委託與數據源協議進行對象間通信 代理模式/委託模式 對象之間經常需要相互通信, 而通信方式有很多種。 Objective-C開發者廣泛使用一種名叫委託模式(Delegate pattern)的編程設計模式來實現對象間的通信

原创 高效 OC開發之內存管理

㉙ 理解引用計數 Objective-C語言通過引用計數來管理內存。在iOS4及之前都是手動管理內存(Manual Reference Counting, MRC), 而從iOS5開始, 就支持自動引用計數(Automatic R

原创 以太坊錢包 Trust項目解讀之架構和流程

以太坊錢包 Trust項目解讀之架構和流程 由Trust Wallet理解以太坊錢包管理和智能合約 前言 由於前陣子工作涉及到區塊鏈方面的業務, 再加上自己對技術的熱忱, 本人也是不斷地學(惡)習(補)這方面的知識。在 gith

原创 Swift基礎知識碎片

1.函數的可變參數 同一個方法中只能有一個可變參數,而且不限制可變參數在所有參數中的位置。在OC中可變參數只能作爲方法中參數的最後一個。 func sum(input: Int...) -> Int { return in

原创 Swift關鍵字總結下篇

Swift關鍵字總結上篇 Swift關鍵字總結下篇 Swift中有多少關鍵字? 在Swift官方文檔的詞彙結構中, 有非常多的關鍵字, 它們被用於聲明中、語句中、表達式中、類中、模式中, 還有以數字符號#開頭的關鍵字, 以及特定

原创 問題: Header Search Paths 與 User Header Search Paths 的區別

分析 在Xcode->Target->BuildSettings中, 有兩個設置一個是User Header Search Paths, 一個是 Header Search Paths. 其實還有一個廢棄的Always Searc

原创 探究UIScrollView及其子類佈局和適配的影響因素

前言 很久之前寫過兩篇文章, 都是關於適配佈局的, 分別是iOS6與iOS7屏幕適配 edgesForExtendedLayout和影響屏幕適配的因素及tableview的ContentSize不正確的問題。當然也歡迎大家先看下這