天天看點

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述

  首先感謝網易公開課和SwiftV課堂的朋友們辛苦翻譯,這個系列是我學習斯坦福IOS8公開課的個人心得體會和筆記,希望能給大家帶來啟發。

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述

首先我們要知道IOS系統中的結構情況,從貼近硬體的底層到貼近使用者的頂層,分為四個層次:

1.Core OS層在最下層,很多人可能不知道IOS是一個基于UNIX的作業系統,它大量借鑒了Mac os X 的核心部分,Mac OS X我們肯定不會陌生,指令行的使用很好的證明了它是一個基于UNIX的系統。IOS針對移動裝置對電池等硬體進行了系統的優化,但它仍可被看成是一個UNIX系統。這樣在最底層Core OS層就包括了 Sockets(套接字)、permission(權限)等等類似的部分。它靠近底層硬體,保證其正常工作。

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述

2.面向對象層,在這一層中你可以使用大量的面向對象的技術,這層不包括UI,更多地是通過使用面向對象通路硬體或者網絡。它是很大的一層,我們需要很多的時間來學習,因為需要這些原始元件來建立更高的層。

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述

3.第三層是媒體層,比如我們所熟悉的IPEG等靜态圖像、視訊的拍攝和處理、不可思議的音頻架構用于處理3D音效及遊戲等等。

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述

4.我們會在Cocoa touch層上花費大量的時間,這一層包含了我們常用的一些控件,簡單的譬如按鈕、文本框等等,複雜的有浏覽器和地圖,你隻需要拖拽到你的頁面中就可以使用它們的強大功能。

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述

       進行IOS8的開發,我們需要使用Xcode 6,這是一個非常強大的代碼編輯器。語言方面我們有兩種語言可供選擇,一是Objective - c,這門語言已經使用了25-30年,非常的成熟,但是它已經25-30歲了!去年夏天蘋果公司釋出了新語言Swift,你可以用它開發一切IOS的應用,為了它的誕生蘋果公司做了很多努力,Swift吸收了很多已經存在的程式設計語言的優點。它文法簡介、類型安全并且還有類型推斷以及大量特性。

    此外我們需要學習一些架構的知識,UIKit,這是頁面開發的主要架構。Foundation,會在Core Service層經常提到。Core Motion架構用于處理裝置移動、旋轉、陀螺等。coredata架構用于面向對象操作。

    這些内容會在之後講到,首先要講的依舊是MVC,IOS從一開始就使用的是MVC。接下來來關注一下今天的Demo:

【我們都愛Paul Hegarty】斯坦福IOS8公開課個人筆記1 IOS8概述