图片偷拍亚洲综合另类-在线观看免费不卡网站-午夜久久人妻一级内射a-日韩a级大片在线免费观看-日韩av一区二区三区在线看-2021AV天堂在线-午夜剧场在线观看高清-国产av不卡一二区-五月草白白色视频在线观看

品牌加盟網(wǎng)
品牌加盟網(wǎng)
品牌加盟網(wǎng) > 加盟資訊 > 達(dá)內(nèi)科技專家告訴你iOS開發(fā)是怎樣的一條路線?

達(dá)內(nèi)科技專家告訴你iOS開發(fā)是怎樣的一條路線?

達(dá)內(nèi)科技 

  MacOSX的話首選用蘋果電腦,macmini最便宜只要4000多就好了然后自己配一個顯示器,macbookpro也可以,不推薦使用macbookair。還有很多人使用黑蘋果或者虛擬機(jī)甚至在windows上裝一些工具都是不可取的。

  另外官翻版的也可以去買,很便宜就可以買到好機(jī)子,官翻版。

  Xcode這個開發(fā)工具自己繼承了iPhoneSDK,所以不用單獨(dú)下載SDK。調(diào)試的模擬器可以從Xcode里面下載不同版本的模擬器。

  iOS調(diào)試真機(jī)是需要證書的,所以這個時候需要從申請一個iDP賬號,不過僅僅需要調(diào)試的話,某寶上有很多賣20幾塊的證書。應(yīng)用上傳appstore的話有很多種方法,證書分為企業(yè)和個人,個人的可以到appstore,企業(yè)是不可以的。

  Object-C語言通常寫作objective-c或者obj-c,是根據(jù)C語言所衍生出來的語言,繼承了C語言的特性,是擴(kuò)充C的面向?qū)ο缶幊陶Z言,它能夠和C、C++混合編程。OC是一個編譯型的語言,通過gcc編譯器把object-c代碼編譯成機(jī)器指令。關(guān)于基本概念可以參考,十分鐘讓你明白Objective-C的語法(和Java、C++的對比)

  Object-C具備一些動態(tài)特性,包括動態(tài)類型、動態(tài)綁定、動態(tài)加載,也就是Object-C在運(yùn)行時才能知道一些對象的類型以及所調(diào)用的方法。

  OC是使用引用計數(shù)原則,現(xiàn)在OC引入ARC(自動引用計數(shù)原則)。引用計數(shù)有幾個規(guī)則,一是誰創(chuàng)建誰釋放,通過alloc、new和copy創(chuàng)建對象,然后調(diào)用release或者autorelease去釋放對象,第二是,除了alloc、new和copy之外創(chuàng)建的對象都是autorelease的,第三誰retain了,誰釋放。

  OC首先是只有單一繼承,沒有多重繼承。

  category,中文一般叫做類別,他能夠為現(xiàn)有的類提供新的方法,他將類的實現(xiàn)分散到多個不同的文件或框架中,創(chuàng)建對私有方法的前向引用,向?qū)ο筇砑臃钦絽f(xié)議。

  block語法,塊,他通常代表小段的自包含的代碼片段,因此,他們封裝為可以并行執(zhí)行的工作單元額外有用,還可以用于在集合中進(jìn)行遍歷,或者在其他操作完成時作為回調(diào)。塊代替?zhèn)鹘y(tǒng)回調(diào)函數(shù)的意義有兩個:一是他們允許在方法實現(xiàn)的調(diào)用中就近寫入代碼,而且塊經(jīng)常被作為框架中一些方法的參數(shù);二是他們可以訪問本地變量。

  OC中有很多類是以NS開頭的,那是cocoa層里面Foundation框架的類庫。

  最基礎(chǔ)的是MVC模式,就是把項目分為Model、View和Controller三層進(jìn)行管理。

  常用的還有代理模式,通過協(xié)議和block實現(xiàn)。觀察者模式的話體現(xiàn)在了KVO和notification上了。target-action模式是OC中非常常見的對象之間方法調(diào)用的方式,一般在和UI打交道的時候處理各種GUI上的事件會利用到這種模式,他通常會有一個target作為消息的接收者。單例模式,使得單例對象在項目中只會創(chuàng)建一次。工廠模式,是一個類族的概念,很符合敏捷軟件開發(fā)的開放封閉原則。關(guān)于各種設(shè)計模式,可以看卡奴達(dá)摩的專欄。

  一般寫iOS的UI有三種方式。xib,Storyboard以及代碼創(chuàng)建。

  我之前自學(xué)用了一會的xib,之后一直用代碼創(chuàng)建,代碼更容易區(qū)做多語言版本,而且xib啟動需要事件比用代碼直接寫慢,xib文件比代碼建立UI文件也大。具體對比可以看喵神的博客代碼手寫,xib和StoryBoard間的博弈

