《iOS編程(第4版)》讀書筆記

子曰:“溫故而知新,可以為師矣。”

去年10月份就買了這本書,一直等到這兩天才看完,不得不鄙視一下自己的執行力。為了學習iOS應用的開發,我在買這本書之前買過一本國人寫的《UIKit 詳解》,那本書主要是列舉了一下UIKit庫中常用的一些類的API和用法,當字典查還勉強過得去,但還遠遠算不上一本合格的iOS開發教程。后來覺得自己水平還需要再提高提高,于是就上豆瓣找到了這本評分高達9.2分的《iOS編程(第4版)》。

總的來講,這本書以動手實踐為核心思想,通過幾個實例項目將不同的理論知識串聯起來講解,作者提出了“邊做邊學,概念與代碼并重”的教學理念,所以對于讀者來說,動手才是學習的開始,看得見的成果也會激發學習者的興趣。

這本書設計的知識面廣,涵蓋了iOS開發的方方面面,包括Objective-C基礎語法知識,AppKit庫,常見的Cocoa設計模式,XCode技巧,Instruments等,對于iOS開發初學者來說已經足夠了,但是要想更加深入的了解各個知識模塊,就還得靠自己從其他途徑去挖掘了。平心而論,這本書配得上9.2分。

前言

1.優秀的iOS程序員的三要素:

  • 熟練掌握Objective-C語言(推薦閱讀《Objective-C編程》、《Effective Objective-C 2.0》、《Objective-C高級編程 : iOS與OS X多線程和內存管理》)
  • 熟練掌握 Cocoa 的常用技術:包括內存管理、委托機制(delegation)、固化機制(archiving),以及如何正確使用視圖控制器(view controller)
  • 熟練掌握系統框架(framework):能夠自己通過閱讀并理解Apple的參考文檔來學習iOS SDK中的一些類和方法。

iOS開發究竟要學些什么呢,這里借用一張iOS學習路線圖(感謝原作者,不過很抱歉忘了出處了):

ios-study-route.jpg

2.作者提出的一些教學理念很值得我們學習:

  • 跟其他任何領域的學習一樣,有些知識是學習iOS編程必須要知道的,而且要非常了解。
  • 學習能立即派上用處的知識,效果最佳。
  • 理論與實踐并重時,效果最佳。
  • 實際操作很重要,建議先輸入代碼,再理解含義,“找出錯誤并修正代碼”是學習編程的好辦法,學習者通過調試可以更加徹底地理解代碼。
  • 學習新東西要有耐心,要有“敗不餒”的精神,“書讀百遍,其義自現”。
  • 學習時最好制定一個合理的目標,每天在某一固定時間段里找一個安靜的地方集中精力學習,最好與外界切斷聯系,如微信等。
  • 保證足夠的睡眠
  • 找個好“老師”,如果可以的話。

其實學習編程和學習寫作的訣竅是一樣的,總結起來就是“三多”——多寫(親自動手練習才能有所體會),多讀(看看別人是怎么寫的),多想(學而不思則罔)。

第一章 第一個簡單的iOS應用

這一章主要介紹了
要點

  1. 項目導航面板中的組只用來整理文件,與文件系統無關。也就是說圖01中我們所看到的黃色的文件夾,不一定對應finder中的文件目錄。另外需要注意的是,在添加新文件時,我們一般選擇create groups,而不是Create folder references,如圖02所示。
01.png
02.png

擴展閱讀

2.在新建文件時確保選中了Target中的勾選框,選中后,XCode在構建項目時才會一起編譯新加入的文件,如圖03所示。

03.png

擴展閱讀

3.MVC(Model-View-Controller)設計模式是iOS開發中頻繁使用的一種設計模式。其含義是,應用創建的任何一個對象,其類型必定是模型對象、視圖對象或控制器對象三種類型中的一種。

  • 視圖對象(View):用來構建用戶界面,展示內容。
  • 模型對象(Model):負責存儲數據,與用戶界面無關。
  • 控制器對象(Controller):扮演“管家”角色,它用于控制視圖對象(View)為用戶呈現的內容,以及負責確保視圖對象(View)和模型對象(Model)的數據一致。
>模型對象(Model)和視圖對象(View)沒有直接產生聯系,而是由控制器對象(Controller)負責彼此間的消息發送和數據傳遞。
MVC-design-pattern.jpeg

擴展閱讀

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容