CS193p學(xué)習(xí)筆記(一)

第1講 Logistics, iOS 8 Overview

首先感謝網(wǎng)易公開課和SwiftV課堂的朋友們辛苦翻譯,以下是本人的心得體會和筆記。本人學(xué)習(xí)的是CS193p的iOS8課程,大家有興趣可以到itunes U中下載學(xué)習(xí),實(shí)踐在iOS9下。

當(dāng)前學(xué)習(xí)環(huán)境:

  • Xcode 7.2(7C68)
  • iOS 9.2
  • OS X 10.11.2
  • Swift 2.1

一、本講學(xué)習(xí)內(nèi)容

1、這們課程講的是什么?

為什么我們會在這呢?我們要學(xué)習(xí)iOS開發(fā)呀。呵呵

2、學(xué)習(xí)這門課的前提

你必須有很強(qiáng)的面向?qū)ο缶幊痰慕?jīng)驗(yàn)。

3、iOS概述

講解iOS上有什么。

4、演示

給大家講解一個有數(shù)千行代碼的演示程序(有關(guān)計算器的)

二、我們能從這門課程中學(xué)習(xí)什么?

1、如何編寫一個"酷"的程序

  • 很容易編寫非常復(fù)雜的應(yīng)用程序
  • 程序在你的手機(jī)或背包里
  • 通過AppStore應(yīng)用商店很容易分發(fā)你的程序
  • 精彩的開發(fā)社區(qū)

2、真正的真實(shí)的面向?qū)ο缶幊?/h2>
  • Cocoa Touch的核心是100%的面向?qū)ο?/li>
  • MVC 設(shè)計模式
  • 在開發(fā)平臺中應(yīng)用好多的計算機(jī)科學(xué)概念
    Databases,Graphics,Multimedia,Animation,Networking 等
  • 已經(jīng)有好多的學(xué)生通過AppStore賣出了App

三、預(yù)備知識

1、前期課程

  • 面向?qū)ο缶幊探?jīng)驗(yàn)(必需)
  • CS106A&B(或X)&CS107或CS108或CS110(需要)
    或與Standford課程相近的課程

2、你需要知道下面一些專題:

  • Classic
  • Instance
  • Message
  • Instance
  • Superclass/Subclass
    假如你對以上這些專題都很了解,那么這門課程對你來說并不是太難。

3、程序體驗(yàn)

  • 這是一門偏難的CS課程
  • 假如你以前沒有過任何編程經(jīng)驗(yàn)的話,那這門課程對你來說是一個不小的難題。

四、在iOS內(nèi)部有什么?

首先我們要知道IOS系統(tǒng)中的結(jié)構(gòu)情況,從貼近硬件的底層到貼近用戶的頂層,分為四個層次:

1.Core OS層

Core OS層在最下層,很多人可能不知道IOS是一個基于UNIX的操作系統(tǒng),它大量借鑒了Mac OS X 的內(nèi)核部分。Mac OS X我們肯定不會陌生,命令行的使用很好的證明了它是一個基于UNIX的系統(tǒng)。IOS針對移動設(shè)備,對電池等硬件進(jìn)行了系統(tǒng)的優(yōu)化,但它仍可被看成是一個UNIX系統(tǒng)。這樣在最底層Core OS層就包括了 Sockets(套接字)、permission(權(quán)限)等等類似的部分。它靠近底層硬件,保證其正常工作。

Paste_Image.png

2、Core Services層

面向?qū)ο髮樱谶@一層中你可以使用大量的面向?qū)ο蟮募夹g(shù),這層不包括UI,更多地是通過使用面向?qū)ο笤L問硬件或者網(wǎng)絡(luò)。它是很大的一層,我們需要很多的時間來學(xué)習(xí),因?yàn)樾枰@些原始組件來建立更高的層。

Paste_Image.png

3、Media層

第三層是媒體層,比如我們所熟悉的IPEG等靜態(tài)圖像、視頻的拍攝和處理、不可思議的音頻框架用于處理3D音效及游戲等等。

Paste_Image.png

4、Cocoa Touch層

我們會在Cocoa touch層上花費(fèi)大量的時間,這一層包含了我們常用的一些控件,簡單的譬如按鈕、文本框等等,復(fù)雜的有瀏覽器和地圖,你只需要拖拽到你的storeboard頁面中就可以使用它們的強(qiáng)大功能。

Paste_Image.png

五、開發(fā)平臺控件

在進(jìn)行iOS開發(fā)時,我們需要使用Xcode,這是一個非常強(qiáng)大的代碼編輯器。語言方面我們有兩種語言可供選擇,一是Objective-C,這門語言已經(jīng)使用了2530年,非常的成熟,但是它已經(jīng)2530歲了!去年夏天蘋果公司發(fā)布了新語言Swift,你可以用它開發(fā)一切IOS的應(yīng)用,為了它的誕生蘋果公司做了很多努力,Swift吸收了很多已經(jīng)存在的編程語言的優(yōu)點(diǎn)。它語法簡潔、類型安全并且還有類型推斷以及大量特性。
此外我們需要學(xué)習(xí)一些框架的知識,UIKit,這是頁面開發(fā)的主要框架。Foundation,會在Core Service層經(jīng)常提到。Core Motion框架用于處理設(shè)備移動、旋轉(zhuǎn)、陀螺等。Coredata框架用于面向?qū)ο蟛僮鳌?/p>

Paste_Image.png

六、演示

1、Calculator

  • 課程很吸引人
  • 我們開始我們的Xcode 7和Swift編程
  • 花費(fèi)兩節(jié)課講完這個演示

2、今天在這個演示中講到的專題:

  • 在Xcode7中建立一個項(xiàng)目
  • 建立一個UI(使用Autolayout)
  • iOS模擬器
  • print(使用()來轉(zhuǎn)變成String)
  • 在Swift中定義一個類
  • 用Swift代碼來聯(lián)結(jié)UI上的元素
  • 通過代碼來訪問iOS文檔
  • Optional

3、計算器程序代碼:

  • 新建一個項(xiàng)目為:Calculator 的項(xiàng)目
  • 在窗體上放置1個UILabel,和1個UIButton。
  • 將多個button集中在一個Action里
    • 先將多個button綁定
    • 通過currentTitel獲取button的值
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容