常用系統(tǒng)框架和第三方庫

  UIKit是最常用的框架,主要是用來做UI的。包括視圖UIButton、UILabel,控制器UIViewController等,還有一些觸摸事件、手勢等。

  iOS數(shù)據(jù)存儲主要有四種方式。

  NSKeyedArchiver,采用歸檔的形式來保存數(shù)據(jù),該數(shù)據(jù)對象需要遵守NSCoding協(xié)議。歸檔形式保存數(shù)據(jù)只能一次性歸檔保存以及一次性解壓,只能針對小量誰,而且數(shù)據(jù)操作笨拙,即如果想改動數(shù)據(jù)的某一小部分,需要解壓整個數(shù)據(jù)或者歸檔整個數(shù)據(jù)。

  NSUserDefaults,用來保存應(yīng)用程序設(shè)置和屬性。

  第三種,Write寫入文件。

  第四種,相對前兩種更為復(fù)雜,但也最好用。SQLite,可以自己封裝,也可以使用FMDataBase等第三方封裝庫,還可以使用系統(tǒng)的CoreData

  iOS的數(shù)據(jù)通信有幾種方式,應(yīng)用層的HTTP,以及傳輸層的封裝TCP或者UDP的socket接口,還有就是藍(lán)牙通訊。

  HTTP的網(wǎng)絡(luò)服務(wù)一般可以用post、get或者soap等方式請求數(shù)據(jù),可以用系統(tǒng)的NSURL也可以用第三方類庫(MKNetWorkKit、AFNetWorking),這兩種類庫都可以做緩存,數(shù)據(jù)交換的格式一般有JSon和xml。

  iOS的多線程有NSThread、NSOperation以及GCD。NSThread比其他兩個輕量級,但是需要自己管理線程的生命周期,線程同步。線程同步對數(shù)據(jù)加鎖會有一定的系統(tǒng)開銷。operation則不需要關(guān)心線程管理,GCD是一個替代NSThread和operation的技術(shù)。

  iPad和iPhone開發(fā)是異曲同工,但是不要試圖去適配iPad和iPhone,因為他們的UI差別太大。

  iOS有一個云端機(jī)制iCloud,iOS還有一個推送機(jī)制,可以由服務(wù)器推送消息到手機(jī)應(yīng)用程序,iOS還可以做本地化。

  iOS有一些內(nèi)置的傳感器可以利用起來編程,比如三軸加速傳感器,用來測加速度的,還有陀螺感應(yīng)器,測角速度,感知移動的。

  關(guān)于iOS的相機(jī)、相冊以及音視頻都有相應(yīng)的類庫。

  第一是多人協(xié)作的問題,你可以用svn或者git,git是比較流行的,但是大多數(shù)的公司還在用svn;

  第二,iOS的數(shù)據(jù)持久化有很多方案,最高效的就是sqlite,在mac上有很多sqlite的可視化管理工具,我用的是sqlitemanager。

  第三,關(guān)于查看模擬器或者真機(jī)的沙盒內(nèi)容,模擬器可以使用SimPholders,真機(jī)可以用ifunbox。

  第四,屏幕取色工具,sip。

  第五,另外xcode也可以安裝很多輔助工具,例如,格式化xcode代碼的ClangFormat,第三方庫管理工具CocoaPods,壓力測試工具uiautomonkey。

  第六,移動開發(fā)有一些常用的平臺的,比提供社會化分享、統(tǒng)計分析等的友盟,sharesdk;內(nèi)測平臺fir.im,蒲公英;云測平臺testin;廣告平臺google的admob

  • 評論文章
  • 加盟咨詢
對此頁面內(nèi)容評分及收藏
評分:
微博:
相關(guān)資訊
最新資訊
圖文資訊