2020年,iOS开发具备哪些技能让你变得更抢手!

492 阅读4分钟

目前对于iOS开发者来说,面试犹如见岳母,光了解“她女儿”还不够,最好能整点加分才艺,这样才能看起来比较顺眼!

今天就让我们来看看,2020年,有哪些除开基本底层原理之外的面试加分技能项~

音视频技术

准确的说,iOS的音视频技术,不是近些年才热门起来的,早在前些年直播火起来的时候,就一发不可收拾了,只是随着抖音等短视频瞬间火爆,同时把这一技术也推上了风口!

为什么依然推荐去学习音视频方面的技术呢,因为现在依然供不应求,从整个市面上来看,做iOS开发的同时具备音视频技术的开发者,大概占到1%吧!

那么说了这么多,应该具备哪些才能适应音视频相关岗位呢? (以下来源于某在职,iOS音视频开发工程师建议,目前薪资25K!)

  • 熟练掌握AVFoundation框架应用

    • 视频预览层的使用
    • 视频捕捉关于AVCaptureSession的配置
    • 实现前后摄像头切换
    • 实现摄像头自动聚焦曝光功能
    • 实现摄像头自动曝光以及锁定曝光功能
    • 实现摄像头手电筒和闪光灯模式的开启与关闭
    • 实现静态图片拍摄
    • AVFoundations实现视频录制
    • 获取视频缩略图实现
    • oiOS,人脸识别策略分析
    • AVFoundation人脸识别实现
    • AVFoundation二维码识别
  • 掌握视频编码底层原理

    • 视频封装(容器)格式
    • 常用视频和音频编码格式优劣
    • 直播项目流程
    • 直播和小视频架构
    • 泛娱乐和实时直播服务器架构
    • CDN网络
    • 视频编码IBP帧以及视频花屏卡顿原因
    • 帧内预测压缩和帧间预测压缩原理
    • H264 视频编码原理
    • H264结构与码流
    • H264数据VideoToolBox框架
    • NALU数据单元
    • AVFoundation实现直播/小视频音视频数据采集
    • YUV颜色体系
    • AVFoundation数据采集实现
    • VideoToolBox视频编码参数配置
    • VideoToolBox视频编码实现
  • 熟练掌握音视频开发工具封装

    • 直播/小视频音视频数据捕捉自定义工具类封装
    • 视频H264格式硬编码自定义功能类封装
    • 视频硬解码自定义工具类解码器初始化
    • 视频硬解码自定义工具类解码器解码实现
    • 解码视频数据渲染
    • 视频基于OpenGLES渲染屏幕
    • 视频渲染自定义工具类封装
    • 视频解码后渲染
  • 音频工具类封装

    • 频域遮蔽与时域遮蔽
    • 音频AAC编码
    • 音频AAC解码与编码自定义工具类
    • 音频裸流PCM播放

总结:

任何项目开发都需要团队合作,所以不要认为做音视频开发就必须掌握所有的技术点,才能够符合企业要求,这是能够让你最快的拓展技术领域以及提升竞争力的学习方向!

Flutter

Flutter 是 Google 提供的新一代跨平台方案,随着 Google 在 IO19 宣布 Flutter 支持 Web 平台,就标志着 Flutter 已经全面持所有平台(目前 Windows 的只是早期预览版本,未来有可能会支持 UWP),它提供了非常友好的文档来帮助各端的同学迅速地进入到 Flutter 的海洋中。同时它的完全开源也让其有了更快的迭代,更好的生态。

简单的招聘信息就能够看出,目前大部分企业对于flutter人才的需求,只不过薪资待遇的决定,要取决于所需求的研究层次!

这是某平台的flutter进阶课程学习路线,总结的比较全面,需要的小伙伴赶快拿走!

Swift

Swift是苹果于2014年WWDC(苹果开发者大会)发布的全新编程语言

号称借鉴了Objective-C、JavaScript、Python等语言的优点,目标做成一个简单、高效、强大的开发语言!

虽然就目前来看,大部分的企业需求,还是围绕在OC方向,但是从数据来看,慢慢的转向swift开发的企业越来越多,所以谁也说不好,是不是将来会变成代替OC的存在!

只能说,先做好对应的知识储备,以免技术红利期赶不上趟!

最后:

不管你是想要往哪个方向发展,优先了解底层是必须的,了解底层能够让你更轻松的转入新的技术领域!