注1:這篇文章是我的iOS成長之路系列文章中的第三篇文章,第一篇文章:iOS成長之路-1-入門,第二篇文章:
iOS成長之路-2-我的第一個iOS Demo。
通過兩周時間來學習iOS,我慢慢的叩開了iOS開發的大門,接下來就是一個積累的過程,我主要經歷了如下幾個過程:
飽覽群書
跟著項目一起成長
與同行交流
做一些分享
飽覽群書
在初期,我認為多看書對于個人提升有很大的幫助,從某方面來說,這主要擴展了個人對iOS開發的理解廣度(初期,先不要急于往最深處研究),接著把書上的講解與動手編程結合起來,這樣可以加強編程理解能力。
我們在選擇書籍的時候,一定要注重質量,如果英文閱讀能力沒問題的話,建議直接上英文書籍(不解釋),例如iOS 7 Programming Cookbook,或者iOS7 by Tutorials(最新版),如果英文有點吃力的話,我還是建議看英文書籍,看不懂的可以用google翻譯,記得我在搞Symbian開發時,看英文書籍的時候,就是經常開著google翻譯。相信硬著頭皮看上1個月,你會有各種感受,慢慢的,你會覺得英文內容讀起來非常的行云流水,理解起來也要比中文書籍更加容易。
另外,這里所說的飽覽群書,還包括網絡中的學習資料,你可以訂閱一些iOS開發相關的博文,我曾在這里匯總了一些不錯的博文,你可以去訂閱一下。
還有兩個好去處就是蘋果每年WWDC上出的大量參考資料,最新的是WWDC2013,值得擁有。再一個就是來自斯坦福大學的公開課Developing iOS 7 Apps for iPhone and iPad,也非常適合初學者。
最后,你還需要知道兩個網站:github和stackoverflow,其中github主要用來存放開源項目,你可以在這里學習到別人的好多精華,好多內容都可以拿過來直接使用。另外stackoverflow是國外一個非常著名的問答網站,學習初期,基本上你遇到的問題,都能在這里搜索到相關解答。
跟著項目一起成長
我覺得做項目對個人成長非常快,特別如果你是初學者的話,因為你是帶著問題去學習和思考,同時也會有一定的項目壓力,迫使你不斷向前進。當然,大多數項目涉及到的知識點都會有一定的局限性,例如音樂類軟件,主要涉及到多媒體相關的知識,而閱讀類的軟件可能對于圖形渲染要求要多一點。雖說項目涉及到的知識有一定的局限性,但是它需要有一定的深度,所以對個人能力的提升也非常有效。
另外,各項目之間也會有一些共性,只要你熟悉了這些共性,那么在項目之間可以拿來即用,例如網絡模塊、數據存儲模塊,有些項目可能就是業務需求不同而已。
如果你是初學者的話,要是有機會做項目,千萬不要錯過學習提升的好機會,不要因為項目壓力,有什么想法,相信頂住各種壓力和想法,最后你會感謝曾經努力的你。
與同行交流
有時候,你一個人在做項目,或者學習時,或許會感覺到特別的孤獨,有一顆特別強烈的心,迫切想跟外界進行交流:這個功能點的實現可行嗎?有人遇到同樣的問題嗎?別人是如何做的?
其實,在開發或學習過程中,多與同行進行交流是非常有幫助的,交流過程中,有時候一個問題,一個想法,經他人指點,會有茅塞頓開的感覺。當然,交流的對象最好是經驗豐富的嘍。這樣你更加容易信任對方,可以把他當做你前進的燈塔。
不過交流也需要一定的技巧的,遇到問題不是一味的去咨詢別人,你可以首先嘗試自己解決,別忘記google可是萬能的。當然也并不是任何時候都有交流的對象。
做一些分享
我曾經翻譯過一些文章和書籍,本來看起很簡單的事情,內容也看得懂,但是要想再次用中文表達,其實并沒有想象中的簡單,好多時候,你需要反復的推敲,并查閱更多的資料,以確保你所翻譯出來的內容是正確的。
一句話,這東西需要堅持,到最后,你會發現收獲頗多,另外,當你的成果得到別人的認可,對你也會是一個不小的鼓舞。
當然,要是能做一些原創內容分享,是再好不過的了,因為在寫原創內容的時候,你首先需要做一個構思和規劃,并會查閱大量在資料,以此來支撐自己分享的內容。這要比翻譯文章高級多了,翻譯那是跟著別人的思路走。
或許你想說,你是程序員,只會寫代碼,不擅長寫文章,寫總結,那反過來,試問誰有天生會呢?相信熟能生巧,你所需要做的就是大膽的邁出第一步,然后堅持走下去!
小結
上面寫了一些關于iOS開發提升方面的內容,實際上這不僅針對iOS,其它平臺或者技術同樣可行。希望文中的內容對你有些許幫助,如果有任何疑問,可以在下方給我留言。