原创 Objective-C Block(2)

Block內部定義 我們想要知道Block的實現過程,首先我們深入Block,下圖是對Block的結構是在棧中的結構,圖片來自互聯網。 下面代碼爲對應結構體定義: struct Block_descriptor { un

原创 Objective-C Block

簡介 Block在我們的開發中是非常常見的,比如值得反向傳遞,我們定義一個Block,就可以完成,對我們編程非常的方便,那麼Block到底是從哪裏來的呢?他有哪些注意事項? Block:其實就是一段代碼塊,也稱作閉包。Block是

原创 Objective-C 屬性(2)

上一篇中我們定義屬性使用copy,@property裏面各種各樣的配置到底是什麼呢,我們該如何使用?其中atomic, nonatomic, readonly, readwrite, assign, retain, copy 這些

原创 Objective-C 程序內存分佈

程序在運行中會佔用內存,一般內存中分爲堆區,棧區,代碼區等那麼Objective-C的內存分佈又是什麼樣的呢? 內存分佈 我們查看內存分佈是我們可以通過打印內存地址比如說堆和棧,他們的內存地址相距就非常非常遠,我們通過下面的圖片來

原创 實現家庭WiFi網絡全覆蓋

實現家庭WiFi網絡全覆蓋 春節回家上網,家裏面房間多牆壁比較厚導致只有在一個屋子有信號,本文將通過無線中繼和有線鏈接路由的方式對房間進行WiFi信號放大,還有其中路由器的系統的處理。 先說說家裏面有哪一些硬件條件 路由器

原创 算法 - 歸併排序

介紹 歸併排序:歸併字面意思“迴歸 ”“合併 ”,把有序的兩個或者多個序列合併爲一個序列。該算法是採用分治法(Divide and Conquer)的一個非常典型的應用。那麼什麼是分治法呢? 分治法 分治法:將原問題分解爲幾個規模

原创 查看路由器內寬帶賬號密碼(D-link,TP-Link)

有時候記錄在路由器的寬帶賬號密碼忘記而想要獲取那麼怎麼辦呢? 1、 通過寬帶運營商通過開戶姓名,身份證,手機號和地址等資料修改密碼。對於現在的我臨近春節,客服打了幾次都沒有人接QAQ; 2、 那麼就是通過RouterPassVi

原创 Objective-C 內存管理

前言 前兩篇中Objective-C屬性,在定義屬性時我們使用一系列關鍵字,比如:retain,release,assgin,copy,strong,weak等等,那麼這些關鍵字到底在程序運行起什麼作用呢?下面我們通過內存管理來深

原创 Objective-C NSArray

簡介 NSArray是OC中的數組類,相比較C語言的數組它可以存放不同類型的數據可以動態的添加和刪除數組元素,同時使用的時候也需要注意,NSArray只能存放OC對象,並且是有順序的,不能存放非OC類,比如int、foat、dounule

原创 Objective-C Runtime

介紹 runtime到底是什麼? 也有人說“Objective-C是最優美的語言”,那麼到底是爲什麼? runtime和Objective-C的關係是什麼樣的? runtime有什麼作用,具體能幹什麼? runtime的原理是什麼,什麼是

原创 Objective-C Runtime(4)

在前幾篇中我們主要是介紹的原理部分和一些小的應用,這篇介紹的Runtime中常用的方法交換,首先我們引入以下問題方便我們理解。 1.要觀察每一個控制器的創建和銷燬並在控制檯輸出? 我們先思考一些,現在我們介紹一個簡單的方法交換 實例一:基

原创 Objective-C 多線程

我們介紹多線程首先我們需要一些基礎知識一下我們一一介紹 進程 進程:指在系統中正在運行的一個應用程序,每個進程是獨立,每個京城都運行在其專用受保護的內存空間。這也就是說多進程要比多線程健壯我們之後介紹。 線程 線程:是進程的基本執行單元,

原创 Objective-C Runtime(2)

上一篇Runtime中介紹了類最終都是以C語言結構體的形式展現,那麼C語言中結構體是什麼樣的有哪些特新和作用呢? 結構體 在C語言中結構體是一種集合,比如包含基礎數據類型的int,char ,double等等,可以包含我們想要的數據。結構

原创 iOS開發 cocoaPod和Carthage的安裝與使用

cocoaPod 安裝 在終端中運行 sudo gem install cocoapods 需要輸入密碼,等待一段時間,提示field,我們需要替換鏡像源 gem sources --remove https://rubygems.org

原创 Objective-C Runtime(5)

之前的幾篇中對Runtime的介紹和探究,之後對Runtime的介紹圍繞動態添加屬性,歸解檔和字典模型轉換一些比較常用的操作。 本次我們探索分類中添加屬性。 比如我們在系統的類中添加一個測試屬性,這裏我們使用UILabel這個類中添加一個