![240](https://cdn2.jianshu.io/assets/default_avatar/1-04bbeead395d74921af6a4e8214b4f61.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
獲取設(shè)備的移動(dòng)事件 當(dāng)我們移動(dòng)利耍,晃動(dòng)笔刹,或者傾斜手機(jī)的時(shí)候囱持,這些動(dòng)作都會(huì)被設(shè)備的硬件捕獲。其實(shí)每一個(gè)動(dòng)都都會(huì)在 X, Y, Z 三個(gè)方向上產(chǎn)生速度...
0x01 春節(jié)閑著沒(méi)事(是有多閑)闲擦,就寫(xiě)了個(gè)簡(jiǎn)單的程序慢味,來(lái)爬點(diǎn)笑話看,順帶記錄下寫(xiě)程序的過(guò)程墅冷。第一次接觸爬蟲(chóng)是看了這么一個(gè)帖子贮缕,一個(gè)逗逼,爬取煎...
不少小伙伴們升級(jí)到 macOS Sierra 10.12.1 后在升級(jí)引導(dǎo)界面被坑了一把感昼,就是把桌面和文檔自動(dòng)同步到 iCloud 中,導(dǎo)致消耗...
在日常開(kāi)發(fā)過(guò)程中罐脊,為了提升程序運(yùn)行效率定嗓,以及用戶(hù)體驗(yàn),我們經(jīng)常使用多線程萍桌。在使用多線程的過(guò)程中宵溅,難免會(huì)遇到資源競(jìng)爭(zhēng)問(wèn)題。我們采用鎖的機(jī)制來(lái)確保線...
定義屬性 當(dāng)編譯器碰到屬性聲明的時(shí)候上炎,會(huì)生成和類(lèi)恃逻,類(lèi)別雏搂,協(xié)議相關(guān)的描述性元數(shù)據(jù),在類(lèi)和協(xié)議中寇损,你可以通過(guò)名字來(lái)訪問(wèn)屬性的源數(shù)據(jù)凸郑,你可以通過(guò)使用 ...
類(lèi)型編碼 為了協(xié)助 runtime 系統(tǒng),編譯器將吧參數(shù)和返回值編碼為字符串矛市,并把這個(gè)字符串和方法選擇器關(guān)聯(lián)起來(lái)芙沥。在其他上下文中,這種編碼方案同...
Message Forwarding 給一個(gè)對(duì)象發(fā)消息浊吏,如果這個(gè)對(duì)象不處理的話而昨,那么將會(huì)產(chǎn)生一個(gè)錯(cuò)誤。但是在拋出錯(cuò)誤之前找田,runtime 系統(tǒng)給...
動(dòng)態(tài)方法解析 這一章解釋了怎樣動(dòng)態(tài)的提供一個(gè)方法的實(shí)現(xiàn)歌憨。 動(dòng)態(tài)方法解析 當(dāng)你想動(dòng)態(tài)的提供一個(gè)方法的實(shí)現(xiàn)的時(shí)候,用 @dynamic 來(lái)定義一個(gè)屬...
Messaging 這一章講述消息怎樣被轉(zhuǎn)換為 objc_msgSend 方法的調(diào)用墩衙,如何通過(guò)名稱(chēng)引用方法务嫡,如何利用 objc_msgSend,...