如何成为一个更好的开发者

文章持续更新,微信搜一搜「  吴亲强的深夜食堂 」

以前看过一篇文章工程师应该如何学习,估计不少人都看过了。最近恰好在思考一些事情,我也来写写。编程

真正的成功者是在练习中慢慢积累起来的。微信

你在看大佬文章的时候,也许已经意识到了这一点。看到他们在作的一些事情,你就会想:架构

我不知道这我的为了实现目标付出了多少努力。学习

编码也不例外。若是你想要成为一个顶尖的工程师,你必须时刻地练习你的技能。编码

我主要会这么作。设计

目标

这是我的的信念,它也许能引导着个人一辈子。不管是从我的的角度仍是从职业生涯,咱们老是须要每一个阶段为本身设置一个的目标,而后去干掉它。blog

好比,你能够:源码

  • 建立一个你一直想要建立的应用程序。
  • 认真看完一本你想看的书并进行独立的输出和思考。
  • 学习一门本身感兴趣的语言,经过它实现一个功能也好,仍是把以前老项目重写。
  • 列举公司项目或者本身项目中的缺陷、痛点,经过思考、查阅资料、设计方案、落地完善系统。(别和我吹牛你的系统没问题)
  • 参与开源

......社区

定目标的时候,不要太过于抽象,最好是一个可视化的目标。基础

另外设置目标的难度应该是超过当前能力范围,可是这个幅度不能过大,不然会脱离实际意识,咱们就会称之为:劝退师。

若是目标很庞大,那么就须要进行拆解,就和咱们系统模块同样,能够进行划分。目标也同样,能够进行拆分。设置一个总周期,那么相应的,阶段任务也就出来了。

更重要的是这个过程,过程才是目标的意义所在。结果只是意料之中的附属品。你永远也不知道这个过程能给你带来什么?打通任督二脉也不是不可能。

有些话我仍是挺喜欢的。种一棵树最好的时间是十年前,其次是如今。

对于编程来讲,空想是最没用的,必定得经过不断的练习。另外,延迟知足感是一件很重要的事情,当你以为本身愈来愈菜的时候,多是你愈来愈强的时候。

为何是可能呢?

由于,也许你是真的菜。

我记得初入职场的时候,忘记实现了一个什么功能性的东西,那时候以为本身好牛逼,如今我只想说:草率了。

输出

在实现目标的同时,必定会赶上本身不会的,从不会到会到熟练掌握存在一个过程,它也是一个个阶段。每个阶段你都须要去总结分析你所学到的技能,如何知道本身的掌握程度?那必定是输出。输出的方式不少,好比:

  • 单纯写 blog 给本身看,可是只存在本身的认知。
  • 社区写文章分享。帮助别人的同时,可能有人能指出你的问题,或者提供了不同的角度。
  • 经过掌握的知识点写程序或者应用到实际项目中。
  • 组内分享。
  • 开源社区线下分享。(估计已是大佬级别了)

多看书多阅读开源代码

目前公众号内卷比较严重,加上你看别人的文章都是别人学习、吸取、总结的最终产物。对于某个不了解的知识点,仍是须要先看一手的资料。在这个基础上,回头看做者的文章,也许会有不同的体会。

另一篇文章因为篇幅限制或者侧重点的选择,每每会比较片面。这时候更应该看书了。你能吸动 <<TCP/IP详解>>的书,你看不懂别人写的阉割版 TCP/IP 文章?

至于源码,我以为得从实际出发,好比项目中使用到的优秀库或者最近任务涉及到的技能想看别人的实现。总体架构?底层原理?设计细节?为何要这样设计?只有了解底层原理,用起来才能更加舒心。从使用到原理,说不定后面有对应的需求,还会进行扩展,提交 PR,一举成为 Contributor。

总结

编码不是彩票,并不能一晚上暴富。它是一个缓慢的过程,若是你能天天坚持向着目标学习,也许短期你看不到任何可视化的效果。可是一年,两年.....,当你回头想一想一年前的本身是否是个傻逼,你就看到成长了,话糙理不糙。

相关文章
相关标签/搜索