首頁  >  問答  >  主體

面试初级iOS程序员需要会哪些东西?

如题!
我已工作4年,之前做过.net、系统运维、Java、Python,现在转iOS,已自学1个月,把Objective-C基本语法学会,UIKit框架学了几个主要的View,多线程会用NSThread和NSOperation和GCD,网络开发学到NSURLSession,大致情况就是这样。
最近在苦学,但是似乎成效不大,好烦恼!求好心人给予指点,谢谢~

黄舟黄舟2722 天前404

全部回覆(7)我來回復

  • 巴扎黑

    巴扎黑2017-04-17 14:57:12

    1. 掌握Objective-C基本語法,物件導向和Runtime特性,多線程,記憶體管理。特別是Runtime,可以參考以下文章:
      Objective-C Runtime
      Method Swizzling 和 AOP 實踐
    2. 理解整個iOS應用程式的生命週期:app是如何啟動的? app整個架構中有哪些核心物件?如何Run Loop是如何回應和處理與使用者互動參時產生的事件? app的狀態切換和multitasking? app最後是如何結束的?可以參考Apple的官方文章:App Programming Guide for iOS
    3. 了解iOS應用程式的生命週期後,再深入理解View、Controller和事件處理
      View Programming Guide for iOS
      View Controller Programming Guide for iOS
      Event Handling Guide for iOS
    4. 深入理解View、Controller和事件處理之後,你要學會用AutoLayout來適配多個解析度的螢幕,還需要學會自訂控制項和動畫
      即時顯示iOS編寫UI程式碼效果
      Drawing and Printing Guide for iOS
      Quartz 2D Programming Guide
      Core Animation Programming Guide
    5. 許多應用程式都需要存取網絡,這時需要iOS網路程式設計和第三方網路庫(AFNetworking),當然還需要了解RESTful API設計和基本HTTP協議,將網路抓取下來資料之後,一般資料交換格式都是JSON,但還需要資料解析(Mantle/JSONModel)
    6. 解析完數據之後,有時才需要儲存數據,有多種方式:檔案、SQLite、Core Data等
    7. 了解iOS應用常用架構:MVC、MVCS、MVVM和VIPER。可參考以下文章:
      iOS應用架構談
    8. 寫來的程式不只自己看,別人也要看,需要遵循Objective-C的編碼規範:
      raywenderlich Objective-C的編碼規範
    9. 了解iOS最佳實踐

    我總結就以上幾點,祝樓主早日找到工作

    回覆
    0
  • PHPz

    PHPz2017-04-17 14:57:12

    你已經會這麼多了,又有四年工作經驗,應徵初級iOS程式設計師綽綽有餘了。的確iOS社群用AFNetworking的比用NSURLSession的多,但其實是因為在蘋果推出NSURLSession之前原生的網路通訊框架不太好。像你這樣剛入行的是可以考慮用NSURLSession的。不管怎麼說用系統原生框架總是不會錯,除此之外如果還會用第三方當然更好。
    另外你有一個大好機會就是swift。這門語言剛推出不久,很多iOS程式設計師還沒開始學。

    回覆
    0
  • 高洛峰

    高洛峰2017-04-17 14:57:12

    網路不用看NSURLSession,真正工程很少用的,看下AFNetworking吧。

    個人覺得 iOS 的多執行緒不太複雜。看你的學習經歷,覺得 View 方面(例如 UITableView 滾動流暢)、常見的設計模式可能可以再加強些哈。另外記憶體管理要看一看。

    要轉 iOS,感覺比較重要的是做一個作品出來,可以仿照流行的 app 做一個~

    回覆
    0
  • 迷茫

    迷茫2017-04-17 14:57:12

    被採納的答案基本上全了。 。全部「虐完」目測天朝稅後30K++(美帝目測年薪20W刀),太可怕了。學完 + 運用熟練 + 悟出心得要N(N > 2++)年吧。 。 。收下哥粉碎的膝蓋。 。
    對總結還是讚一個,can not agree more,臨時想到的補充一點E文閱讀要做到無障礙。 。
    個人覺得iOS初級程式猿有點底子(UI、UI事件處理、網路處理、資料快取)+ 會Google + 能有點逼格的搬程式碼足矣。 。 。 (個人定義)

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 14:57:12

    10步成為專業iOS開發者-從零起跑
    http://www.cocoachina.com/ios/20150617/12165.html
    碰巧看到了,今日更新

    回覆
    0
  • 天蓬老师

    天蓬老师2017-04-17 14:57:12

    說真的,被採納的答案有點可訣,我覺得要求太高了…

    回覆
    0
  • 天蓬老师

    天蓬老师2017-04-17 14:57:12

    朝被採納的答案使勁! !

    回覆
    0
  • 取消回覆