如何系统学习ios开发

  • 从头学ios,如何入门
  1. 目标明确
  2. 培养兴趣;小步快走,正面反馈
  3. 多动手
  4. ios初学者入门资料:
           http://github.com/eseedo/kidscoding     
          https://www.raywenderlich.com/store/ios-apprentice
          https://code.tutsplus.com/series/learn-ios-sdk-development-from-scratch-mobile-14536



  • 系统学习,如何进阶
  1. 开源APP:
          SegmentFault:https://github.com/gaosboy/IOSSF
          懒人笔记: https://github.com/liaojinxing/Voice2Note
  1. 深挖原理和基础
  2. 进阶资料:
              《Effective Objective-c 2.0》 & 编码规范
                Objective-C Runtime:
                   http://opensource.apple.com/source/objc4/  
                Objective-c Runtime Programming Guide
                Objc_msgSend实现细节
                The Swift Programming Language
  1. ios GUI学习(学习原理以及设计)
                 Apple Guide:
                   View Programming guide
                   View Controller Programming Guide
                   Event Handling Guide
                   Drawing and Printing Guide
                   Core Animation Programming Guide
  1. Xcode学习
                 Xcode Overview
                 Xcode Project Management Guide
                 Xcode编译,链接,打包各流程,配置,Xcodeconfig
                 Xcode管理多工程,多Target
                 熟练使用cocoapods,plugin
  1.   学习网络;
                 理解NSURLConnection, NSURLSession, NSURLProtocol
                 Apple Guide:
                   URL Loading System Programming Guide
                   Introduction to CFNetwork Programming Guide
                 AFNetworking
  1.   学习多线程:
  2.   逆向与安全《ios 应用逆向工程》
  3.   学习资源:WWDC session    objc.io
  4.   需要熟悉原理和实现的开源库: SDWeblmage  AFNetworking/Restkit    AsyncDisplayKit/pop/ReactNative    ReactiveCocoa
  5.    GUI:
                 自定义UI,熟悉UI渲染机制(软渲染,硬件加速)
                 掌握基本排版机制,掌握AutoLayout
                 熟悉事件传递机制,自定义手势
                 掌握基本动画,动画原理
  1.    Controller:
                 熟悉基本ViewController使用,transition
                 熟悉MVC等设计模式(追根溯源)
  1.     熟悉常见网络库使用
                 熟悉NSURLConnection,NSURLSession,NSURLprotocol, AFNetworking,熟         悉Cache,Cookie管理
  1.      熟悉Sqlite使用,熟悉常见ORM系统设计和实现,熟悉系统常用本地存储机制
                  掌握CoreData,sqlite, UserDefault



  • ios能力清单
  1.      性能调优:
                  熟悉移动端常见性能问题和解决方案:主线程CPU密集操作,主线程IO操作,排版渲染耗时
                   网络性能分析和调优(《Web性能权威指南》)
                   熟练使用Instrument进行性能调优
  1.       安全:
                   熟悉常见iOS应用安全机制(keychain,codesign),熟悉常见应用数据保护机制
                   熟悉常见逆向加密算法
  1.       开发工具:
                   熟悉Xcode编译流程,熟悉各种配置选项意义;熟悉Instrument,Memory,CPU,GPU工具使用
                   熟悉应用/库打包方式,熟悉应用发布流程
     


  • 知识体系,走向专家
                 内功而非招式(强化基础)
                 高数,数论,概率论(《具体数学》)
                 操作系统
                 链接与加载(《程序员的自我修养》)
                 ARM体系架构(《ARM体系结构与编程》)
                 学一打语言(Scheme,Racket,Haskell,Prolog,C,C++,Java),重要的是学思想。 《面向对象编程导论》《编译原理》《计算机程序构造与解释》
                 算法导论和数据结构
                 平台编程 《Unix高级环境编程》
                 设计模式 《代码大全》《重构》
                 计算机网络
                 数据库                 



  • 企业需要怎样的ios人才
  1.        大公司更看重基础和成长性
  2.        技术热情,不来自于说,来自于行动
  3.        系统学习的能力,多看书,系统的规划技术
  4.        听,说能力
  5.        敢于承担,敢于挑战
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值