循環(huán)引用原因 我們都知道,使用Block的時(shí)候不小心就會(huì)造成循環(huán)引用的問(wèn)題,那么為什么會(huì)出現(xiàn)循環(huán)引用呢,本文我們同樣使用前文所有的工具和已經(jīng)得到的原理來(lái)分析這個(gè)問(wèn)題。 ARC...
循環(huán)引用原因 我們都知道,使用Block的時(shí)候不小心就會(huì)造成循環(huán)引用的問(wèn)題,那么為什么會(huì)出現(xiàn)循環(huán)引用呢,本文我們同樣使用前文所有的工具和已經(jīng)得到的原理來(lái)分析這個(gè)問(wèn)題。 ARC...
單例模式 單例模式是我們經(jīng)常使用的一種設(shè)計(jì)模式,它能保證系統(tǒng)中只有一個(gè)實(shí)例。在適當(dāng)?shù)膽?yīng)用場(chǎng)合,單例模式能給我們提供很大的便利,但是如果應(yīng)用不當(dāng),卻是麻煩的根源,有時(shí)候還會(huì)很難...
元素獲取的方法 自動(dòng)化測(cè)試過(guò)程中,如何定位頁(yè)面元素是很多人都會(huì)糾結(jié)的問(wèn)題,只要找到相應(yīng)的元素,其他的事情相對(duì)來(lái)說(shuō)就簡(jiǎn)單很多了。本文主要介紹iOS平臺(tái)下獲取頁(yè)面元素的常用方法,...
Block的三個(gè)類型 在本系列由淺入深(2)我們說(shuō)到Block是一個(gè)對(duì)象,它有三種不同的類型,三個(gè)類型的定義如下: 從字面意思上看,三個(gè)類型的Block分別對(duì)應(yīng)著全局Bloc...
下載app-inspector 終端輸入npm install app-inspector -g如果下載太慢,可以使用命令npm install app-inspector ...
單元測(cè)試測(cè)試什么 對(duì)象一般都具有一定的狀態(tài),我們寫的每一個(gè)方法,要么會(huì)產(chǎn)生一個(gè)或者多個(gè)輸出,要么會(huì)改變一個(gè)或者多個(gè)對(duì)象的狀態(tài),或者兼而有之。如果一個(gè)方法既沒(méi)有輸出,也沒(méi)有改變...
Block可以修改的變量 我們可能都知道,不使用__block關(guān)鍵字,我們不能在Block內(nèi)修改變量的值。但是嚴(yán)格說(shuō)來(lái),只有不使用__block修飾的局部變量是不能在Bloc...
實(shí)際單元測(cè)試場(chǎng)景中,我們可能面對(duì)比較復(fù)雜的狀況: 真實(shí)的對(duì)象很難被創(chuàng)建 真實(shí)的對(duì)象是通過(guò)文件系統(tǒng)、數(shù)據(jù)庫(kù)或者網(wǎng)絡(luò)異步獲取的 真實(shí)的對(duì)象運(yùn)行效率低 真實(shí)的對(duì)象難以模擬,比如網(wǎng)絡(luò)...
蘋果的官方文檔將Block描述為具有C語(yǔ)言級(jí)的語(yǔ)法,同時(shí)有運(yùn)行時(shí)特性的對(duì)象,參見Blocks Programming Topics Introduction。為什么說(shuō)Bloc...
Block訪問(wèn)外部變量 上一篇文章我們使用了一個(gè)最簡(jiǎn)單的Block的例子說(shuō)明Block是一個(gè)對(duì)象,但是我們平時(shí)使用的Block大部分是帶有參數(shù)的,或者是能夠訪問(wèn)到Block外...
![]()
![]()
![]()
Block由淺入深(1):Block的語(yǔ)法曾經(jīng)面試過(guò)一個(gè)iOS開發(fā),讓他寫一個(gè)參數(shù)是int返回值是void的Block聲明,這位同學(xué)思考了一會(huì)兒只能很尷尬的說(shuō)不太會(huì)寫。相信很多iOS開發(fā)者剛剛接觸到Block的時(shí)候,...
曾經(jīng)面試過(guò)一個(gè)iOS開發(fā),讓他寫一個(gè)參數(shù)是int返回值是void的Block聲明,這位同學(xué)思考了一會(huì)兒只能很尷尬的說(shuō)不太會(huì)寫。相信很多iOS開發(fā)者剛剛接觸到Block的時(shí)候,...
不可測(cè)的代碼 假設(shè)我們需要記錄一些日志,而日志的容器有一定的容量,如果日志滿了就無(wú)法記錄了,我們可能會(huì)寫出如下的代碼 存在的問(wèn)題 上面這個(gè)方法是很難單元測(cè)試的,因?yàn)椋?這個(gè)方...
簡(jiǎn)直是教科書系列
單元測(cè)試淺談(二)——Mock和Stub實(shí)際單元測(cè)試場(chǎng)景中,我們可能面對(duì)比較復(fù)雜的狀況: 真實(shí)的對(duì)象很難被創(chuàng)建 真實(shí)的對(duì)象是通過(guò)文件系統(tǒng)、數(shù)據(jù)庫(kù)或者網(wǎng)絡(luò)異步獲取的 真實(shí)的對(duì)象運(yùn)行效率低 真實(shí)的對(duì)象難以模擬,比如網(wǎng)絡(luò)...
下載app-inspector 終端輸入npm install app-inspector -g如果下載太慢,可以使用命令npm install app-inspector ...
1. 安裝brew usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/inst...