知乎大神关于高级ios进阶
链接:https://www.zhihu.com/question/39597307/answer/82258462
在我个人的概念里面, 高级 iOS 工程师的定义,其中 iOS 只占了一半,这一半是熟悉 Objective-C、Swift、Cocoa、Xcode、App Store 等等,其实就是 语言 + 工具链 + 生态
另一半,是 高级工程师,高级工程师是什么样的已经有很多的讨论了。
![](https://pic3.zhimg.com/7692a69417efbc6b29c87c01b48095fa_200x112.png)
1. 先说OC部分
- 既然做了两年了,对Objective-C足够了解吗?OC是如何基于C来进行的封装?解释一下这两行代码啥意思?
typedef __attribute__((NSObject)) CGGradientRef GradientObject;@property (nonatomic, strong) GradientObject storedGradient;
- protocol、category这样的东西应该要手到擒来才是? 多线程部分的知识点掌握是否扎实?runtime这种黑魔法研究过没?代码足够优雅、后续维护容易吗?各种设计模式也得会吧?
2. 再说UI部分
- 既然写了两年的view,那么能快速仿造市面上这些主流App的UI吗?使用Reveal分析过微信、豆瓣、网易新闻、知乎、QQ、苏宁、淘宝、支付宝的UI吗?使用Charles去抓过他们的接口吗?
- UI研究稍微深一点,比如侧滑菜单这种要怎么实现?如果你要做实现应该要了解UIView和UIViewController,UIViewController和UINavigationController的关系了吧?我嘞个草,UIView一堆方法,UIViewController一堆方法,到底都是干嘛的啊?你难道不好奇?这块知识点一直是你的盲区,你能忍?我忍不了!
- UIView再往深了看,下面还有CALayer,你研究过没?为什么修改CALayer的某些property默认会有个动画产生呢?
- 那么Animation、UIKit Dynamics、Drawing、Graphics这些随便拎出来一个,够你研究一阵了吧?你看看比如网易新闻,在新闻详情页面上拉,回到新闻列表页面的这个动画做的出来吗?你看看QQ在电话通信页面,点击右下角缩放图标,缩放成一个头像的这种动画,你会做不?
3. 还有这些大的功能点
- 既然用了两年第三方类库,那么比如图片缓存这类,看过源码实现没?如果自己来实现的话,有哪些Caching Algorithms?该怎么取舍?各种常用的第三方类库你研究过原理没?
- 你的App在和服务器交流数据的过程中安全性怎么样?你是不是要研究一下加解密?HTTP理解的够清楚吗?想没想过自己来写接口?或者更甚至一些自己来写个简易的HTTP服务器?接口部分甚至用CGI来实现也可以啊!
- 要写服务器,那应该要了解一下网络部分吧?TCP/IP 协议得熟悉吧?然后Wireshark各种抓包得会吧?
- 网络这块顺带过来之后,即时聊天类的App采用的什么技术?选 xmpp 还是 mqtt 还是自己写?正好可以顺势了解一下吧!
- iOS SDK里面的各种API你掌握到了什么程度?这些功能模块排除地图、通讯录这种,说些高级的比如CloudKit、Extensions、TextKit、AirDrop、PassKit?觉得这些模块在自家公司的项目中压根没用过?可是看看你手边的App!
4. 其它专业化的方向
- 视音频处理做过吗?此类诸如豆瓣FM、虾米音乐、喜马拉雅、QPlayer这类的App你去研究过他们吗?还有VoIP这类的,我实习的时候做过这种╮(╯_╰)╭
- 游戏开发方向有没有兴趣?自己有没有去研究过呢?(反正这个我是真没有╮(╯_╰)╭)
5. 项目安全优化等
- 项目中写单元测试吗?UI Automation 自动化测试做的怎么样?持续集成平台诸如Jenkins等会用吗?
- App的各种性能优化、Crash的统计分析等等你做了没?
- App本地数据储存够安全吗?你对逆向了解多少?敏感部分是否做了代码混淆?
6. 知识体系要持续更新
- 官方的文档、国外的相关书籍采用的语言都是Swift,难道你不准备学学?除了native的,现在的HTML5也很火啊,难道不准备学?
- 英文练习的怎么样了?官方所有的开发者文档以及历年的WWDC视频看完了?这么多书,这么多大牛的博客,你难道从中一无所获?
官方1k多的文档不说,发下我的部分书单给你看看吧:
<img src="https://pic3.zhimg.com/7692a69417efbc6b29c87c01b48095fa_b.png" data-rawwidth="558" data-rawheight="810" class="origin_image zh-lightbox-thumb" width="558" data-original="https://pic3.zhimg.com/7692a69417efbc6b29c87c01b48095fa_r.png">
知乎大神关于高级ios进阶相关推荐
- [转]知乎大神YaqiLYU关于tracking方向的2013-2016趋势总览!!!强烈推荐!!!
真真实实的学习tracking也有半年了,tracking的主流趋势年年改变,每年都有新的突破.从CT.IVT到struck,到TLD.到CF,再到火热的CNN也应用到了tracking领域.作为初入 ...
- 做知乎大神不如做个知乎,问答社区建站工具——WeCenter
"--是一种什么样的体验?"."如何看待/怎样评价--?"爱逛知乎的朋友对这些话题格式肯定不陌生,现在知乎大火,越来越多的人开始在网络上分享知识.经验, ...
- python 知乎美女_知乎大神用Python爬取高颜值美女(爬虫+人脸检测+颜值检测)
原标题:知乎大神用Python爬取高颜值美女(爬虫+人脸检测+颜值检测) 1 数据源 知乎话题『美女』下所有问题中回答所出现的图片 2 抓取工具 Python 3,并使用第三方库 Requests.l ...
- 高中毕业学计算机知乎,高中毕业学点什么好?知乎大神这么回答!
原标题:高中毕业学点什么好?知乎大神这么回答! 马上就要面临高考,知乎上经常有人问"高中毕业学什么技术好?",很多人都评论说"高考只是人生的的其中一个选择,无论考上还是考 ...
- 心理学博士vs计算机博士,心理学博士、知乎大神告诉你怎么成为一个厉害的人...
你是否对现状不满,而又找不到出路,flag立了一个又一个,还是没有改变,间接性努力,持续性混吃混喝,反倒是身边的一些朋友在悄悄地改变. 前同事小王裸辞后成为自由撰稿人,时间自由,经济独立,随时可以来一 ...
- python 知乎美女_知乎大神教你用Python爬取网站美女图,附代码!
都知道Python的抓取功能强大,可以帮我们从海量的数据中爬取所需要的进行分析.下面,就给大家分享知乎大神怎么用Python爬取高颜值美女! 1.数据源 知乎话题『美女』下所有问题中回答所出现的图片 ...
- 漫画|小白到大神程序员的进阶,都是什么生活状态?
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送 本文转载自「 Python爱好者社区」 "你知道张江凌晨四点钟是什么样子吗?& ...
- android模拟器 知乎,安卓模拟器排行榜 知乎大神评测速度多开哪个好
现在的安卓模拟器有好多种,虽然有好多款软件缺乏用户已经停止更新,但是现在市场上可以供人选择使用的产品依旧还是有好几款.如何在这些安卓模拟器里面挑选那个最好用最适合自己,怎么样才能让自己玩手游的时候体验 ...
- 机器学习:3 个知乎大神回答、5 个新人常见问题和 3 个学习规划
最近一位转型 AI 的朋友抱怨,"走过的最远的路,就是机器学习过程中的弯路",然后开始各种 blablabla,从论文的坑,到模型的坑,再到培训的坑-一路吐槽. 文章来源于AIQ ...
最新文章
- 重磅 | 李飞飞最新演讲:ImageNet后,我专注于这五件事——视觉理解、场景图,段落整合、视频分割及CLEVR数据集
- 《快学 Go 语言》第 5 课 —— 神奇的切片
- file_get_contents(php://input)的使用方法
- 【Prometheus Pushgateway】 推送数据踩坑
- 如何书写高质量的jQuery代码
- python flask分页_flask 分页
- Java中ArrayList的使用
- ajax利用FormData、FileReader实现多文件上传php获取
- wordpress主题安装
- woocommerce产品选项描述修改_简历修改服务:中文修改、英文修改、中英互译、简历定制,名师一对一指导修改!...
- 开源中文bi_odoo:免费开源ERP入门与实践
- 如何复制PDF文件中的文本和图片?
- 蓝桥杯省赛 2021 杨辉三角形 python
- 蓝桥杯 入门训练 Fibonacci数列 JAVA
- 柳如是,当得奇女子。
- 看院线电影就用移动电影院V2.0App
- 缺少msvc140.dll解决办法,缺少任意dll文件的解决办法
- 【Python脚本抢红包】用Python写了一个自动抢红包工具,今年过年准备大干一场
- [Linux] Bash中大括号和小括号的使用
- 春分节气介绍PPT模板
热门文章
- 10个技巧!实现Vue.js极致性能优化(建议收藏)
- 亚马逊好评点赞需要注意些什么?
- C++基础(3)——for循环案例
- 分析算法时间复杂度---渐进表示法
- centos yum 安装java_CentOS下使用yum命令安装Jdk
- 2021最新超人社区二手跳蚤市场 V6. 6.2版
- 微信小程序 textarea读取到的文本换行问题 以及保存回车换行到后台数据库
- html div 内部左右布局,div布局大全
- Java基础练习(十一)LidkedList使用,Set集合使用,Map集合使用
- 如何添加表情包到博客文章