@CoderXY 新版已經(jīng)指出watch pod了
Xcode UI界面調(diào)試神器-injectionX(Swift)最近用Swift寫代碼的時(shí)候,使用InjectionIII愣是成功不了,很氣?。?! InjectionIII的使用方式 剛發(fā)現(xiàn)InjectionIII的時(shí)候只使用OC進(jìn)行了測...
@CoderXY 新版已經(jīng)指出watch pod了
Xcode UI界面調(diào)試神器-injectionX(Swift)最近用Swift寫代碼的時(shí)候,使用InjectionIII愣是成功不了,很氣?。?! InjectionIII的使用方式 剛發(fā)現(xiàn)InjectionIII的時(shí)候只使用OC進(jìn)行了測...
理解有誤區(qū)吧,read時(shí)的sync只是保證了read的阻塞,sync阻塞的線程并不一定是write的線程。并不能保證數(shù)據(jù)安全。數(shù)據(jù)安全還是要同一個(gè)queue的barrie操作來保證的。
2019 iOS面試題-----多線程相關(guān)之GCD、死鎖、dispatch_barrier_async、dispatch_group_async、Dispatch Semaphore、dispa...2019 iOS面試題大全---全方面剖析面試 GCD---同步/異步 ,串行/并發(fā) 死鎖 GCD任務(wù)執(zhí)行順序 dispatch_barrier_async dispatch...
這是Objective-C,不是C哈。
__attribute__((constructor))用法解析今天在看ProtocolKit的源碼,看到了這么一行代碼. 主要造成疑惑的是 __attribute__((constructor)),以前看過關(guān)于__attribute__...
presenter是view與model之間的膠水,那應(yīng)該是p中拿model數(shù)據(jù)賦值給View上,為什么要View反過來持有P,這樣View就不純粹了,我理解view要純粹,p可以不純粹。
在iOS 上實(shí)現(xiàn)MVP(附代碼)前言 隨著移動(dòng)互聯(lián)網(wǎng)承載著越來越錯(cuò)綜復(fù)雜的業(yè)務(wù),傳統(tǒng)的MVC已經(jīng)不能完全滿足我們的需求,于是就出現(xiàn)了MVVM、MVP、VIPER等架構(gòu)。其中,最廣為人知的是MVVM,雖說上手...
網(wǎng)絡(luò)請求包含request params組裝,我建議直接把網(wǎng)絡(luò)獨(dú)立出來成一層,讓Service層來完成網(wǎng)絡(luò)請求,序列化成model,block回調(diào)到C中。
論MVVM偽框架結(jié)構(gòu)和MVC中M的實(shí)現(xiàn)機(jī)制目錄 MVC概論【本文】 模型層設(shè)計(jì)方法【請參考:http://www.itdecent.cn/p/fce02188edec】 控制層的設(shè)計(jì)方法【請參考:https://ww...
在M里處理網(wǎng)絡(luò)請求毫無意義,網(wǎng)絡(luò)請求代碼本身并不繁重,繁重的是請求前后的各種賦值和條件判斷。
@無夜之星辰 我也贊同有一個(gè)單獨(dú)的Model類只負(fù)責(zé)數(shù)據(jù)結(jié)構(gòu),業(yè)務(wù)可以參考Java Web里面的Service層來做。Controller與Service層來交互,Service層來取Model中的數(shù)據(jù)進(jìn)行加工。
論MVVM偽框架結(jié)構(gòu)和MVC中M的實(shí)現(xiàn)機(jī)制目錄 MVC概論【本文】 模型層設(shè)計(jì)方法【請參考:http://www.itdecent.cn/p/fce02188edec】 控制層的設(shè)計(jì)方法【請參考:https://ww...
如果對應(yīng)的 section 分區(qū)下 row = 0,這個(gè)方法應(yīng)該會報(bào)錯(cuò)吧
block是封裝了函數(shù)及執(zhí)行上下文環(huán)境的對象。 block聲明及使用語法 block本質(zhì)是一個(gè)對象,那么我們肯定可以聲明block類型 直接聲明一個(gè)block變量(不通過類型...
如何實(shí)現(xiàn)詞法分析?要引入一個(gè)有限狀態(tài)機(jī)的概念。 有限狀態(tài)機(jī) 是表示有限個(gè)狀態(tài)以及在這些狀態(tài)之間的轉(zhuǎn)移和動(dòng)作等行為的數(shù)學(xué)模型。 狀態(tài)存儲關(guān)于過去的信息,就是說:它反映從系統(tǒng)開始...
想要理解一種語言的意思,首先要理解語言中的單詞。詞法分析就是將源程序拆解為一個(gè)個(gè)的單詞,并確定單詞的類型。 識別出單詞后,將其轉(zhuǎn)換成統(tǒng)一的機(jī)內(nèi)表示(token)<種別碼,屬性...
什么是編譯器 CPU只能執(zhí)行較為低級的語言,比如二進(jìn)制代碼或匯編指令,但是手寫匯編及二進(jìn)制代碼效率很低,我們需要用相對更容易讓人接受和理解的語言方式來編寫代碼。所以,現(xiàn)代語言...
當(dāng)我們更改了dataSource(刪除了section或者row),并調(diào)用了[tableview reloadData],但- (NSInteger)tableView:(U...
你編譯的是模擬器的,執(zhí)行要到macOS上。CPU體系不一樣,肯定是不行的咯。
趣探 Mach-O:文件格式分析本文所讀的源碼,可以從這里找到,這是 Mach-O 系列的第一篇 我們的程序想要跑起來,肯定它的可執(zhí)行文件格式要被操作系統(tǒng)所理解,比如 ELF 是 Linux下可執(zhí)行文件的格...
在ARM64操作系統(tǒng)下,一個(gè)指針占用64bit,但其實(shí)存儲一個(gè)對象的地址32就夠了。而且訪問堆內(nèi)存的效率比訪問棧要慢。所以基于性能和內(nèi)存使用效率,蘋果推出了新的內(nèi)存管理的功能...
Class:類Instance:實(shí)例 OC中的對象的實(shí)例本質(zhì)上是 OC中的類本質(zhì)上是 isa_t的結(jié)構(gòu)是 這是一個(gè)聯(lián)合體,可能是cls,也可能是bits,還可能是struct...
輸出是什么? 其實(shí)可以通過clang來將代碼編譯為c++后,可以看到 [super class] 轉(zhuǎn)化成 再參考id objc_msgSendSuper(struct obj...
lipo 是管理Fat File的工具, 可以查看cpu架構(gòu), 提取特定架構(gòu),整合和拆分庫文件。 查看信息,支持的cpu架構(gòu)列表 lipo -info xxxx.framew...