Objective-C

Objective-C 核心知識

对于Objective-C这门编程语言,其语言的特殊性随着iOS的流行而被广大程序员所熟知,这是一门古老的语言,其编程思想以及其实现方式都是非常特别与特殊的,但并不妨碍通过深入理解本门语言从而开阔编程眼界与思路

iOS記憶體管理的那些事兒-原理及實現

作者簡介 boyce,餓了麼物流團隊資深iOS開發。曾在格瓦拉等公司從事iOS相關研發工作。 注:本篇文章是《iOS記憶體管理的那些事兒》系列文章的第一部分。稍後我們會持續更新第二部分(開源監測記憶體洩

關於IOS物件的小事的探究

在上一篇文章 一道有意思的iOS面試題 中寫到,Objective-C物件也是一種特殊的結構體。那一部分寫的可能不是很清楚,也不是很易於理解。但是在原文中改動,並增加相關內容又覺得篇幅過於長。所以新開一篇文章

objc_msgSend彙編原始碼分析

引言 Objective-C是通過訊息機制呼叫方法的,編譯器會把所有訊息傳送轉為objc_msgSend方法呼叫。說到objc_msgSend的彙編實現,大多數人會覺的是因為 效能高才用匯編實現 ,幾乎沒

我從寫技術部落格中收穫到了什麼?- J_Knight_

我是 J_Knight_,熟悉我的人都應該知道我是一名剛工作滿3年的非科班 iOS 開發者,而且一直堅持寫技術部落格快有2年半的時間了。 其實從去年開始就一直想分享我寫部落格的心得,但是一直也沒有找到合適

算法系列:演算法的時間複雜度(Objective-C樣例)

用這篇部落格記錄一下學習如何計算時間複雜度的過程。本文會從時間複雜度的定義到具體案例的練習,讓初學者對時間複雜度有個基本印象。 摘自《維基百科》 在 電腦科學 中, 演算法 的 時間複雜度 是一個

【OC底層】AssociatedObject 關聯物件

如何實現給分類“新增成員變數”? 預設情況下,因為分類底層結構的限制,不能新增成員變數到分類中。但可以通過關聯物件來間接實現 關聯物件提供了以下API 1> 新增關聯物件

資料結構系列:Objective-C實現雙鏈表

接續上一篇《資料結構系列:Objective-C實現單鏈表》 雙向連結串列 摘自《雙向連結串列-維基百科,自由的百科全書》 雙向連結串列,又稱為 雙鏈表 ,是 連結串列

Objective-C中的記憶體管理機制

從蘋果的官方文件來看,OC對應用程式的記憶體管理提供了2種方法。 第一種即“manual retain-release”(MRR),手動保留釋放,也可理解為手動引用計數。 第二種,“Automatic

Load和Initialize實現原理

Load和Initialize實現原理 +Load實現原理 +load方法會在 runtime 載入 類 、 分類 時呼叫 每個類、分類的+load,在程式執行過程中 只調用一次 +l

對Link Map File的初步認識

什麼是Link Map File Link Map File中文直譯為連結對映檔案,它是在Xcode生成可執行檔案的同時生成的連結資訊檔案,用於描述可執行檔案的構造部分,包括了程式碼段和資料段的分佈

探索dealloc真諦

動機由來 最近在封裝一個 UITextField 分類的時候遇到了一個問題,大致需求是封裝 UITextField 的若干功能,方便業務方這樣使用: // 限制輸入長度 [_tf ltv_limit

PJPickerView 元件開發總結

今天週日繼續擼碼,繼續完成另一個元件,給之取名為—— PJPickerView ,別以為它真的只是個 View 哦,為了讓它看上去顯得不是太“重”,從而取了這個名字,本質上是個 UIViewControlle

1745978312.8391