iOS开发学习路线

     初级iOS开发 iOS中级开发说白了,就是你学会了基本的UI界面搭建,上架,沉淀一段时间,你以为本身还适合这门行业,还适合,还能接受 这个所谓的iOS开发工程师的行业.你就能够说是一名中级iOS开发. 这个沉淀时间 大约在1年的实际工做中,就能够完成.

     若是你以为这门行业不适合你,请仔细结合自身状况,是否转另外一门计算机语言,仍是完全转行. 是否了解AFNetworking 的实现原理 html

     是否了解SDAutolayout/Masonry 一种布局库的原理 前端

     是否可以处理基本的iOS崩溃缘由/没法编译缘由/没法上架缘由?python

     是否拥有了必定的工做效率,稳定的工做效率.(而不是说,上面派了一个活下来,忙都忙不完,每天加班,还一堆bug) ios

     是否可以处理第三方库引发的崩溃.  程序员

     是否能够很好的融入工做环境,完成每一阶段的工做指标,而不会让本身疲惫不堪.  算法

     Xcode的使用 数据库

     第三方库的灵活使用 ,AFN ,MJRefresh ,各类网站的使用  。设计模式

     说明:做为一名初级的iOS开发,你须要具有如下技能 必备技能(所有都会的状况下查看下一项) 如何判断是否能够升阶 浏览器

     结论 中级iOS开发 如何判断是否能够升阶 服务器

    结论 应用的内存处理 应用的推送处理 应用的模块化/单元测试 应用的第三方集成/集中化管理/稳定迭代 阅读强大的第三方源码/拥有快速上手新的第三方库的能力. 

    可以接受各类新功能的开发(这里是指,即便你没有作过,可是你仍然能够凭借着学习,解决任何业务需求:例如:蓝牙.AR.摄像头.硬件交互.等) 清楚明白数据的传递方式,应用与后台如何交换数据,交换数据的过程,结果,格式. 多线程的灵活使用. 

    各类并发事件的处理/以及界面的合理性/流畅度 设计模式的灵活使用. 说明:做为一名中级的iOS开发,你须要具有如下技能 必备技能(所有都会的状况下查看下一项) 高级iOS开发 应用的组件化/架构分层 数据结构,操做系统,计算机网络都有本身的了解和认知 Shell脚本/python/Ruby/JS 至少会一种.

     说明:做为一名高级的iOS开发,你须要具有如下技能(我不是高级开发,因此这里只能给大家提供建议.) 

     必备技能 详细学习路线 学习路线 

     简介 这里只简单阐述一些概念性的东西,以及学习路线规划,真正的知识请从iOS基础知识点往下开始看. Objective-C 介绍 概念 编译原理 程序启动原理 结束程序. 监听系统事件 Info.plist .pch App组成 打开程序 执行main函数 执行UIApplicationMain函数 初始化UIApplication(建立设置代理对象,开启事件循环) 语法.(此处定义可能略失严谨,口头教学为主) 基础语法 对象. 属性 数据类型 方法 继承 Frame/CGRect/CGPoint和CGSize 内存(针对MRC下状况进行介绍) ARC/MRC 弱引用/强引用 Assign,retain,copy,strong import 和@class的区别 Xcode使用          首先是针对Xcode菜单栏,但愿本身能够去翻译一下每一个菜单里每项功能的英文都是什么意思,有助于本身熟悉并加深印象的使用Xcode. 熟悉Xcode的各个功能. UIKit控件. 界面分析(下载App进行学习). 界面适配 在这里推荐有兴趣的开发人员,下载并分析,AppStore中的每项分类的top50的应用,多学习大公司以及流行应用是如何开发应用的,其中流行的,新颖的开发界面的方式能够总结下来,猜测在大应用中,别的程序员是如何开发的. 代码架构.  

     代码架构文章推荐:https://casatwy.com/iosying-yong-jia-gou-tan-kai-pian.html 各类工具、第三方的使用. 其实每一个项目的创建都大体分为:项目框架搭建,原生界面搭建,嵌入第三方库.有不少功能都会用到第三方库,大多数第三方库都是本着快速开发,完整功能实现的目的存在的.须要开发人员可以根据业务逻辑不一样,选择最好最优质的第三方库进行使用. 代码封装  

     当使用较多第三方库后,要求开发人员学习其开发特色,以及其封装手法,运用在本身的项目上,封装本身的代码.灵活运用. 完整项目.     

     开发技巧 我的心得 iOS基础知识点  

     iOS基础知识点 

     如何学习iOS 开始涉猎不止于iOS领域中的知识,会去了解相关职位的基础知识,例如前端和后台或者服务器运维,或者项目相关知识,具体往本身的职业规划靠拢 

     多看开源或者注明的第三方库. 收藏并阅读各类大神的博客或者论坛. 开始考虑项目中的细节优化,内存处理和耗电状况 打好基础,学习OC中各类经常使用语法. 

     学习如何上架,上架会由于什么被拒,了解App上架规则. 多学习官方说明文档. 刚刚入门(如何学习) 刚刚入职1年(如何稳定) 入职3年(如何进阶) 框架的学习 AFNetworking SDAutoLayout YYKit SDWebImage MJRefresh MJExtension Bugly Qiniu Masonry TZImagePickerController Hyphenate_CN 第三方框架 

     苹果自带框架 基础UI控件 UILabel 标题栏 UIButton 按钮 UIImageView 图片视图 UITextField 文本输入框 UITextView 文本展现视图 UIProgressView 进度条 UISlider 滑动开关 UIGesture 手势 UIActivityIndicator 菊花控件 UIAlertView(iOS8废除) 警告框 UIActionSheet(iOS8废除) 操做表单 UIAlertController(iOS8出现) 警告视图控制器 UIScrollView 滚动视图 UIPageControl 页面控制器 UISearchBar 搜索框 UITableView 表视图 UICollectionView集合视图 UIWebView网页浏览器 UISwitch开关 UISegmentControl选择按钮 UIPickerView选择器 UIDatePicker日期选择器 UIToolbar工具栏 UINavigationBar通知栏 UINavigationController通知视图控制器 UITabbarController选择视图控制器 UIImagePickerController相册 UIImage图片 Xcode的使用 内存监测 全局断点 全局搜索替换 界面适配 StoryBoard 界面预览 基础操做 状态栏 偏好设置 Xcode Source Control 源代码管理器 Xcode workSpace工做组 Xcode Scheme 计划 Xcode AutoLayout 约束 Xcode CoreData数据库 LLDB 断点调试 数据存储 沙盒存储 NSDictionary归档 NSUserDefault CoreData NSKeyedArchiver SQLite FMDB plist App生命周期 alloc init 建立View ViewDidLoad ViewWillAppear ViewDidAppear ViewWillDisappear ViewDidDisappear 视图将要消失 (作一些视图将要消失时的UI的处理) 视图已经消失 (作一些视图消失以后数据的处理) viewDidDisappear销毁定时器 dealloc didReceiveMemoryWarning 控制器生命周期 应用生命周期 开发者帐号&上架流程 我的 公司 企业 https://www.jianshu.com/p/6601a241da8e https://www.jianshu.com/p/7c98651d3532 https://www.jianshu.com/p/9b994a019ee6 文章推荐: 经常使用知识 响应链 异常捕捉 国际化 代码模块化 类别/扩展 iPad与iPhone的区别 静态库 内存管理 Quartz2D 真机调试 isKindOfClass 与 isMemberOfClass Return/Break/Continue Core Animation CALayer AutoLayout KVC/KVO 谓词NSPredicate 帧动画 界面旋转+状态栏隐藏 plist文件 通讯 NS系列 宏定义 视图层次 切换视图 深浅拷贝 对象序列化 写入文件 获取沙盒路径 翻转视图 延伸视图 九大基本数据类型 九宫格 坐标比较 UIColor 、CIColor和CGColor 之间的关系 画图 静态变量 tag值 延时执行方法 中级知识点 设计模式 UIScrollView/UITableView/UICollectionView 的嵌套 动态行高 通知/代理/block 程序启动原理 触摸事件/手势 图文混编 Runtime NSRunLoop GCD ReactiveCocoa开发 3DTouch 界面渲染 Charles花瓶抓包 区分模拟器/真机项目 经常使用知识 Block 蓝牙/传感器 物理仿真器UIDynamic 通信录获取 音频/视频/二维码 真机调试 苹果内购/广告 推送/远程推送 单例模式 多线程 网络请求 定位 源代码管理Git iOS高级知识点 iOS高级知识点 Socket XMPP 加密 MD5详解 Base64加密解密 RSA非对称加密 AES对称加密 音频 基础 Core Audio Audio Toolbox OpenAL AVFoundation Speex语音聊天 AudioQueue/AudioSession Speex简介 视频 AAC视频.H264推流 P2P传输 直播 RTMP协议 RTMP直播应用与延时分析 若是作一款inke版的App 推流发布和播放RTMP FFmpeg 基于FFmpeg的推流器 HLS流媒体传输协议(HTTP Live Streaming) FFmpeg ijkPlayer 直播的技术分析与实现 算法 简介 冒泡排序 快速排序 插入排序 归并排序 二分查找 希尔排序 动态规划 堆排序 官方Kit ARKit. SiriKit HealthKit HomeKit SearchKit IOKit PDFKit CloudKit GameplayKit SpriteKit SceneKit MusicKit ResearchKit MapKit StoreKit AVKit 

来源:本文为第三方转载,若有侵权请联系小编删除。 

相关文章
相关标签/搜索