979
windows
關於《Swift開發指南》背後的那些事
時間軸(倒敘)2014年8月底
在圖靈出版社的大力支持下,全球第一本全麵、係統、科學的,包含本人多年經驗的嘔心瀝血之作《Swift開發指南》(配有同步視頻課程和同步練習)全線重磅推出
2014年7月5日
蘋果宣布Swift語言二十天後,《Swift開發指南》第一稿交予圖靈出版社
2014年6月9日
蘋果宣布Swift語言三天後,啟動《Swift開發指南》撰寫
2014年6月2日淩晨1點(北京時間:)
在蘋果開發者大會WWDC 2014上,蘋果宣布了全新的iOS及OS X平台開發語言Swift

我是一個編了20年程序的碼農,做了10年IT培訓的教書匠,寫了15本書的筆農。
2010年的時候我有幸相識了大富翁遊戲之父,台灣的柯博文老師。從那時開始,我真正的接觸到了iOS。我用蘋果虛擬機,用了一個星期的時間,編寫了第一個iPhone HelloWorld程序。蘋果的事件處理機製和Objective-C古怪的語法有別於其它我接觸的語言。那時候可參考的中文資料很少,源於老師的職業習慣,我決定要寫一個係列的iOS叢書,我規劃了6本書,《iOS網絡編程與雲端應用最佳實踐》、《iOS傳感器應用開發最佳實踐》、《iOS多媒體技術開發最佳實踐》、《iPhone與 iPad開發實戰——iOS 經典應用剖析》、《iOS開發指南》、《Objective-C開發指南》經過四年的筆耕不輟,前五本都一一出版發行,並獲得了大量讀者和忠實的學習者。最後一本順應蘋果公司的編程語言的變革,改為即將上市的《Swift開發指南》。
20天時間寫出全球第一本Swift書,我是如何做到的?
夢中夢
正編著一款新型遊戲的程序,突然電腦中病毒般一頓亂跳,鼠標竟然變成了一隻活生生的大老鼠,嘴裏叼著一根雪茄,尖著嗓門奸笑著對我說,“蘋果都出新語言了,你還在等什麼?”。突然驚醒,原來是在做夢。走到書架前,一本書翩翩起舞,輕輕的落在我腳下,撿起來一看,“Swift語言”。“關老師!關老師!快醒醒,馬上到直播課時間了!”我被一陣喊叫聲和敲桌子聲音吵醒了,原來剛才一直在做夢,“恩,我再眯一分鍾,看看裏麵是什麼”邊說著我換了一隻胳膊繼續趴著睡。“看什麼啊?就一分鍾哦,莫名其妙。”小賈提醒我道。難道是老天冥冥中在提示我什麼嗎?
鼠標手、鍵盤手、肩周炎(配圖)
6月9日淩晨4點11分,被樓下的汽車發動聲驚醒,我從辦公室的沙發上爬起來,洗了把臉,意識越來越清醒。是時候出下一本書了,打開蘋果官網,第一眼看到《The Swift Programming Language》文檔,我如饑似渴的開始研究,用了整整12個小時的時間,到當天下午4點,我已經對這門語言心領神會了。讀完文檔的第一想法就是我要用我這20年的編程經驗和10年的培訓經驗和項目經驗,第一時間寫一本關於Swift語言開發的教程。
接下來,製定計劃,每天住在辦公室,砍去一切與寫這本書無關的事情,比如和朋友約飯、講課(理想大於金錢的時刻)、回家陪家人(在此也想非常感謝老婆和孩子在這一段時間的默默支持!),甚至睡覺休息時間,總之一切都在為了這一個目標讓步。正如一本書裏所寫的:“當你真心想要一樣東西的時候,你身上散發出來的就是那種能量的振動頻率,然後全宇宙就會聯合起來幫助你達到你想要的東西。”
在暢銷書《iOS開發指南》完成之後,我就得了一個毛病——肩周炎。肩周炎不是一個什麼大毛病,可是它會把從書架高處取書這麼簡單的一個動作,或者是拿筆在白板上寫點板書成為挑戰自我的一個動作。疼,隱隱作痛。去醫院看,醫生說:“你這毛病這輩子就這樣了,隻能維持,盡量別再保持一個姿勢,電腦盡量少用。”“不可能的”我心裏想到。我這幾年要不是沒日沒夜的坐在電腦前碼字,寫案例,做方案,怎麼會有今天的這些作品。這本《Swift開發指南》更是飽含了汗水和淚水。

