为什么敲了许多年的代码,却仍然在原地踏步?| 程序员有话说

人的一生都在不断地学习,而作为程序员的更是从未停下对过新技术、新风口的探索,但在技术不断提高的过程中,我们总会发现技术储备的能力始终与技术大牛差之千里,几年前有一张华为总部大楼夜晚灯火通明的图,放在如今却成了不正确的代名词,可还是会有人讲:“那些奋斗的人,终会得到他们辛劳的硕果。”

技术不会在时间的沉淀中成长

就好比是一位赛车手,他不是顶级的F1赛车手,但与大部分出租车司机相比,无论是公路还是山地,驾驶能力都远超后者。其实他拿到驾照才不过7年。

而一位四十多岁的职业司机,生涯里的车程不会低于30000个小时。

他们之间的区别并不是由于训练方式和上手的车型不一样,也不是因为赛道是崎岖的山路,并非是拥堵的市区。

而是车手的目标是要一次比一次快,司机只需要安稳的到达目的地。

我们可以把出租车司机视作一位在行业内有很长时间沉淀的普通iOS开发者,赛车手可以视作一位中高级iOS开发者,他们在工作的同时间维度上并无太大分别,但学习的方式存在巨大的差异,在19世纪末期,这种学习方式就已经得到了系统化的分类。

同等的时间下学习方式可以分为三种:

玩耍:这个方式的最大特点,在于没有明确目标的开展行动,获得感在于内心的愉悦。例如和朋友一起打游戏,取得的胜利当然会令人愉悦,但哪怕是玩够10000小时,我们依然是路人水平。

工作:每个人最初进入行业都在这个阶段,除去某些特别的行业,工作中存在大量的重复性劳动,往往还存在工作内容之外的竞争使人分心。工作最大的特点在于有利益的驱动,每个人都在为了薪水而努力,当对于目前的薪水满意时,人们往往就会轻易的陷入舒适区从而进入重复劳动的阶段。

刻意练习:刻意练习,也叫做刻意训练,此类活动的目标只有一个,就是为了成为非同凡人的大师而存在,如果仅仅因为喜欢,反复训练后爱好会被消磨殆尽。刻意练习的过程往往极其枯燥,在过程中可能很难短期拥有获得感和存在感,很多人难以坚持下去。

我们都没有听说过五十岁还顶在一线的996程序员,也没有听说过五十多岁还在比赛的职业赛车手,普通司机和赛车手的区别到底在哪?小白和大牛的差距到底在哪?普通iOS开发者和中高级iOS开发者的学习方式在哪里有所不同?

就像是围棋的学习方法,在不同领域是适用性最强的,因为这项运动不分老幼,但顶级的棋手如柯洁,他的年龄并不大,但已经数次站在世界之巅,因为,职业棋手从不长时间下舒适区内的棋,提高技术只打谱,在刻意练习中,这种方法叫做学习定式。

学习定式

围棋19条交叉线路的361个网格里,每一个不同线路上出现的棋子,都是一个全新的问题,而破解问题最快的手段不是研究和推导,而是直接从最优解中选取合适当下落子情况的解题方法,称之为“定式”。

优秀的棋手从未在熟练运用一套定式后开始随心所欲地玩棋,而是在不断全新的落子复盘中,从最优解的定式中选取方案与之应对,这样永不停滞的学习方法造就了当下顶尖棋手,称之“学习定式”。

如果棋手数万小时不断打磨技巧的方法论一般,停滞在舒适区内的时间不属于通往大师的路,普通iOS开发者向中高级进阶的路从不是未知等待探索的局,是早有定式可言却又被无数人忽略掉最优的提高方法。

进阶自己,找到属于自己的定式

定式一:发散思维

我们要有善于学习不同语言和不抵触新技术的视野,保持对每个主流技术的关注与探索,以便更好地知道自己的学习方向。

定式二:修炼基本功

oj.leetcode.com现在也支持Swift了。总体难度适中,不像ACM那么刁钻。非常适合当做了解语言特性以及锻炼自己基本编码能力的地方。 虽然算法没有用但能写出算法的能力,很有用。这个训练能够潜移默化的提高你在平时写代码的速度。

了解FRP(Functional Reactive Programming),对应框架就是ReativeCocoaRxSwift,没错,这并不是必须的。但我还是忍不住要安利一下。这是能够最直接,最显而易见的提供你工作效率的框架。

定式三:坚持学习与分享自己

学习别人造的轮子 github上有很多优秀的开发者的源码,其中很大一部分都有极高的学习价值。 这里是一个集合的,你可以根据自己感兴趣的库进行学习。(记住是学习研究怎么实现是思考换你来做的话,你会如何做不是pod install然后跟着readme使用一下就完了),国内也有很多大神的框架值得学习,比如ibireme的YYKit。

造轮子 学得差不多了,就该自己造了。当你第一次以框架/Api设计者而不是使用者的角度来思考问题,也能够获得很多的收获。这一步能带给你能力的提升是最明显的,如果说定式二都是在韬光养晦的积累阶段。那造轮子,就是你在成为高阶工程师之路的收获阶段。贡献你的知识,把你的心得,领悟的东西写成博客。或者把你看过优秀的英文文章翻译成中文,方便后来的国内开发者们快速掌握。这并不是单纯的做好事,分享的过程,你能让你有新的感悟,学到新的知识,利人利己。

很多人在学习技术的时候担心自己起步晚,也有很多人在技术稳定时失去对未来的眼光,默然冷视因为年龄大被更新换代掉的人。

其实不妨想想,需要面对危机的是每个人,能够直视危机并找对自己进阶方向的人不但能够成为翘楚黑马,更能在竞争愈加激烈的行业内成为不可或缺的人。

到最后小编推荐一个群 691040931 里面有许多的iOS开发者在交流技术分享自己的心得,更有一些资料不定期的分享更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值