iOS开发进阶

来源:互联网 发布:java saas 开源框架 编辑:程序博客网 时间:2024/06/01 09:44

1.OC部分

Objective-C足够了解吗?

OC是如何基于C来进行封装的?

@protocol @category这样的东西应该要手到擒来?多线程部分知识点掌握是否扎实?runtime这种黑魔法研究过没有?代码足够优雅、后期维护容易吗?各种设计模式也得会吧?

2.UI部分 

既然写了两年多的view,那么能快速仿造市面上这些主流AppUI吗?使用Reveal分析过微信、豆瓣、网易新闻、知乎、QQ、苏宁、淘宝、支付宝的UI吗?使用Charles去抓过他们的接口吗?


UI稍微研究深一点,比如侧滑菜单这种要怎么实现?如果你要做实现应该要了解UIViewUIViewController的关系吧?UIView一堆方法,UIViewController一堆方法,到底都是干什么的?


UIView再往深了看,下面UIKit DynamicsDrawingGraphics这些随便一个都可以研究一阵子,比如网易新闻,在新闻详情页面上拉,回到新闻列表页面动画。扣扣电话通信里面,点击右下角缩放图标缩成一个头像 


3.还有一些大的功能点 

图片缓存源码看过没,如果是自己来实现怎么实现,有哪些CachingAlgorithms?该怎么取舍?各种三方库的原理是什么?


App在和服务器交流数据的过程中安全性怎么样?研究一下加解密?Http理解的够清楚吗?想没想自己来写接口?或者更甚至自己来写个HTTP服务器?接口部分甚至用CGI来实现 


要写服务器,应该了解网络部分,TCP/IP协议得熟悉吧?然后各种抓包工具需要掌握 


即时聊天App采用的是什么技术?选xmpp还是mqtt还是自己写?


iOS SDK里面的各种API掌握到了什么程度?这些功能模块排除地图、通讯录这种、说些高级的比如CloudKitExtensionsTextKitAirDropPassKit?


4.其他专业化方向 

视频处理做过吗?此类诸如豆瓣FM、虾米音乐、喜马拉雅、QPlayer这类App有没有研究过?还有VoIP这类的


5.项目安全优化 

项目中写单元测试吗?UI Automation自动化测试做的怎么样?持续集成平台诸如Jenkins等会用吗?


App的各种性能优化、Crash的统计分析等等做过没有?


App本地数据存储够安全吗?你对逆向工程了解多少?敏感部分是否做了代码混淆?


6.知识体系要持续更新

官方的文档、国外的相关数据采用的语言都是Swift除了native H5也很火

历年的WWDC视频  


补充一个非常重要进阶知识板块:App架构设计 

MVC耳熟能详 MVVM 

1 0