團隊成員調侃我是“鼠標手關Sir,技藝堪比剪刀手愛德華”。因為網絡時代的寫書、敲代碼與紙質時代不同,鼠標和鍵盤是必備神器,所以團隊小賈非常貼心的給我買了好幾個款型的鼠標,一天20小時的輪番上陣,陪我揮灑前程。但就是這樣,在Swift這場戰役中還是烙下了新病根,腱鞘炎。但一想到我的新書馬上就能出版,可以幫助那麼多挨踢人士以及攻城獅們,第一時間係統學習和掌握這門語言,我就興奮不已。《Swift開發指南》每章都配有項目案例和測試習題,最後還用Swift語言開發了一個計算器項目。在此,也非常感謝合著者趙誌榮女士,感謝她對項目習題的精心編寫和文稿的不倦審查。

落下點小毛病還是小事,最讓人糾結難耐的還是,蘋果Swift語言出來後,兩天一小改,三天一大動的情形,問題是我的書已經完成了一大半,但是看到官方形勢的急劇變化,我二話不說,立馬進行整章、整節的調整,在經過連續20天時間,每天持續奮戰18-19個小時之後,最後終於完成了Swift語言的Beta 4版本撰寫。在這20天時間裏我的體重爆減了15斤,這也算是對自己的另一種完美交差了。

我的team短小精悍,被業界高煥堂戲稱是“青蛙公主”組合。程序猿們以男性居多,又多是注重本質和物理層,對應用層以及用戶體驗方麵不是摸不著頭腦 就是興趣不大。趙大羽老師是移動平台UI、UE專家,專注於移動設計領域。是目前國內能講用戶體驗課程的僅有幾個金牌講師之一。趙老師講課深入淺出、每每講到難點和有深度的課題時總會抖幾個包袱出來,立即將極其抽象的事物完完全全的剖析出來,讓學員自己思考、琢磨,然後頓悟,那些四萬多移動用戶體驗設計和移動端敏捷設計的“羽絲”們深有體會。正是他用這樣的方式和深度感化著一個個程序猿和設計獅們,讓他們從程序的世界裏抬起頭來,為用戶的感受和體驗思考。
於是乎,在“公主”的點化之下,我就成了“王子”,如果你是我的學員,不管是聽過我線上視頻還是線下課程,你都會懂我的講課風格,對於不管是Android、iOS還是Cocos2d-x相關的課程,我都會慢條斯理、深入淺出、高深但不難懂、理論結合案例,絲絲入扣的進行剖析,講解並演練,讓學員在掌握拔高理論的基礎上,還能有實戰實操的案例和動手機會。係統學習之後,再研讀配套書籍及動手演練習題,隻要你認真堅持下來,不想成為半個專家都不行。《Swift開發指南》一書是與趙誌榮老師合作下的又一力作,在此也非常感謝趙誌榮老師百忙之中抽出時間精心編寫項目習題的以及對文稿的不倦審查,同時也感謝我的“公主”不厭其煩的對我書中的每一個必要場景手繪插圖,最終讓書稿在技術的海洋裏獨具一格,徐徐生輝。
“青蛙公主”在圖書簽署會上
我的圖靈大編輯
Swift一書交稿之後,我們的一個小請求就是在書的封麵上加上“國內第一本Swift開發教程”一行字。編輯小張給我們的答複是,可能無法滿足我們的這一要求。這個消息對我們來說非常有挫敗感,畢竟這是我們在如此短的時間內,相當於常人三倍的時間和精力投入編寫的一本教程,同時也有爭當第一之想法。於是我就給她講了這段時間我們是怎麼努力堅持過來的,以及我們的心路曆程和汗水付出,希望出版社可以給我們一個說法。經過調查,最終他們也查明事實,我們確實是國內第一本Swift開發教程,最終還是決定給我們正名。在這我也想分享給各位的一句話是:“不要怕被拒絕,也不要怕被誤會,是‘金子總會發光’,但也要努力爭取成為‘金子’,天道總會酬勤。”
封麵的故事
我的圖書封麵以及文中配圖都是“公主”精雕細琢的傑作。“公主”對封麵的用戶體驗要求近乎苛刻。因我們iOS、Swift都是蘋果開發相關的係列書籍,所以都是以“蘋果”為原型的創新圖案。在用Swift語言做計算機項目時,在用戶體驗設計的理念基礎上,由“公主”手繪計算器草圖,並以我的程序思路,逐步深入到程序、功能、應用等層麵。

Swift速成,你如何做到?
為什麼學?
作為學習者,你要清楚自己的定位。即你本身就是挨踢民工、 程序猿、工程獅,還是你想成為這麼一類人。成為這一類人,你就得 “學得好語言、寫的了代碼、經得起寂寞、忍得了寂寞,還能經得起因為‘神經大條’經常被女友拋棄的慘痛”。如果以上幾方麵,你毅然做好了準備,那就想清楚,你學習Swift的目的和長遠打算是什麼。如果你想玩轉APP,自己開發各種蘋果手機應用;如果你想在公司的新項目中,遊刃有餘,發揮自己的技術天賦和被領導讚不絕口 ;如果你想轉行,從事iOS相關開發工作;或者如果你真的很Geek,就像搞清楚Swift是個怎麼回事,那就來學吧!
怎麼學?
學習分兩種模式,先天習得和後天學習。如果你已經超過三歲,那就不要考慮第一種辦法了,你隻能找到一種合適的方式和方法,以及工具(即教材、老師、課件、資料等等)進行係統的學習。Swift這本書就有配套視頻課程和習題。為了便於學習,剛開始的每一章節的課程時間規劃的都非常短,在學習完一章後,直接做大量的習題和測試進行鞏固和練習,讓學習者不至於在一個長期的學習目標之下失去學習的興趣和鬥誌。
學到什麼程度?
學習的程度和你努力堅持的程度成正比。挨踢們最能懂我這句話的意思,因為程序和技術很多時候是有標準答案的,你的功夫不到家,核心要素沒有掌握,就別怪Bug,Bug的老來找你,程序跑不通,還總是找不到問題所在,有時候想找到問題,似乎比重新開發一遍還難。用一句話概括,就是“你的思想有多深邃,你的程序就能跑多久”。
學習規劃圖

《Swift開發指南》是在蘋果公司宣布Swift語言之後立即投入編寫的,全書編寫貫穿Xcode6 beta1版到beta4版的更新,最終成書是以beta4版落地。因beta版本到最終版本之前還有一些變化,所以在final版本出來之前,我們會在案例和習題中為大家及時更新,待Swift語言的final版出來之後,我們也會及時對本書進行修訂,並更新到社區、網站中,並一直保持同步更新和完善。
關於《Swift開發指南》學習相關地址:
購書地址:
京東:https://item.jd.com/11516346.html
當當:https://product.dangdang.com/23535049.html
互動出版社:https://product.china-pub.com/3804000
視頻課程地址:
智捷iOS課堂教程地址:
蘋果Swift編程語言開發指南(上):
https://v.51work6.com/viewCourseDetail.do?courseId=799262
蘋果Swift編程語言開發指南(下):
https://v.51work6.com/viewCourseDetail.do?courseId=799438
51CTO學院視頻教程地址:
蘋果Swift語言視頻教程閃電入門:https://edu.51cto.com/course/course_id-1395.html
Swift項目開發實戰-基於分層架構的多版本iPhone計算器:
https://edu.51cto.com/course/course_id-1950.html
本書網址:https://www.51work6.com/swift.php
歡迎關注智捷iOS課堂微信公共平台

最後更新:2017-04-03 05:40:00