如何学习才能快速成为ios开发高手--ios知识架构全方位探讨

  学习ios开发,从哪儿学起?都要学哪些知识?如何才算掌握或精通ios开发?笔者根据自己多年的ios开发经验,给出一些体会,以便为立志成为ios开发精英的人员快速找到一条学习之路。本文是以最新上市的ios10 为依据的

一、ios总体知识架构
    要全面掌握ios开发技术,需要学习和掌握下列几方面的知识和技巧:
     1.开发语言:Objective-C或Swift。
     2.ios SDK:由苹果官方提供的一些列从初级到高级,并不断更新和扩展的API。包括框架(Framework)和动态库(Dynamic Library)两种形式。
     3.App架构:APP的组成、APP生命周期及各种状态转换、APP界面基本原则和跳转规则等。
     4.集成开发测试环境Xcode:包括编码、编译、运行、测试、UI可视化构建、APP Sotre发布等工作均可以在此环境下完成。
                                                                 图1:ios知识总体架构
                         
       上述四个方面的知识对于ios程序开发缺一不可。其中开发语言是基础,ios SDK是核心,Xcode是工具,App架构是必须遵循的基本规则。

二、ios特色关键知识点
       下列知识点大部分是ios特有的,在iOS 开发中起着非常重要的作用,需要仔细学习领会。其中蓝色字体为苹果官方提供的相应技术指南文件,对这些知识点均做了全面深入的阐述,是ios开发人员学习的第一手资料。
1.委托(Delegate):Concepts in Objective-C Programming
3..目标/动作(Target/Action):Target-Action in UIKit
4.沙盒技术:App Sandbox Design Guide
7.块(Block):Creating a Block;
8.自动布局(Auto Layout):Auto Layout Guide
10.多任务(Multitasking):Concurrency Programming Guide     
    上述知识点1-5是基础性的,6~10是提高性的。理解和掌握了这些知识点才能更加灵活和有效地进行ios开发。除了上述技术指南外,下列基础性的技术指南也建议开发者认真学习:
  • iOS Human Interface Guidelines
  • App Programming Guide for iOS
  • View Controller ProgrammingGuide for iOS
  • Event Handling Guide for iOS
  • Xcode Overview
  • Debugging with Xcode
  • Testing with Xcode
  • App Distribution Guide
  • Internationalization and Localization Guide
  • Programmming With Objective-C或The Swift Programming Language (Swift 3)
  • Object-Oriented Programmming With Objective-C
  • Adopting Modern Objective-C

三、iOS Framework
    ios技术体系按照官方说法分为下列四层:
图2:ios技术层次结构

这些技术被打包成现成的Framework,供开发者直接调用。ios10共有91个 Framework,按照其功能可以分成基础类(Foundation)、数据类(DATA)、网络类(NET)、图形动画类(GRAPH)、音视频类(AV)、系统类(SYSTEM)、苹果特定业务接口类(ASI)、测试类(TEST)共八个类别。按照其难易程度可以分为初级、中级和高级。具体分布如下图(图中数字为该类型和等级Framework数量):
图3:ios Framework分类与分布
                              
       学习ios开发应由浅入深,循序渐进。掌握了初级框架就可以编写简单的ios程序了,包括简单的本地数据、图片、照片、音视频、地址簿、邮件、日程等的读写和显示。中级框架涉及面最广,包括所有类型框架,这里FOUNDATION、DATA、NET和TEST类又是基本的,涉及复杂数据类型、文件、数据库、各种网络连接、单元测试等,应尽量全面掌握,其它类型的框架可以根据兴趣或工作任务逐渐去学习或掌握。高级框架以图形、音视频内容为主,主要是提供了更低层和更灵活的硬件操作接口。仅在必要时再去深入学习即可。由此可见,一个初级ios开发者应掌握至少15个框架,一个中级ios开发者应掌握40~50个框架,一个高级ios开发者应掌握50~60个框架(至少包含10个高级框架)。具体各Framework的功能和分类见下表:
                                                               表1:iOS Framework 分类和简述

      综上所述,ios开发最基础的就是Objective-C或Swift语言、Foundation和UIKit框架中的基本内容及Xcode的简单使用;进一步就是数据库、网络、图形动画、音视频、系统安全和ios专用业务接口(如地图、加速器、健康、语音识别、Web.....)的调用和多线程的使用,此时对Xcode使用会增加单元测试、性能调优、Bug追踪等高级功能;最终达到能使用低层的Framework或动态库优化硬件性能或灵活处理复杂业务的目标。     
       ios开发学习的最好资料就是苹果的官方文档,包括各种技术指南、API参考文档和示例程序(Sample Code),要想成为高手,没有捷径,必须静下心来一点点看。本文只是将其做了一个分门别类的索引和说明,按照这个索引和自己的目标循序渐进地学习,你一定会更快、更好地成为ios开发高手!

以上所言均为个人学习体会,难免疏漏,不当之处敬请批评指正!

猜你喜欢

转载自blog.csdn.net/super_man_ww/article/details/79419791