iOS技術淺談之第一篇 (前言篇)
前言:這是我第一次寫博客,從我進入IT行業學習到現在已經有3年多了,才開始想到要寫博客。這也許是因為人天生的惰性,但我前幾天看到一篇博客講到寫博客的好處,我感觸深刻隨之我下定決心要開始寫博客。寫博客可以讓自己更加充實,也可以幫助到他人,何樂而不為了,希望以后和各位筆友們一起成長。也希望大家對我多多提意見。
好了,該說到正題了,談到iOS首先大家就會想到蘋果公司,我之所以選擇做iOS,就是因為我很崇拜喬布斯. 在他的帶領下iOS有了一片新天地。下面我就簡單概述下iOS系統,首先iOS的系統架構分為四個層次:核心操作系統層(Core OS layer)、核心服務層(Core Services layer)、媒體層(Media layer)和可觸摸層(Cocoa Touch layer)。每層都包含很多系統框架,例如著名的UIKit框架就是在cocoa touch。也就是它讓iOS 具有簡單易用的界面、令人驚嘆的功能,以及超強的穩定性,已經成為現在的最主流的移動操作系統之一。盡管其他競爭對手一直努力地追趕,iOS內置的眾多技術和功能讓 蘋果設備始終保持著遙遙領先的地位。其實了對于iOS來說最好的一點就是它的安全性要高于其它移動操作系統(我個人認為,這是這讓我看好的一點。),然后就是手機的內存的處理機制上也要優越于其它操作系統系統。
iOS系統如此完美功不可沒的當然是Objective-C語言,它是根據C語言所衍生出來的語言,繼承了C語言的特性,是擴充C的面向對象編程語言, 它能夠和C、C++混合編程。
1.動態特性:Object-C具備一些動態特性,包括動態類型、動態綁定、動態加載,也就是Object-C在運行時才能知道一些對象的類型以及所調用的方法。
2.內存管理:OC是使用引用計數原則,現在OC引入ARC(自動引用計數原則)。引用計數有幾個規則,一是誰創建誰釋放,通過alloc、new和copy創建對象, 然后調用release或者autorelease去釋放對象,第二是,除了alloc、new和copy之外創建的對象都是autorelease的, 第三誰retain了,誰釋放。
3.其它語言特性:OC首先是只有單一繼承,沒有多重繼承。屬性訪問,@property加上@synthesize使用后能夠自動生成setter和getter方法。category,中文一般叫做類別,他能夠為現有的類提供新的方法,他將類的實現分散到多個不同的文件或框架中,創建對私有方法的前向引用,向對象添加非正式協議。block語法,塊,他通常代表小段的自包含的代碼片段,因此,他們封裝為可以并行執行的工作單元額外有用,還可以用于在集合中進行遍歷,或者在其他操作 完成時作為回調。塊代替傳統回調函數的意義有兩個:一是他們允許在方法實現的調用中就近寫入代碼,而且塊經常被作為框架中一些方法的參數;二是他們可以訪 問本地變量。OC中有很多類是以NS開頭的,那是cocoa層里面Foundation框架的類庫。
作為開發人員都應該知道,開發一個項目所要用到的開發模式,iOS也不例外,iOS開發中常用到的就是MVC模式,就是把項目分為Model、View和Controller三層進行管理。今天暫時就寫到這,最后附贈一張傳智播客的iOS學習路線圖 ,這一些東西只是iOS開發的冰山一角,哪一東西要做好都要學很多東西,學好最重要的就是你對他的熱情,路漫漫其修遠兮,吾將上下而求索。</span></span></span>
來自:http://blog.csdn.net/by3g123/article/details/44079225