Ch.1 介紹 iPhone SDK

看到這標題不是說我要來開課介紹,而是想表達每當我們開始學習時候,第一章總會是一個帶你入門的地方。透過這章節,你可以對於整個領域有個全貌但是概略的介紹,為將未來可能碰到注意事項一一點了出來。當然第一章節也是有另外一個目的拉,讓學者可以在這一關,考慮是否要繼續往下邁進。

想要學習新的技術,是我們身為 RD 人員引以為傲、也最能樂在其中的方法與動機。印象最深刻的在人月神話這本書『第一章、焦油坑』提到寫程式的樂趣和寫程式的苦難。

寫程式的樂趣可以創造樂趣、創造出來的東西竟然隊別人有用、打造精巧機制時,過程是推理情節解謎過程總是讓人如此的迷戀與自我突破、和持續學習的樂趣存在。程式設計師就像詩人一樣,只要動動腦筋可以做事,運用想像力打造自己的城堡,很少有創作的性質工作是如此彈性、如此可以修修改改,並且輕易的把偉大構想實現出來。

但是寫程式也有苦難,必須表現的非常完美、如果目標是別人設限別人供給資源就能很難安排自己工作細節與目標,因為還不夠有權力扛下所有責任、必須依賴別人才能做事情,尋找 bug、等產出產品時候,卻發現它可能已經落伍了。了解了以上現實面,我們可以在問問自己是否要繼續走這條路,當然身為 RD 人員還是會說,是!

我翻開了 The iPhone Developer's Cookbook 第一章,作者介紹了非常多的概念與 iPhone 開發環境整個生態要遵從的規矩,這是一個嚴謹大家要共生共存的世界。

  • 下載安裝 iPhone SDK,了解 iPhone SDK 包含了哪些項目。
  • Developer program 有分很四種類型:Online Developer Program 有興趣的人都可以參與是免費、Standard iOS Developer Program $99/Year 開發後想要在自己註冊實體 iPhone 測試或者發佈到 App store 都需要此項目、Enterprise iOS Developer Program 給企業戶開發給自己用的登記方式、和 University Developer Program 學術版。
  • 解析一個 iPhone Application 瞭解有哪些 source files 以及相關運用的檔案處理方式。
  • 在 iPhone 開發上可以用 Simulator 來測試,但是作者也比對出這樣方式和實體機器測試的差異,包含了音效、震動等等效果,所以不管如何,當然希望最後開發程式是可以在實體機器上做過完整的測試過,才發佈出去。
  • 了解 Model 上的差異,因為這牽扯到 Camera, Speakers Microphones, Telephony, Core Location, Vibration support, Processor sppeds, OpenGL ES 等等,在不同的 iPhone, iPad touch, iPad 上面都是不一樣的。
  • 了解開發 iPhone 這樣手機程式跟我們一般 Web or OS desktop 開發上的不同,當然包含了資料存取、記憶體、介面互動行為、電池續航力、使用者行為等等。
iPhone 開發上是使用 Objective-C,採用了物件導向的概念,也採用 Model-View-Controller 的模式來開發。比較值得提的是,Controller 我們在像是 Web 開發上有一個處理程式,來決定 Web 要用啥,Model 接哪一個,而在這 iOS 開發部份,Controller 有幾種模式處理:Delegation, Target-Action, Notifications。這些部份後面的章節以及個人學習上都會接觸到。有物件導向開發、C 或者 Objective-C 撰寫經驗,甚至瞭解 Coca 背景,要進入這會比較容易上手。置於沒有的,可能也可以趁這機會,邊學習過程邊一起延伸學習。

看完第一章節介紹,我閉上眼睛,彷彿置身於武俠世界,看到了身處在 iOS 開發門派大門外,廣場上來了非常多想要學習 iOS 開發武藝的求學者,大家來自背景與江湖歷練都不同,可能有未出社會熱血青年、也有出過社會擁有江湖歷練的,大家都流露出想進入 iOS 大門的渴望,你感覺到了嗎。

第一章更多介紹於 The iPhone Developer's Cookbook

Comments