在現今的移動互連網時代,蘋果產品風靡全球。因此,相應的iOS開發也漸漸成為IT業界熱門的職業方向。除了可以給開發人員帶來高薪的職位,還能夠為個人創造可以盈利的開發模式,對此,中國資訊產業培訓網主編專訪業內知名實
在現今的移動 互連網時代,蘋果 產品風靡全球。因此,相應的iOS開發 也漸漸成為IT業界熱門的職業方向。除了可以給開發 人員帶來高薪的職位,還能夠為個人創造可以盈利的開發模式,對此,中國 資訊產業培訓網主編專訪業內知名實戰專家、安博教育-中程線上金牌講師關東升老師,揭秘神奇的iOS開發實戰之路。
1、學習iOS開發,需要有什麼開發基礎呢?
關老師:由於iOS開發主要使用 Objective-C語言,有時候也會使用 C或者C++。Objective-C語言屬於C語言家族,如果有C或者C++基礎,學習起來會比較容易。如果沒有C或者C++基礎,有C#或Java基礎也可以。
2、學習iOS開發,有哪些技術痛點需要重點理解和研究?
關老師:Objective-C語言規則、記憶體管理是學習iOS和設計模式最大的痛點。
Objective-C語言是基於SmallTalk-80,文法規則與C和和C++語言是完全不同的,調用方法被稱為“發送訊息”,不是採用“.”操作符,而是採用“[]”操作符。方法名簽名可以分成幾個部分。
Objective-C語言與C和C++語言一樣都需要由程式員是否變數的記憶體,一種以來記憶體管理都是C家族程式員最為頭痛的問 題,Objective-C語言也有這樣的問題,記憶體釋放早了就會出現null 指標引用,釋放晚了就會出現記憶體流失等等問題。但是新版本的iOS SDK 5.0給這個問題的解決帶來曙光。
iOS中採用幾種設計模式也是一個重點,其中包括:MVC設計模式、委託設計模式、觀察者設計模式和單例設計模式。其中MVC設計模式是iOS UI部分基礎,委託設計模式也在組件之間的調用方面起著重要的作用。
3、iOS遊戲開發中,主要需要學習哪些關鍵知識點呢?
關老師:iOS中的遊戲已經不是傳統概念上的遊戲了,有多遊戲都是利用了iOS特有的感應器、能夠移動的特性,因此這些遊戲採用的技術是五花八門的, 如果總結一下包括:2D繪圖介紹、動畫技術、OpenGL ES、多媒體技術、重力加速計、觸摸事件和手勢,以及定位服務和地圖等,有時候我們還需要第三方的遊戲引擎,而遊戲引擎又有很多方向。
4、請您簡單介紹一下iOS開發入門的基礎、iOS架構的使用。
關老師:iOS開發入門首先要學習Objective-C語言,這是過語言關,然後才有談其它學習。接著就可以學習iOS的Cocoa Touch架構中的UIKit部分學習,這一部分是以UI控制項為基礎知識,UI內容入門相對比較容易,因為它所見即所得 (WYSIWYG)的。
5、iOS開發中,有哪些經典的iOS應用?您給我們介紹幾個相關的案例吧!
關老師:在App Store中有很多經典的應用,由於iOS包括了:iPhone(iPod Touch)和iPad裝置,細分來講iPhone(iPod Touch)和iPad的應用是有差別的,他們的應用情境不一樣。iPhone(iPod Touch)由於比較小、可以放在口袋裡,因此iPhone(iPod Touch)適合於完成微任務、瞭解周圍發生的事情和打發無聊的時間。如果只談iPhone(iPod Touch)經典應用的話,有完成微任務有:天氣資訊、股票資訊等應用,瞭解周圍發生的事情的有:bump、OffMaps、Lonely Planet Travel Guide等應用,打發無聊的時間有:憤怒的小鳥、植物大戰殭屍等遊戲。
6、現在,雲端運算和雲端應用是IT行業很火的詞。那麼您能簡單講一下如何使用和開發蘋果的雲端嗎?
關老師:雲端運算是現在很火的概念,現在各大公司都在建立自己的雲和推出自己的雲端服務,蘋果的雲(iCloud)為使用者免費提供5G控制項。要開發蘋果的 雲端應用,我們有兩個選擇,一個是蘋果提供的iCloud,使用iCloud 的API開發就可以了,另一個是使用第三方的雲,比如微軟的SQL Azure等,也可以是自己提供伺服器,一般採用的技術就是HTTP、HTTPS、Web Servcie等知識。
7、現在有很多iOS開發人員都很關心如何在APP Store上利用自己開發的遊戲或應用賺錢,那請您就自己的親身經驗給我們講一講吧。
關老師:目前APP Store上有50多萬以上應用,一款應用放上去很快就找不到了,這是一個事實,這隻能說你的應用使用者不喜歡。在iPhone和iPad上做應用也是有差 別的,它們的應用情境是不同的,使用者的心理也是不同的,我剛才講iPhone適合於完成微任務、瞭解周圍發生的事情和打發無聊的時間,我們要圍著這個幾個 點開發應用。如果App Store已經有了的應用,需要從內容的持續更新、遊戲的內建購買關卡等方式,甚至可以在你的應用中設計一個很好的廣告條。還有如果你做的是網站附屬應用 的話,要想著如果在移動網站上做改進,而不是全盤照搬原網站。
8、據我們瞭解,您在iOS開發領域有著多年的研究經驗,而且授課經驗也相當豐富。那麼您給我們簡單介紹一下,在您的iOS開發系列課程中,包括哪些具體的課程呢?這些課程之間又是怎樣的進階關係呢?
關老師:iOS系統 課程目前來講包括:精通iOS開發、iOS雲端應用、iOS遊戲開發從零開始和iOS 經典應用剖析。
為了說明這些課程的關係請看下面的圖表:
(詳情請諮詢qq:1575716557,歡迎郵寄諮詢)
其中精通iOS開發是一門基礎課程,其中進階課程包括了:iOS雲端應用、iOS遊戲開發從零開始和iOS 經典應用剖析,其中綠色部分是已經在講授的課程了,其它的部分是未來要來開始的課程。
9、您講的iOS開發的課程,有什麼特色和亮點呢?
關老師:主要包含五個亮點:一是全面:課程知識覆蓋全面,涵蓋了應用開發技術的方方面面。二是最新:最新的iOS5 SDK,最新Xcode開發工具,能夠緊跟蘋果的步伐。三是案例驅動:授課過程中採用案例驅動模式授課模式,從案例入手講解知識點。四是資源共用:課程結 束後,所有課程PPT以及案例代碼完全提供給學員,以便學員技術鞏固及資料積累。五是真機運行:授課過程中的案例,會在iPad或iPhone上測試和運 行,學員感受更加直觀。
關東升老師簡介:
關東升老師
安博教育集團認證金牌講師。擁有16年軟體開發經驗、8年培訓行業經驗。精通JAVA、JAVAEE、Spring和AJAX,微軟.NET體繫結構、移動開發、設計模式與軟體架構,iOS、Android 和Windows Phone 7開發等技術。曾先後參與開發北京公交一卡通系統、日本NEC委託開發系統、中國移動廣東分公司業務報表系統;大型網路遊戲Distributed System Performance Monitor訣Android 和iOS用戶端、國家農產品追溯系統iPad用戶端、大型團購網站移動端開發、在AppStore發布多款遊戲和應用軟體、發布多款Android應用,擅長移動平台 的 應用和遊戲類項目開發。著有《Android項目驅動式案例教程》、《JSP網路程式設計》等書籍。即將出版的書籍有《iPhone與iPad開發實戰 ——iOS 經典應用剖析》、《基於Android 4的英雄訣網路遊戲項目開發實戰》。培訓案例包括中國移動、大唐電信、中石油等。