Objective-C工程師的Swift程式入門
站在巨人 Objective-C 的肩膀,學習捉住小燕子 Swift 將容易許多。本課程將以彼得潘生動有趣的著作"Swift程式設計入門"為主,輔以全面進化的Swift 4,帶領Objective-C 工程師 7 小時熟悉 Swift 的各項語法和功能 !
目標和特色
- 站在 Objective-C 的肩膀,快速上手 Swift
- 熟悉 Swift 4 的各項語法和功能
- 熟悉 Playground 的操作和進階功能
- 使用 Swift 存取iOS SDK
- Swift 和 Objective-C 的相互存取
- Swift 和 Objective-C 的比較對照
課程資訊
為什麼要學Swift
- 新的教學文章皆以Swift為範例,唯有了解Swift,才能學習新的技術。
- 簡潔易懂,8歲小孩也能上手的語法。
- 可開發多種裝置的App,從手機,手錶到電視,包含iPhone, iPod touch,iPad, Apple Watch, Apple TV, Mac等。
- 快如小李飛刀的開發速度和執行效能。
- 安全擺第一,幫助我們開發更強壯,更穩定的軟體。
- 點子都是偷來的, Swift 集百家之大成,成為地球上最先進的語言。
- 物以稀為貴, Swift 高手前景(錢景)不可限量。
- 豐富的學習資源。
- 跨平台的Open Source,未來還有機會開發Linux, Windows,Android,甚至後台的App。
若想進一步了解Swift的好,可參考"當你努力想學習 Swift 時,全世界都會來幫你"。
講師
- 暢銷書 《 Swift程式設計入門》、《 App 程式設計入門-iPhone, iPad 》作者
博客來電腦類Top 1,天瓏銷售排行Top 1, PC Home 電腦/攝影 Top 1, 金石堂Top 3 - FB粉絲團: 愛瘋一切為蘋果的彼得潘
- App作品: Wealthy, LOCOMO運動記錄, 戴佩妮回家路上等二十幾款App
Wealthy App曾獲台灣Finance Top 1,台灣不分類Top 2,中國Finance Top 2 - iOS開發講師: ALPHA Camp , 譯智教育訓練,資策會,弘光科大,正修科大
- 技術顧問: FUNTEK,點點數位,英諾奧茲, Brocas
- 雜誌專欄: MacToday App開發,PChome Mac基礎教室
- 暢銷書 《 Swift程式設計入門》、《 App 程式設計入門-iPhone, iPad 》作者
課程大綱
新時代的App開發語言
Swift
為了說服大家移情別戀,拋棄 C , Java , Objective-C 轉投 Swift 的懷抱,且聽彼得潘娓娓道來 Swift 令人難以抗拒的優點。
練功遊樂園
Playground
Apple 重金打造適合練習 Swift 程式設計的遊樂園: Playground 。在遊樂園裡我們可以隨心所欲地輸入程式碼,立即見到程式執行的結果,明明白白每行程式造成的善報和惡報。
說變就變的變數,
始終如一的常數
變數像雙子座一樣說變就變,常數像水瓶座一樣始終如一,他們倆都是 App 裡儲存資料的大功臣。在認識他們兄弟倆的同時,我們也將見識 Swift 可跟福爾摩斯比美的型別推理奇技和初始值的重要性。
Swift 的基本型別
再複雜的程式,最常使用的資料型別還是逃不開數字和字串。且讓我們放慢腳步,如同月球漫步般,好好熟悉它們的相關操作,尤其字串的置換和相加更是令人愛不釋手,大大簡化我們開發程式的艱辛。
控制流程的四大天王
If else , switch , while , for ,號稱控制流程的四大天王。我們一定要當他們的頭號粉絲,好好地崇拜他們,待他們心花怒放,乖乖聽話後,再好好利用他們。唯有掌握四大天王,才能隨心所欲地控制程式流程,此時想在App裡叫太陽從西邊升起都不是問題。
可有可無的 optional
Swift 全新發明的optional即將登場!有了它,無論何種型別的變數常數,都可像莎士比亞說的” To be, or not to be ”一樣,可以無值,也可以無值。善用 optional ,將幫助我們開發更安全更不易閃退的程式!
程式碼居住的溫暖的家function
我們希望程式做的大小事,全都包含在一個個的 function 定義裡。有了隨傳隨到的 function ,我們才能方便地於任何時刻呼叫 function ,執行其中千言萬語的程式碼。
遲到大王 defer和
守護天使 guard
Swift 2 多了遲到大王 defe r和守護天使 guard 這對哥倆好,幫助我們創作更厲害更安全的程式碼。定義於 defer 裡的程式碼有著遲到的天性,總在 function 結束時才執行,但它使命必達,一定執行。而守護天使 guard 一心一意地檢查我們要求的項目,一有違規馬上回報,有了它的守護,程式將變得更加安全可靠!
無名卻厲害無比的 closure
closure ,江湖人稱無名 function ,比起已經消失的無名小站,它可厲害不只一百倍。它的功能跟 function 幾乎一模一樣,但當它化身為function 的參數時,卻可幫助我們開發更有彈性的程式碼。 closure 的模樣千變萬化,擁有多種簡化的變型,且讓我們張大眼睛看個仔細,才不會將來看到它時,尷尬地變成最熟悉的陌生人。
無所不在的物件
物件是 App 開發的核心。學習已經進化到一輩子也學不完的 iOS SDK ,正是學習運用 SDK 類別建立物件,操控物件實現各種 App 功能的過程。且讓我們靜下心來,好好地認識物件,學習關於類別( class ),方法,屬性,初始化等物件使用的基本功。
物件深層探索
繼承和型別能力
物件的故事,未完待續! 我們將繼續探討老天爺賜給物件的禮物,免費得到父類別能力的神奇繼承,以及不需懷胎十月生成物件即可存取的型別方法屬性。
權限管理員
Access Control
Swift許多的設計都是為了安全,因此它當然不可能沒有權限管理的設計。除了對屬性和方法設權限,幾乎所有的東西它都可以設權限,果然是安全擺第一的Swift!模仿天王 – 和 class 百分之九十雷同的 struct
struct 是 Swift 界臉皮最厚的人。它在一旁偷偷地看著 class ,模仿地唯妙唯俏,幾乎像是同一個模子印出來的。幸好彼得潘很會剝洋蔥,一層一層地剝開 struct 的心,看出他們本質上全然不同, class 是 reference 型別, struct 是 value 型別,而且 struct 還偷藏 class沒有的特別功能!
全面進化的 enum
期待有一天人類能全面進化,男人生來帥如劉德華,女人生來美如林志玲。想不到 enum 全面進化的一天比人類還快,在 Swift 裡 enum不再受限整數型別,和 switch 成為最佳拍檔,甚至還學會傳說中動態設定相關聯資料的特殊能力。
哪裡都是你的case比對
case 很方便,搭配 switch 輕輕鬆鬆,一個不漏地為我們比對所有可能。如此好用的功能,只讓 switch 一人獨享也未免可惜。 Swift 2.0 裡 case 無所不在,哪裡都是它, if , for , while 和 guard ,全都可以和 case 天衣無縫地搭配比對!
容納眾多資料的 array , dictionary , set 和 tuple
容納眾多資料,桃園結義的四兄弟 array , dictionary , set 和 tuple 聞名江湖 , array 專精排序, dictionary 擅長搜尋, set 絕不重覆, tuple 超會混搭,我們可以依不同的需求,不同的情境挑選最合適的對象交往,哦,不是啦,是儲存程式裡寶貴的資料。
關於型別的兩三事
成為最有型的型別大師
想成為最有型的型男型女,一定得學會型別使用的進階技巧,諸如化身任意型別的 Any 和 AnyObject ,轉型變身的 as ,比較型別的 is ,型別裡定義型別的 nested type 等。掌握熟練這些技巧後,未來在程式裡處理任何資料,相信都能遊刃有餘地轉換處理,不再害怕型別處理不當造成的 compile error 和可怕 crash 。
擴充型別能力的大補帖 protocol 和 extension
protocol 和 extension 乃名醫華陀私藏的擴充型別能力大補帖,不管是 class , struct 還是 enum 通通適用。出一張嘴,只宣告不定義的protocol 方便我們在型別裡定義方法屬性的行為。 extension 則讓我們擴充原有型別的能力,甚至連內建的型別都可升級,而 Swift 2.0 裡,protocol 還能結合 extension ,甚至擁有定義預設行為的能力。學會這些技巧後,實現擁有強大能力的型別就像呼吸一樣簡單!
通吃型別的 generic
平生不識 generic ,就稱英雄也枉然。同樣是通吃型別的大胃王,比起 Any 和 AnyObject , generic 不只擁有接受任意型別的彈性,還多了許多強大的特點,諸如多個型別條件的設定,不需要轉型,更安全的型別檢查等。
為程式披上金剛防護罩的錯誤處理 – Error Handling
人非聖賢,孰能無過,人寫的程式也一樣,難免有錯。 Swift 2.0 全新推出 Error Handling 機制,幫助我們完美修復那些年,全天下每個男人(女人)都會犯的錯。
自訂能力的
operator
真是太超過了,連operator行為都能自訂!想要小狗物件+小兔物件,想要發明獨特的五星連線***** operator,全都是小菜一碟。ARC
記憶體管理
我們將學習如何成為Swift世界的死神,揭開 ARC 控制物件生死的神秘面紗,了解weak和unowned如何影響物件的存亡,以及reference cycle帶來的可怕記憶體用量災難。Swift標準函式庫
Standard Library
很多我們時常用到的基本功能,其實不需要強大的iOS SDK幫忙。俗語說殺雞焉用牛刀,一些簡單的基本功能,Swift本身的Standard Library即可應付,就讓我們好好來學習Standard Library裡知名的五大function,保證學會一輩子受益無窮。相親相愛的
Swift和Objective-C
Swift和Objective-C的比較對照,從Swift存取Objective-C的程式碼,從Objective-C存取Swift的程式碼
Swift App初體驗
Swift搭配iOS SDK,
打造我們的第一個Swift App!
招生對象
- 想快速上手Swift的Objective-C工程師
加值福利
問題諮詢: 一輩子的朋友
經過7個小時的相處,其實大家已經算不教不相識的好朋友。雖然我們的友情不到許下同年同月同日死的承諾,至少彼得潘可以承諾,未來遇到任何App開發的問題,絕對拔刀相助。
八折優待的App課程
彼得潘未來開設的App課程,你們都可享有原價八折優待。(不包含彼得潘和第三方合作的課程,因為只有彼得潘私人開設的課程才能自己控制學費啦。)
學費
原價: 3750元
優惠價: 3200元
團報價(2人以上): 3000元
學生價(持有學生證): 3000元
舊生價(曾報名過彼得潘付費課程): 3000元
青年享學行優惠價: 3000元
暖暖包價(2個名額,持低收入證明): 100元
注意事項
- 自備Mac電腦
- 安裝Xcode 7.3
iOS App開發的十個Q & A
上課照片
2016/3/27 (日)
2016/1/23 (六), 2016/1/24 (日)
學生心得
Ming
PM (譯智教育訓練學員)
公司因為工作需求,幫我報名彼得潘的課程,剛開始非常害怕自己聽不懂,幾堂課後才發現App開發沒有想像中困難,雖然學習的速度不像有程式背景的同學那麼快,但有任何不懂的地方,彼得潘都會耐心地幫我解答,甚至願意花下課的時間幫忙。最後當我將自己設計的畫面變成真正的App時,真的超感動,超有成就感。雖然後來實際工作不需要自己開發,但仍然感謝彼得潘給我的信心和鼓勵。
Cosnaye
對時海鮮創辦人 (ALPHA Camp iOS班學員,前台積電工程師)
專職的 iOS 老師不一定有紥實的業界經驗,有豐富經驗的也不一定會教。彼得潘是少數能完美結合技術經驗 + 教學的老師。 在入門階段彼得潘用輕鬆又有點白爛的例子帶我們進入,在我們開始實作 APP 的時候,他又能秒解我們遇到的所有問題。 我個人自學過一陣子程式,但自學總要花很多冤枉的時間,有這樣一個老師真的是最有效率的方式!
Ryan
前iClick Senior Operation Executive (ALPHA Camp iOS班學員)
I’m Ryan from Hong Kong. I started learning Swift from no programming background. This was a great experience of learning Swift from master Peter Pan. He is one of the best swift programmer in TW. He is a humorous and passionated teacher, which make the lesson full of fun and love.
Ethan
amwatch iOS App工程師 (ALPHA Camp iOS班學員,前中鼎工程化學工程師)
我是開始上班後才開始自學寫程式,並想著要如何轉跑道到程式開發者的。所以當初考慮最大的部分就是時間成本,尤其寫程式對自學的0經驗新手來說其實相當的不friendly(找資源慢慢找..一個小bug卡三天...),我認為最快的方法就是直接抓到一個專家從hello world開始問,PeterPan可能因為寫書的關係,他的教學邏輯相當抓到我們新手入門,隨著學生實力增長持續提供更多資源,本人上課又非常幽默有趣,這近三個月時間自己也發現進步相當的快,我自己摸真的不知道還要摸多久,三個月後也找到一份很棒的開發App工作,真的非常感謝PeterPan啦~
Steven
長庚大學畢業生 (ALPHA Camp iOS班學員)
雖然在服役期間有自學過C語言,但對開發出完整的產品,還是有著非常大的距離。很幸運的遇到彼得潘,跟著彼得潘學習iOS開發,從app表面的storyboard到底層的程式邏輯運作,都有著完整的架構。要學的東西很多,彼得潘幫助我一點一滴的打好iOS開發的根基,進而能自我學習難度更高的應用。感謝彼得潘在開發的路上大力的推我一把,遇到難題,隨時都從旁協助引導我解決,最後也讓我打造出自己的作品。彼得潘在專業上是無庸置疑的,非常全面,除此之外,也會關心我生活工作上遇到的問題,與彼得潘學習是一時的,但與之為朋友卻是一輩子的!
小咪
設計公司共同創辦人(ALPHA Camp iOS班學員)
我的專業背景是設計相關,對程式完全沒有任何頭緒,也不知怎麼開始, 直到遇見Peter Pan老師,淺顯易懂的程式教學方式,讓人輕易學習程式開發,而在學習上遇到問題他總是能立刻看出bug在哪,並且幫你解決,熱心真誠教學方式零距離,是一位難得的好老師。成為ios develop工程師的路上有潘棒幫忙,真的可以放心好好學!
Dimo
iOS App工程師 (ALPHA Camp iOS班學員,前元大證券高級專員)
每翻到程式設計的書,翻了沒幾頁就會把書又原封不動的放回架上
身為會計背景,完全沒有程式底子的我心想著:『專業用語一堆,明明是用中文寫的書,但卻無法轉成自己的邏輯內化到自己的腦袋中』,難道就沒有普通人也能理解的學習程式方法嗎?
直到遇到了彼得潘,他用非常白話甚至於讓人想吐槽他的幽默方式(課程期間已吐槽不下百次),來教Objective-C這個人稱比韓文還難學的程式語言
但也因為這種教學方式,在不知不覺中,初學者最難踏入的茫然階段就悄悄地突破了,三個月內從基礎到艱深一步步學習,最後到自己也能做出些APP出來,這成就感是難以言喻的。
有興趣的人不訪可以先去翻翻彼得潘的書,相信你們會懂我在說什麼的:)Johnny
17FIT iOS App工程師 (ALPHA Camp iOS班學員,前韓國時尚女裝批發)
畢業於傳播系的我,完全沒有程式背景,但是行動裝置徹底滲透你我的生活當中,軟體也正在吞食這個世界,因此我認為軟體設計開發絕對是下一個十年的熱門行業,於是約三個月前我毅然透入學習app開發的世界當中,在學習的時候每天都遇到一堆問題,於是我就不停的google ,不停的翻書,但是許多問題或是設計模式上的觀念很難在網路或輸出當中找倒合適的答案。在學習的過程中Peter真的是幫了我很多,很感謝有他熱心、不厭其煩地為我解決很多難題,Peter 亦師亦友,跟著他學習,是非常愉快的經驗喔。
照片
聯絡彼得潘
Email: apppeterpan@gmail.com
其它近期課程
只要8個星期,每週2個晚上,即可習得iOS App開發的最新技術,Swift ,iOS SDK和Xcode,成為酷炫的iOS App開發魔法師 ,實現未來App工作、接案、創業的第二人生!
很多人想學iOS App開發,但卻既期待,又怕受傷害,因為心裡頭藏有很多疑問。不知從何開始學習? 害怕自己沒有程式天份? iOS App工程師真的可以年薪百萬,躺著賺錢?彼得潘將和大家分享自己身為果粉,多年學習開發App的心路歷程,解答這些疑問,希望幫助更多人勇敢踏出第一步,朝向成為偉大的iOS App魔法師方向大步前行,昂首飛翔!
每個女孩,都有著創作App的天份,是時候將它開啟了! 專屬於女孩們的手做電子書App,教你7個小時打造自己喜愛主題的電子書 App ,安裝在自己的寶貝iPhone上,隨時和家人朋友分享。
Copyright 2015