原创 iOS開發系列--C語言之指針

概覽 指針是C語言的精髓,但是很多初學者往往對於指針的概念並不深刻,以至於學完之後隨着時間的推移越來越模糊,感覺指針難以掌握,本文通過簡單的例子試圖將指針解釋清楚,今天的重點有幾個方面: 什麼是指針數組和指針函數指針 什麼是指針 存放

原创 非ARC模式下內存管理總結

如果我們不使用ARC來自動管理內存,那麼則應該記住以下準則: 1.對於臨時對象: a.通過alloc/new/copy獲得的對象,應該在不再使用時釋放該對象(release); b.通過其他任何方法獲得的對象,我們假設該對象的ret

原创 iOS開發系列--並行開發詳解

概覽 大家都知道,在開發過程中應該儘可能減少用戶等待時間,讓程序儘可能快的完成運算。可是無論是哪種語言開發的程序最終往往轉換成彙編語言進而解釋成機器碼來執行。但是機器碼是按順序執行的,一個複雜的多步操作只能一步步按順序逐個執行。改變這

原创 iOS開發系列--Objective-C之類和對象

概述 前面已經簡單介紹過ObjC的基礎知識,讓大家對ObjC有個大致的印象,今天將重點解釋ObjC面向對象的特性。ObjC相對於C語言多了面向對象特性,但是ObjC又沒有其他面嚮對象語言那麼多語法特性,ObjC本身對面向對象進行了精簡

原创 Macbook Pro Safari必須強制退出的問題

因爲之前兩次碰到這個問題,所以記錄下來。 問題主要表現爲:打開系統Safari後,通過command+Q,或者菜單中的退出選項退出Safari時,軟件會進入無響應狀態,必須通過強制關閉來結束程序。與此同時,在運行Safari很短時間後,會

原创 iOS開發系列--C語言之存儲方式和作用域

概述 基本上每種語言都要討論這個話題,C語言也不例外,因爲只有你完全瞭解每個變量或函數存儲方式、作用範圍和銷燬時間纔可能正確的使用這門語言。今天將着重介紹C語言中變量作用範圍、存儲方式、生命週期、作用域和可訪問性。 變量作用範圍存儲方

原创 iOS開發系列—Objective-C之內存管理

概述 我們知道在程序運行過程中要創建大量的對象,和其他高級語言類似,在ObjC中對象時存儲在堆中的,系統並不會自動釋放堆中的內存(注意基本類型是由系統自己管理的,放在棧上)。如果一個對象創建並使用後沒有得到及時釋放那麼就會佔用大量內存

原创 MacBook下疑難雜症診斷攻略

這兩天MacBook Pro一直很扯蛋,開機2分鐘,風扇就開始狂轉,聲音嚇人,但是電腦表面溫度卻相對較低,難道小白髮情了?大冬天的。。。另外還伴隨着一些奇怪的現象,有時候鼠標追隨速度突然變成初始值,很慢很慢,而且網絡連接也會斷開。。。反正

原创 iOS開發系列--Objective-C之KVC、KVO

概述 由於ObjC主要基於Smalltalk進行設計,因此它有很多類似於Ruby、Python的動態特性,例如動態類型、動態加載、動態綁定等。今天我們着重介紹ObjC中的鍵值編碼(KVC)、鍵值監聽(KVO)特性: 鍵值編碼KVC鍵值

原创 property參數strong 、weak、copy 、assign 、retain 、unsafe_unretained 與autoreleasing區別和作用詳解

iOS5中加入了新知識,就是ARC,其實我並不是很喜歡它,因爲習慣了自己管理內存。但是學習還是很有必要的。 在iOS開發過程中,屬性的定義往往與retain, assign, copy有關,我想大家都很熟悉了,在此我也不介紹,網上有很

原创 iOS開發系列--IOS程序開發概覽

概覽 終於到了真正接觸IOS應用程序的時刻了,之前我們花了很多時間去討論C語言、ObjC等知識,對於很多朋友而言開發IOS第一天就想直接看到成果,看到可以運行的IOS程序。但是這裏我想強調一下,前面的知識是你日後開發IOS的基礎,沒有

原创 iOS開發系列--Objective-C之協議、代碼塊、分類

概述 ObjC的語法主要基於smalltalk進行設計的,除了提供常規的面向對象特性外,還增加了很多其他特性,這一節將重點介紹ObjC中一些常用的語法特性。當然這些內容雖然和其他高級語言命名不一樣,但是我們都可以在其中找到他們的影子,

原创 3分鐘開始用JSON

JSON 數據格式解析  和 XML 一樣,JSON 也是基於純文本的數據格式。由於 JSON 天生是爲 JavaScript 準備的,因此,JSON 的數據格式非常簡單,您可以用 JSON 傳輸一個簡單的 String,Numb

原创 理解OAuth 2.0

OAuth是一個關於授權(authorization)的開放網絡標準,在全世界得到廣泛應用,目前的版本是2.0版。 本文對OAuth 2.0的設計思路和運行流程,做一個簡明通俗的解釋,主要參考材料爲RFC 6749。 一、應用場

原创 在 Xcode 7.x 中安裝 Alcatraz

安裝Xcode7.2後,繼續採用官方方法安裝Alcatraz,發現不成功。看了一下Alcatraz的issues,找到了解決方法,同時一定程度解決了Github訪問的問題。 第一步:關閉 Xcode。 第二步:如果你之前安裝過Alca