想在移動開發大餐中分一杯羹,體驗最火最炫的技術?小夥子,頗有眼光嘛php
毫無疑問,移動開發在目前和將來幾年內都會盛極一時。無數開發職位虛位以待。各大公司都在尋找各類層次的程序員——新手級、入門級、中級、老手、專家。 本文是寫給新手們的——我會幫大家找到第一份iOS開發工做。html
「我幹嗎聽你的?」,ios
你可能會這麼說。是個問題——若是是菜鳥亂給建議,那卻是不聽最好。
我也不是什麼大神,甚至也不算是特別有經驗的iOS開發者——但我足夠了解市場,所以能夠對你有些幫助。git
最初我是一個獨立開發者,擁有幾個收入不高(但也足夠讓我實現溫飽而專心作開發)的應用。以後,我做爲初級iOS開發者加入了一家公司,終於能全心全意作應用、甭擔憂明天吃啥這種問題了。若是我願意,我徹底能夠找個公司打工衣食無憂(但可能這並不適合我——個人身體裏流着創業的血液)。程序員
如今,少說多作——如何才能成爲一名iOS開發者呢?github
iOS開發須要Mac。面試
好吧,其實也能退而求其次(好比hackintosh,或Mac In Cloud),但聽我苦口婆心一言——對於iOS開發者來講,Mac會是你的主要武器。通常狀況下,你無需放血去買最新、最快、最貴的設備,但好歹得有個叫Mac的東西。固然,若是你是小土豪,想買個好一點的入門設備,那不妨考慮一下Mac Mini——它多是性價比最高的一款。若是你和我同樣追求便攜性,那就買Air——特別是它的大屏版。咱們也不是非得買新品不可,從eBay上搞個二手貨也是棒棒的。objective-c
如今,當你有了閃閃發亮的全新(好的二手貨也跟新的差很少)Mac以後,下一步就是安裝[Xcode]了,它但是對iOS開發者而言最重要的軟件。Xcode是開發iOS應用的IDE(集成開發環境)。它是免費的,你能夠直接從Mac App Store下載。如今就去下,別磨嘰!數據庫
你會在Xcode中寫代碼、編輯、在storyboard中「畫」出應用、進行單元測試,等等。你也須要用Xcode來上傳應用到App Store。你得儘量地熟悉它,由於它是每一個iOS開發者最重要的軟件。編程
如今咱們可能到最難的一步了——你須要直接開始編程。若是你有必定的編程基礎,那就能夠在Objective-C(難一些)和Swift(簡單一些)當中挑一個,大概也沒那麼糾結——它們基本上是標準的面向對象編程語言。可是若是你一行代碼都沒寫過,那也別慌——這有兩個純新手的福利資源:
Ry’s Objective-C tutorial?——適合「戀舊」的Objective-C愛好者。你不用把Obejective-C學得多精(Swift纔是將來大勢<或者已是當下大勢了>),但最好能瞭解其基礎知識,並能夠讀懂用它寫出來的代碼。
Swift language guide ,由蘋果官方提供——這是最好的Swift參考和學習資料。蘋果出品,必屬精品。
固然,你沒必要深刻理解全部東西——等你更有經驗了再談這些。可是你必須好好理解變量、指針、類、數據類型和循環這些概念。這樣,你之後的學習才能水到渠成。
從這一步開始,你終於要作點有用的東西了。看看這些網站:
AppCoda ——對初學者而言多是最好的起點。你能夠找到大量不一樣的教程,它們都有很是詳細的說明。必定要都看下來!
Ray Wenderlich ——另外一個有用的網站,它擁有海量的iOS開發教程數據庫。一步一步從中學習吧。
但不要侷限在這些網站和教程上!繼續前進,開發一個計算器應用。而後是天氣應用。再有就是匯率換算應用。音樂應用。明白了嗎?只要能找到相關教程,就把它們都作出來。
推薦閱讀:
一直跟着教程學作應用,直到你以爲本身運用Xcode和編程語言(你所選的Objective-C或Swift)都很熟練了。這時候,咱們繼續前進——
OK,咱們愈來愈進入狀態了。如今,你要開始開發本身的應用,它將成爲你往後面試的法寶。
別懼怕!又不是讓你開發Facebook。咱得從初級職位開始,沒錯吧?在初級職位上,你能夠從同事身上大量學習知識。好高騖遠沒用,你不可能一會兒成爲有五年經驗的專家。
所以,你應該保持心裏平靜,思考一下目前本身最擅長的iOS開發領域是什麼。
或許你開發過一個網絡相關的應用?或許你研究過UIKit,而且很擅長作複雜的用戶界面?再或者你開發過一個音樂播放器應用,喜歡iOS的音頻?你得利用好本身的興趣和知識,以此爲開發應用的基礎。要寫出整潔、有風格、運行良好的代碼。
你正在閱讀本文,這多少說明了你近期不打算去大學修習計算機。好消息是!你根本沒必要去!
你能夠在家打開電腦,學不少關於計算機科學、編程、軟件工程之類的課程。
固然,這跟學位仍是無法比的,不過單就iOS開發而言卻已經足夠了。看到上面的圖片了嗎?讀讀上面的文字。我不會把連接拱手奉上——信息搜索是開發者最重要的技能之一。開始訓練。Google是你的良師益友。
你專心於學習和開發應用,這樣過去了幾天、幾個星期、幾個月……親,你該有一款本身像樣的應用了。應用就是你的簡歷——你必須盡心盡力。甚至說,鞠躬盡瘁。公司會但願從你的應用中看到什麼呢?這裏有一些建議:
順便,若是你正在尋找一些炫酷的iOS開源庫的話,不妨看我另外一篇文章:
固然,一切都取決於你想找什麼樣的工做和什麼樣的公司,但整體而言,學好上述話,走遍天下都不怕。
OK,如今你有了本身狂拽炫酷的應用。下一步——
呃,我得說清楚——這一步不是必須的,由於它須要一個開發者帳號,而這個帳號呢,每一年有99美圓的費用,這頗有可能會搞得你入不敷出。
發佈仍是不發佈,這是一個問題……它由你說了算。不過,若能成功發佈,不少公司都會把它看作是一個大大的加分項。
在App Store有本身的應用意味着你熟悉應用發佈流程,熟悉蘋果對於應用的限制(還真很多),熟悉應用自己以外的發佈所需事項(如應用描述、關鍵詞、屏幕截圖、宣傳視頻等等)。
你能夠選擇跳過這一步,但我強烈推薦你能試一下(個人第一份工做應該就是靠我在App Store的應用找到的)。
GitHub是一個社交平臺,其主要功能就是源碼分享(與之相似但不如GitHub火還有另外一個平臺是,Bitbucket)。
你能夠在此上傳源碼(可設置爲公開或私人),能夠在此瀏覽其餘人的代碼,還能夠爲開源項目出一份力。GitHub應用普遍,即便你一直都是獨立開發,那也能夠從中獲益許多——你能夠更好地組織代碼,並能夠得到多是最好的備份。
但你爲何要上傳應用呢?很簡單,把源碼給你的面試官看。
別再用郵件發代碼了,長點心吧,這又不是90年代。
圓夢時刻到——如今,你已經準備好接受第一份iOS開發工做了!多是從實習生或初級崗位開始,這都不重要——重要的是,你如今有能力找到第一份工做了,萬事開頭難嘛,之後就順利了。
因此,準備好你的簡歷,找到你所向往的公司,而後就與他們一塊兒開發應用吧!
如今你已經有了必定的開發技能了。在進入崗位以前,你可能會但願試試當獨立開發者的滋味,卻又不知道該去作什麼樣的應用。須要靈感嗎?那就看看每週最佳iOS應用和遊戲報告,這是我一手策劃的——那裏有各類各樣的好應用,iOS開發者們必定想去作!
或許你在App Store中有一個很酷的應用?我每週都本身策劃iOS Apps Weekly,因此給我發送Twitter私信,也許你的應用就是下一輪的App of The Week!
若是你喜歡這篇文章並想讀更多,請點擊下面的推薦按鈕——這會激勵我分享更多的東西(我腦子裏的想法但是取之不盡!)你也能夠在Twitter上關注我,我會常常發一些關於iOS開發的東西。謝謝!
Paweł Białecki (@pawel_bialecki) | Twitter:Paweł Białecki(@pawel_bialecki)最新的推特。iOS開發者,電吉他手……
推薦閱讀: