每天下班回家,我都会在自己的房间里,打上一局王者,放松一下 ,打着打着,突然发现——玩王者,和写代码这事儿,居然一模一样!
无论是上分还是技能升级,本质都是“理解规则 + 不断精进 + 合理选择 + 培养意识”。 下面这几条,真是越想越像。
玩王者,谁都有一个“本命英雄”。有人钟爱露娜月下无限连,有人偏爱程咬金莽出天际。
真正的高手,不是全都会一点,而是把一个英雄玩到极致。
我的本命英雄是杨戬,他的一技能切入,快准狠,二技能是真伤输出,三技能回血。
玩杨戬的快感,不只是连招的顺滑,更是那种看准时机、一气呵成斩杀敌人的满足感。

杨戬一闪.gif
我玩杨戬已经接近 800 场,没啥游戏天赋,但我想:如果把这个英雄玩精通了,那么即使天赋有限,我依然可以取得不错的成绩。
按照这个思路,我基本只玩一个英雄,为了对位取得优势(熟悉其他英雄技能),才会偶尔练习在其他英雄。
通过这种方式,我的杨戬达到一定的熟练度,胜率接近 60 % 。
回到编程,我最喜欢的技术是消息队列。
为了深入学习,我阅读了 Kafka、RocketMQ、MetaQ 的源码,还经常观摩 阿里云 ONS 和开源项目 rocketmq-spring SDK 的设计。
学习 RocketMQ,不只是掌握消息队列本身,它还能让你顺便掌握很多关键底层技术:
你可以涉猎前端、后端、算法、运维…… 但最终让你脱颖而出,往往是你钻透、精通的那一类技术。
比如:
浅尝辄止的全才,不如专精一门的专家。
换句话说,钻研一个技术栈,不仅让你精通它本身,更能为你打开一扇通向整个技术体系的大门。

技能.jpg
玩王者前,你会选 闪现、治疗、惩戒还是斩杀?这可不是随意的,而是要看阵容、看对面、看节奏。
以 杨戬 为例 ,曾经有 闪现 VS 斩杀 两个流派之争 ,但随着三体人越来越多,斩杀也渐渐销声匿迹了。
像我单排时,还是会根据阵容选择召唤师技能,偶尔也会使用斩杀。
当对面有多肉英雄且不灵活,绝大部分团战时利用斩杀可以取得优势。
写代码也一样,不同的场景,选择不同的技术方案才是最优解:
高手都懂得 因地制宜,菜鸟才会 一招鲜吃遍天。
当我一直停留在王者五星时,一直上不上去,后来发现会玩的杨戬主播是通过三指操作提高命中率。

如图,当目标处于我的上方时,杨戬的 1 技能还是比较容易命中的,但是在目标处于屏幕下方时,玩家就无法获取敌方信息,非常影响预判和命中率。
最好的方法是: 三指操作。左手食指按小地图,然后拇指控制移动,

三指操作.jpg
我使用三指操作,一般用于追杀 、伏击、绕后,可以大大提高杨戬狗的命中率 。
回到编程,你以为高手靠框架?其实他们靠的是扎实的计算机理论基础:
理论是内功,没有它,再炫的框架也只是皮毛。
笔者刚入行的时候,只是机械性的完成任务,并没有思考代码后面的资源占用,以及有没有可能产生恶劣的影响。
随着见识更多的系统,学习开源项目,笔者慢慢培养了一种习惯:
其实,这和玩游戏差不多 ,在玩游戏的时,我们经常说一个词,那就是意识。

上图,后裔跟墨子在压对面马可蔡文姬,看到小地图中路铠跟小乔的视野,方向是往下路来的,这时候我们就得到了一个信息。
知道对面的人要来抓,或者是协防,这种情况我们只有两个人,其他的队友都不在,只能选择避战,强打只会损失两名“大将”。
通过小地图的信息,并且想出应对方法,就是叫做“猜测意识”。
编程也是一样的,我们思考代码可能产生的系统资源占用,以及可能存在的风险,并做好防御性编程,就是编程的意识。