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

2.通知(Notification):Notifications;Local and Remote Notification Programming Guide

3..目标/动作(Target/Action):Target-Action in UIKit

4.沙盒技术:App Sandbox Design Guide

5.MVC架构:Concepts in Objective-C Programming;Design Guidelines for MVC Applications

6.iCloud存储:Transferring Data to and from iCloud

7.块(Block):Creating a Block;

8.自动布局(Auto Layout):Auto Layout Guide

9.KVO/KVC:Key-Value Observing Programming 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开发高手!

文章来源于互联网:ios知识架构

阅读全文
下载说明:
1、本站所有资源均从互联网上收集整理而来,仅供学习交流之用,因此不包含技术服务请大家谅解!
2、本站不提供任何实质性的付费和支付资源,所有需要积分下载的资源均为网站运营赞助费用或者线下劳务费用!
3、本站所有资源仅用于学习及研究使用,您必须在下载后的24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担!
4、本站站内提供的所有可下载资源,本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发),但本站不保证资源的准确性、安全性和完整性,用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug!如有链接无法下载、失效或广告,请联系客服处理!
5、本站资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您的合法权益,请立即告知本站,本站将及时予与删除并致以最深的歉意!
6、如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
7、如果您喜欢该资源,请支持官方正版资源,以得到更好的正版服务!
8、请您认真阅读上述内容,注册本站用户或下载本站资源即您同意上述内容!
原文链接:https://www.shuli.cc/?p=15807,转载请注明出处。
0

评论0

显示验证码
没有账号?注册  忘记密码?