前言:
2019是我第一次写年度总结的一年,也是我正式迈入职场的第一年。
(其实我18年就该写了...)
收获也很大,更多的是感恩和感谢吧。
从走出校园,到加入“奇虎360”。
之间发生了不少事,在此好好总结一下2019年的事情。前端
PS:而且我计划,从2019年开始的每年的年底都会写一篇博客做为总结。以便整理出来我在今年作了什么?给将来的我作个标记(打个Tag
)。这里学习我偶像bestswifter啦。git
刚开始学习的前五年是发展最快的五年,每年都应该感受到本身在过去的一年中发生了天翻地覆的变化。github
我对这句话深有感触。(bestswifter对我说过,冰霜大佬也对我说过...)面试
其实,我应该18年年底就该写总结的,当时没有想那么多,因此在19年的年度总结里,顺便也带上这两年的变化吧。算法
这一部分,我给本身打分是80分。编程
这一阶段应该属于2018年的,在我大三的时候,UIT(大学的创新实践中心)集体出去找工做。咱们广投简历,去全国各地各个大厂去笔试、面试。最终,咱们也分遍在了各个互联网公司,也收割了不少offer。
有腾讯,有阿里,有奇虎360,有京东,有盛大游戏,有美团等等等等,
也有一部分同窗去创业公司磨砺,都是本身的选择,
想一想大学在UIT和同窗们一块儿奋斗的日子,真的是感动与不易。尤为是我源哥,太牛逼了!json
我经过笔试和简历,并参与面试顺序:swift
今日头条(ByteDance) => 网易云音乐(NetEase)=> 京东商城(JD)=> 百度(Baidu)=> 奇虎360(奇舞团)=> ... =>
这时,我已经收割2个offer了,后来就想着打游戏、旅游了,想一想还真是放飞自我。。。浪就完事了呗。。。搞事情。。。安全
我在18年的秋招收到了京东和360的Offer。最终,选择了来奇虎360实习,并成功转正,正式加入了奇虎360。这样算下来,时间过得飞快,我在奇虎360也有一年半啦。(2018.7.16入职的)性能优化
这一部分,我给本身打分是60分。
感受本身不论经验仍是能力都还差很多,同时也但愿本身2020能多学点技术,多沉淀点经验。
在iOS领域里有深度(看一看runtime
、runloop
源码,总结落地成相关的技术博客,放个大招),同时根据兴趣拓宽本身的视野:WEB前端技术(Vue.js
、HTML
、JS
等)、服务端技术(Go
、Redis
、MySQL
等),会调其中API并理解其中的一部分原理就好。
成为一名T型人才(深度是iOS、广度是WEB前端和服务端)。
我始终认为,“兴趣”是学习的第一动力,“趋势”是学习的第二动力。
学习一门新技术、新语言、新知识,首先须要 “有兴趣” 。
其次,看这项语言、技术、知识是否符合当前行业的 “发展趋势” 。
若是:兴趣、趋势都符合本身的需求。那就大胆的去学吧,相信本身必定能在某个领域的研究过程当中,发现 “惊喜”。(当研究过程当中,发现一个惊喜的时候,经常会不自禁的笑起来,不知道你们有没有一样的经历。)
这一部分,我给本身打分30分。超级超级不及格!
我是一个挺直的理工男,除了技术上的书我能看得下去,像一些陶冶情操的小说呀彻底读不下去(我我的的劣势)。我也知道,有时候,读一些名著小说,对本身的生活阅历都会有帮助,我但愿我2020至少把《活着》读完吧。。(室友2019借我读的书,我才读了4分之1,我就又读不动了。。我真是完蛋。。)
关于技术上的书,说实话,我也没读多少,我我的感受2019年,我浪费了挺多时间的,我须要好好反省一下本身。我干啥去了??
大概有:
《Effective Objective-C 2.0》—— 进度:100%
—— 这是本好书,仍是我18年年底读的。
同时,也落地了8篇文章。这部分,我仍是挺满意的,文章也在简书、掘金、CocoaChina、公众号、小专栏等等平台作了推广。不管是阅读量和读者的反馈,仍是文章的质量,我我的都是挺满意的。
《图解算法》—— 进度:50%
—— 19年回学校参加毕设的时候,抽空研究了一下算法。
以后,就放那了,我对本身仍是挺不满意的。
不过至少看了点Python
,用Python
写了写算法。了解了一下“动态规划”的原理。并落地了一些算法相关的文章,通常般吧。
我算法太菜了。。仍是须要补。
《iOS 应用逆向与安全》 —— 进度:5%(几乎为0,翻了一翻)
—— 当时感兴趣入了,才看了几页,感受是安全方向的。
后期感兴趣再深刻看看,目前感受不太适合,可能我太菜了。
我仍是不太爱看书,书和文档都是好东西。能帮助我更深入的理解一些东西,但愿这部分,我在2020年能有所改善吧。
固然,也看了一些业界大牛的技术分享:
其中包括:
戴铭老师的《iOS开发高手课》—— 进度:20%。
干货多多,收获挺大的。感受很适合iOS进阶学习。
戴铭老师好像是前滴滴出行的iOS架构师,如今在阿里巴巴工做。太强了,膜拜。
我我的收获也很大,也参考戴铭老师的源码,作了一个iOS性能监控工具,落地了三篇文章,代码也在GitHub上开源了。 这里要感谢戴铭老师,收获太大了。
(PS:还加了戴铭老师的微信,真是开心。)
我偶像:张星宇(bestswifter)的《小专栏 —— 从iOS到全栈》。
星宇哥的博客,我从入门iOS开始(16年?)就开始看了,当时感受只要接触过iOS的开发者,就没有没听过bestswifter这个ID的。他太火了。
当时太弱了,他的博客看的不是很懂,(固然,如今也很弱,稍微能好一点点了,但感受和他仍是有很大的差距。他是我学习的榜样。)
他的博客干货不少,都是总结探索出来的一些干货。
19年12月,还有幸和他见了一面,我和他仍是老乡(都是江苏镇江的)。
能在北京见到偶像,仍是老乡,仍是同行,真的很开心。
咱们一块儿交流了一下午的技术,他向我介绍了字节跳动最新的移动开发平台和前沿的高端技术(太强了太强了,收获巨大),最后他还请我吃了晚餐。而后,我陪他溜了他的狗(CoCo),CoCo也太活泼了,哈哈哈哈哈...
向星宇哥学习,但愿之后能和他多多交流技术。他是我学习的榜样。
冰霜(halfrost):
霜神的博客,通常人是看不懂的。
就算是二般人也仅仅只能看懂一小部分。(认真的说)
都能看懂的人,也是神同样的存在了。。太强了
19年有幸加到了冰霜的微信,开心。(我也忘了我是怎么加到的...)
固然,还有不少不少业界大牛的分享...
这里我就不一一列举了,
在我入职场的第一年,就认识了这么多大牛,有的还加了微信,我仍是很幸运的。
2020,向榜样们学习!
按时间顺序,总结:
APP
、SDK
开发。当时实习,也是第一次接触到企业级的开发。成长仍是挺快的。
在帅哥、大成哥、永旺哥等老司机的带领下,我也从我的开发,切换到团队协做开发的阶段。
同时,也学习到了一些物联网底层的原理。(AP配网、蓝牙配网原理等等,对标腾讯的AirKiss
、华为的HiLink
、小米的AP配网协议等等,咱们本身也终于作出了咱们本身的配网协议,仍是挺厉害的。点赞)
这阶段收获仍是挺大的,首先是更加深入、熟练地理解并使用Objective-C
了。(虽然写这篇文章的时候,我已经写Swift
半年了,也几乎半年没写Objective-C
了)不过当时,的确感触挺深的,学习了不少在学校没有的东西。
学习了ObjC底层的一些机制以及相应的原理,并落地了一系列我很满意的文章: 《iOS 编写高质量Objective-C代码(一)—— 简介》
《iOS 编写高质量Objective-C代码(二)—— 面向对象》
《iOS 编写高质量Objective-C代码(三)—— 接口和API设计》
《iOS 编写高质量Objective-C代码(四)—— 协议与分类》
《iOS 编写高质量Objective-C代码(五)—— 内存管理机制》
《iOS 编写高质量Objective-C代码(六)—— block专栏》
《iOS 编写高质量Objective-C代码(七)—— GCD专栏》
《iOS 编写高质量Objective-C代码(八)—— 系统框架》
还有一些底层优化的研究:《iOS objc_msgSend尾调用优化详解》等等,在这就很少赘述了。都在个人博客里,总的来讲,收获仍是挺大的。
而后我就回学校,参加毕业答辩了,上半年结束。
19年下半年,我本科终于毕业了。四年的时光,想一想酸甜苦辣,更多仍是感恩感谢吧,感谢俊哥等等前辈带着咱们成长。
给咱们分享他的经验和经历,才让咱们这些“乡下人”有了“进城”的机会。
7月份回360,遇到了两个好室友,小胖和浩浩。
我和小胖都在奇舞团(360集团大前端团队),刚实习就认识他了,他性格很开朗、很阳光,哈哈哈哈。点赞,好评。
浩浩是搜索的服务端妹子,(我是前世修来的福分么?和妹子合租...仍是这么好看的妹子???hhhh)
我比较熟的异性朋友不多,她算为数很少的一个异性好朋友。我有时候有些内心话也会和她说,她总能给我很大的帮助。。谢谢浩浩。。。
下面,言归正传。
APP
的开发:后来,万里哥入职了,和我一块儿写这个APP。在APP整个架构层面,他给了我很大的指点。(万里哥仍是很强的,也能沉得下心,我有时候会比较浮躁。)
咱们的新项目是基于Swift
的,Swift
是2014年苹果才推出来的iOS开发新语言。
经历了五年的磨练,Swift 5.1
的API终于稳定了。 因而苦逼了多年的iOS开发者,正式由Objective-C
转向了Swift
。 Swift
在国外比较受欢迎,而国内,不少老项目仍是基于OC
的。
然而,Swift
必将取代Objective-C
成为iOS开发的核心语言。这也是行业趋势。
我有幸接触了Swift
,并在项目中成长、落地。这也应该是19年下半年比较大的收获。
项目中,也接触到了长连接WebSocket
、高德地图SDK等等等等。
这个工具,主要是我参考戴铭老师的源码写的。
有时候,读懂大牛写的源码,理解其中原理与本质,本身再重写一遍,也是一种收获吧。我是感触挺深的。
也落地成了文章,效果通常般吧。
感受没有18年底我写的 《iOS 编写高质量Objective-C代码》 🔥, 但也在不少平台上推广了,也主要是依靠戴铭老师的分享与指点。
我只是本身作了一些总结,并无很大的突破。相关文章:
《iOS 性能监控(一)—— CPU功耗监控》
《iOS 性能监控(二)—— 主线程卡顿监控》
《iOS 性能监控(三)—— 方法耗时监控》
固然,还有一些,iOS启动优化方案与小结:《iOS App启动优化(一)—— 了解App的启动流程》,也是从戴铭老师的技术分享学到的。
接下来的2020,我也会沉下心,尝试作一些 “性能优化” 的探索,并落地成相关技术文章。
QiShare是一个iOS及周边技术文章分享平台,由奇舞团(360集团大前端团队)的iOS团队运营。
而我是QiShare的原创做者、小编。
个人原创博客,也会在QiShare平台上落地、分享。 同时,我也担任了编辑等工做。 目前也有了1万5千多的粉丝。 能有如今的成绩,我感受也挺欣慰的吧。
说实话,我我的感受我19年成长并非很满意, 甚至我以为,我本身浪费了不少时间。
所以,我但愿本身2020能但愿作一些调整。
在我研究性能监控工具原理的过程当中,发现底层有大量的RunTime
、RunLoop
等底层知识,个人理解并不够。所以,我会在2020的刚开始,深刻理解RunLoop。
并落地成技术博客。
2020,我会把本身的一部分目光,集中在APP的 “性能优化” 方向。 同时,也会借此时间,接触底层的一些原理。
APP渲染原理?离屏渲染?
CPU?GPU?OpenGL?
如何优化?如何解决卡顿问题?
还有挺多不懂的地方值得我去探索,并落地成系列文章。
以前,用Python写了点算法。想把它捡起来,写个爬虫。
感受并不难,只是尚未实践过,想尝试一下。
想稍微接触一下服务端,
Go的语法并不难,只有25个关键字,关键是想学习一下服务端的架构与开发思想。
理解服务端的思想,会更加有助于本身对客户端开发的理解。
站在思考维度更高(更高的视角),而不只仅是拿json,画UI。
涉及到的东西挺多,Golang、MySQL、Redis、并发请求等等。(会用就行,能懂一些原理更好了)
想接触一下前端三大框架之一的Vue。
做为学习WEB前端的入口。
会调用API,会写UI。(会用就行,能懂一些原理更好)
Flutter
与SwiftUI
:但我我的并不看好跨端技术,
固然跨端确定有跨端的优点(好比,下降成本、一套代码在iOS、Android双平台通用、省人力)
但我始终认为,Flutter只是包裹在Android和iOS上层的一套画UI的API。
第一:
若是项目简单,APP逻辑不复杂,用Flutter实现双端开发效果会很不错。 同时,也会提升很多开发效率。
但若是项目复杂,APP逻辑复杂,好比一些超级APP,自己就须要清晰的实现和逻辑解耦,这时自己iOS与Android平台的差别,会让APP在后期的维护成本变得更高。(参考ReactNative
的发展)
第二:
APP开发过程当中,不免会接触到iOS的底层和Android的底层,须要开发者熟悉双端的底层,而现实中并不简单。维护起来,对开发者的要求较高。(固然,是我的见解,说的可能片面了,欢迎吐槽和讨论)
第三:
Flutter是Google的亲儿子,把手伸向了苹果。
一旦影响到苹果的生态圈,苹果确定会作出某些手段也说不定。(将来的发展并很差说,虽然苹果这几年创新力度并不如从前,但目前的市值仍是世界第一。)
所以,我我的认为:学习跨端技术不能盲目跟风,须要理性看待。
固然,看成兴趣,学一下跨端技术也是一种很好的,毕竟技多不压身。
每一段学习经历,都是本身的成长经历。
对将来的思考都是有帮助的。
SwiftUI是iOS 13
提出的一种全新的跨端UI框架(跨iOS、iPadOS、MacOS、WatchOS等等,主要针对的是苹果的生态圈)。
Combine是iOS 13
推出的响应式框架。
都是19年推出的,自己并不成熟,但也多是将来的一种趋势。 长远看,可能还须要2-3年的沉淀。
目前只是了解学习或者本身写小项目是能够的,投入到生产环境中,可能须要一段时间。
将来到底是什么样的呢?咱们拭目以待吧! (也许我明年写2020总结的时候,我就打脸了。。( ̄ε(# ̄)☆╰╮( ̄▽ ̄///))
最后,2020,让咱们一块儿加油吧!