IOS學習經驗總結 來自知乎網友

2021-09-06 10:57:53 字數 1692 閱讀 7008

**知乎:

我當時剛學ios開發的時候一樣的感覺 總想知道原理 內部怎麼回事 感覺在像在霧裡

但是ios開發就是這樣 他是封閉的 本身就是在霧裡...

關於ios開發的學習 打個比方就像把汽車分解

ios基本都是英文的資料 也由於封閉 文件寫的相當好

在遇到新框架的時候

寫ios的程式不一定都是用objc 很多框架是用c寫的

學習ios開發基礎可以按照下面兩個方面學

基礎 (原料 鋼鐵 塑料)

還有一點開始學習的時候肯定很疑惑 記憶體管理是基於函式名稱的 比如帶alloc copy的函式 用了之後返回的物件一定要release 這個不用疑惑 照做就行了

rary/mac/#documentation/cocoa/conceptual/cocoafundamentals/introduction/introduction.html

高階庫(發動機)

關於uiview的子類 有很多 uibutton uitableview 這個都需要各個擊破 看看文件從名字上就很容易理解是做什麼的

uiviewcontroller 是管理view 和 model的類 (@張開 說uiviewcontroller是用來管理view的,管理model 的類自己寫,當然,model也可以用uiviewcontroller來管理,不過恐怕成為不好的**。 的確是這樣的 model的改變最好通過notification來傳播 之前吃過這樣的虧 最好不要用delegate模式)

core data --- 管理資料 objc

nspersistentstorecoordinator

nsmanagedobjectcontext

舉個不恰當的例子 就像三個人收拾衣服 乙個人負責衣服的存放位置(nsmanagedobjectmodel) 乙個人負責把衣服分類 冬天穿 夏天穿等(nspersistentstorecoordinator) 乙個人負責協調他們的工作 並且如果有新增加的衣服或者要移除之前的衣服 通知他倆(nsmanagedobjectcontext)

nsmanagedobject 這個類是具體的資料物件 用上面的例子說就是衣服

nsfetchrequest

nsentitydescription

nspredicate

上面這三個類就可以用來請求資料了 具體看教程吧

中文介紹:http://

c.gzl.name/archives/tag

/core-data

rary/mac/#documentation/cocoa/conceptual/coredata/cdprogrammingguide.html

下面這些庫都是有專門功能的庫

quartz 2d --- 強大的2d繪相簿 c

opengl --- 不用介紹了 超級強大的3d庫 c

core image --- 聽說 ios5開始支援core image 了 還沒去看 mac 上的ci是很強大的

cfnetwork --- 從來沒用過 我一般都會用asihttprequset 封裝好的高層網路庫 objc實現的 cfnetwork 好像是c實現

core location --- 獲取位置的庫 東西很少 很簡單 objc

這些算是學ios開發的一些方法 當時要是有人告訴我這些 估計少走不少彎路

還有提醒各位初學者 剛開始學的時候 會有幾個月的低谷期 很容易放棄 如果挺過最開始的幾個月 後來就越學越容易了

iOS開發經驗總結1

1 非同步請求資料同時重新整理介面,如果要增加或調整介面樣式,只能在主線程中操作,而不能在子執行緒中進行,否則會觸發異常,如在 dispatch get global queue中增加檢視或控制項。2 調整uitableview中tableheaderview的大小或樣式,後必須給tablehead...

ios上架經驗總結

更新包審核,初審通過了之後再提交的所有版本無論內容變化多大 名字是否改變 圖示是否改變,都視為更新包。遊戲更新包從提交完畢後等待時間為3 5天,進入審核後基本上1 2天出結果。如果你的更新包進入in review狀態超過3天都沒有結果,那麼80 會被打回。除了審核時長之外,更新包審核的尺度遠遠松於初...

學習經驗總結(二)

實事求是 分清主次 現象 最近效率低,自信不足。原因 1 學的不紮實,拖延的太厲害。回顧一年學習歷程,努力 太多,假努力太多!無意義學習時間太多,才弄得又累又忙,又沒效果。2 做事前要思考一下,不要盲目的做。3 不去想不美好的事情,不美好的人,讓自己保持心情愉快。4 學習知識不及時複習,學習過程,注...