iOS开发的学习笔记
引言
之前做過(guò)半年的iOS開發(fā),從完全不懂的移動(dòng)開發(fā)的菜鳥,到完成前端UI開發(fā)的菜鳥,做的一些筆記,希望對(duì)大家有用,也希望這些總結(jié)的東西對(duì)以后會(huì)有作用。
開發(fā)環(huán)境
iOS的系統(tǒng)框架分為四個(gè)層次:
- 核心操作系統(tǒng)層(Core OS):包括內(nèi)存管理、文件系統(tǒng)、電源管理以及一些其他的操作系統(tǒng)任務(wù)??梢灾苯雍陀布O(shè)備進(jìn)行加互。
- 核心服務(wù)層(Core Services):可以通過(guò)它來(lái)訪問(wèn)iOS的一些服務(wù),比如網(wǎng)絡(luò)連接、文件訪問(wèn)、數(shù)據(jù)庫(kù)和用戶定位等。
- 媒體層(Media):通過(guò)它可以在應(yīng)用程序中使用各種媒體文件,進(jìn)行音頻和視頻的錄制,圖形的繪制以及制作基礎(chǔ)的動(dòng)畫效果。
可觸摸層(Cocoa Touch):這一層為應(yīng)用程序開發(fā)提供了各種游泳的框架,并且大部分與用戶界面有關(guān),本質(zhì)上來(lái)說(shuō),它負(fù)責(zé)用戶在iOS設(shè)備上的觸摸交互操作。
開發(fā)語(yǔ)言
Object-C
根據(jù)C語(yǔ)言所衍生出來(lái)的語(yǔ)言,繼承了C語(yǔ)言的特性,是擴(kuò)充C的面向?qū)ο缶幊陶Z(yǔ)言。完全兼容C語(yǔ)言,后綴為.m類型。
swift
簡(jiǎn)介:Swift在天朝譯為“雨燕”,它跟Objective-C一樣,可用于開發(fā)iOS、MAC應(yīng)用程序。蘋果公司從2010年7月開始設(shè)計(jì)Swift語(yǔ)言,耗時(shí)4年打造。蘋果于2014年WWDC(蘋果開發(fā)者大會(huì))發(fā)布的新開發(fā)語(yǔ)言,可與Objective-C*共同運(yùn)行于Mac OS和iOS平臺(tái),用于搭建基于蘋果平臺(tái)的應(yīng)用程序。
特點(diǎn):Swift是一門完全面向?qū)ο蟮恼Z(yǔ)言,它拋棄了C/C++的歷史包袱,就是基本的類型如char、Int、Long等類型都是一個(gè)結(jié)構(gòu)體對(duì)象, 引入在Java、C++、Python中使用的操作符重載、泛型、名字空間、閉包等特性。
本質(zhì)上講:Swift語(yǔ)言是對(duì)OC語(yǔ)言的優(yōu)雅包裝,它的底層還是使用Cocoa Touch,Foundation框架,只是在語(yǔ)言層面上讓開發(fā)變得更簡(jiǎn)單了。
面向?qū)ο?#xff08;OOP):是現(xiàn)代流行的程序設(shè)計(jì)方法,是一種主流的程序設(shè)計(jì)規(guī)范。其基本思想是使用對(duì)象、類、繼承、屬性、方法等基本概念來(lái)進(jìn)行程序設(shè)計(jì),從現(xiàn)實(shí)世界中客觀存在的事物出發(fā)來(lái)構(gòu)建軟件系統(tǒng),并且在系統(tǒng)構(gòu)造中盡可能運(yùn)用人類的自然思維。swift語(yǔ)言中的面向?qū)ο箢愋腿缦?#xff1a;
蘋果公司聲稱新的Swift語(yǔ)言擁有快速、現(xiàn)代、安全、互動(dòng)的新特性,并且性能全部?jī)?yōu)于OC。
swift與OC語(yǔ)言在編程時(shí)的區(qū)別
- 不像 C語(yǔ)言和 OC語(yǔ)言一樣都必須有一個(gè)主函數(shù) main()作為程序入口,swift程序從第一句開始向下順序執(zhí)行。一直到最后。
- 每個(gè)語(yǔ)句結(jié)束后可以不加分號(hào),但是多條語(yǔ)句不能寫在同一行
- 在聲明常量或者變量的時(shí)候直接初始化可以省略其類型,否則需要在變量名稱后跟冒號(hào)加類型。實(shí)際開發(fā)中建議全都加上,以免出現(xiàn)錯(cuò)誤
開發(fā)環(huán)境
軟件環(huán)境:
- 運(yùn)行環(huán)境:iOS(蘋果公司開發(fā)的移動(dòng)操作系統(tǒng));
- 開發(fā)環(huán)境:mac OS Sierra 10.12.1(swift語(yǔ)言開發(fā)最低要求為Mac OS X10.9.3版本以上);
- 開發(fā)工具:Xcode 7.3版本(要求Xcode 6.0以上);
硬件環(huán)境:
- Mac蘋果電腦
開發(fā)流程
開發(fā)者證書
Cocoa框架
Cocoa是創(chuàng)建Mac OS X和iOS程序的原生面向?qū)ο驛PI,為這兩者應(yīng)用提供了編程環(huán)境。 通常稱為“Cocoa框架”,事實(shí)上Cocoa本身是一個(gè)框架的集合,它包含了眾多子框架。
Cocoa中最最核心的有兩個(gè):
Foundation框架:Foundation框架為所有的應(yīng)用程序提供基本系統(tǒng)服務(wù),Foundation框架包含所有和界面顯示無(wú)關(guān)的類。包含:
- 創(chuàng)建和管理集合,比如數(shù)組和字典
- 訪問(wèn)存儲(chǔ)在應(yīng)用程序里的圖片和其它資源
- 創(chuàng)建和管理字符串
- 提交和接收通知
- 創(chuàng)建日期和時(shí)間對(duì)象
- 自動(dòng)發(fā)現(xiàn)IP網(wǎng)絡(luò)上的設(shè)備
- 操作URL流
- 執(zhí)行異步代碼
Application Kit(AppKit)框架(Cocoa Touch中叫UIKit框架):Application Kit 框架包含實(shí)現(xiàn)圖形的、事件驅(qū)動(dòng)的用戶界面需要的所有對(duì)象:窗口、對(duì)話框、按鍵、菜單、 滾動(dòng)條、文本輸入框—-這個(gè)列表還在不斷增加。包含:
- 構(gòu)建和管理你的用戶界面
- 捕獲觸摸和基于移動(dòng)的事件
- 呈現(xiàn)文字和web內(nèi)容
- 優(yōu)化你的多任務(wù)程序
- 創(chuàng)建定制的用戶界面元素
第三方庫(kù)
除了需要核心框架,在APP開發(fā)過(guò)程中還會(huì)用到一些輔助框架,如Alamofire(網(wǎng)絡(luò)請(qǐng)求)、JLToast(動(dòng)態(tài)彈出框)等。
在開發(fā)項(xiàng)目中,需要使用第三方庫(kù),Cocoapods是最有影響力的OS X 和iOS項(xiàng)目依賴管理工具,于2011年發(fā)布,經(jīng)過(guò)多年的發(fā)展,他已經(jīng)非常完善了。Cocoapods支持項(xiàng)目中采用Object-C或者swift語(yǔ)言。
Cocoapods會(huì)將第三方庫(kù)的源代碼編譯為靜態(tài)鏈接庫(kù).a文件或者是動(dòng)態(tài)框架.framework文件的形式,并將它們添加到項(xiàng)目中,建立依賴關(guān)系。
CocoaPods被建立在Ruby上,而自從OS X 10.7之后的Mac OS X版本帶有Ruby,這樣使用起來(lái)非常方便。
設(shè)計(jì)架構(gòu)
代碼實(shí)現(xiàn)流程
OC
Swift
進(jìn)展
參考資料
總結(jié)
以上是生活随笔為你收集整理的iOS开发的学习笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数据结构(十):图
- 下一篇: 三星 SmartThings Stati