怎样提升自己的编程能力?

33 篇文章 0 订阅
9 篇文章 0 订阅

最近反思一个问题:自己编程两年多以来,为什么近期的编程能力没有较大的提升?日常自己也参与不少项目,gitHub 上提交了不少的代码,CSDN 上面也写了不少自己的见解。还是感觉编程中有些力不从心。

过去一段时间中参与了若干开源项目,github 上也提交了不少代码。csdn 上主要记录自己编程中遇到的报错问题,和常用的库的介绍,和学习笔记等。

正确的方法

看了一些论坛和大牛的观点,发现前一段时间自己的方向有偏差,正确提升编程能力的方法如下:

1、多读好书

书籍会系统介绍常见的知识点,读一本书比读100篇博客有用的多。博客的作者技能良莠不齐,所以可能陷入误区。对于基础知识点,阅读好书,学习在线课程,阅读官方文档(React的官网文档,最好是英文文档,中文很多翻译不准确)。这样逐步搭建自己的知识框架。

对于前端,需要阅读很多书籍(JS 、CSS、第三方库(React、小程序)、NodeJS、JS 数据结构和算法、还有计算机基础应用)很多书没有读过,所以下一阶段主要是看书!

如何读书?我觉得优先读基础知识(Javascript 基础语法,数据结构与算法,ES6语法等),这部分基础知识成熟,是其他所有知识的基础。之后根据工作需求,阅读相关的第三方库文档。实际上新技术层出不穷,现在非常熟悉 Angular 或者 jquery 也可能没有用武之地了,非常熟悉 JS 数据结构和算法,那么不管出现什么新技术新框架,上手都很快。

2、多参与项目

参与项目就会写很多的代码。这样可以让你明白学过的知识具体怎么使用,哪些知识比较常用,自己哪些知识学得不牢固。实践是检验真理的唯一标准,项目是检验知识的唯一标准。可以有针对性的参与项目(不同项目主要练习不同的知识点)

目前我在这个阶段。存在的误区:可能日常接触的项目只有某个方面(例如富文本编辑器),那么对其他的项目(数据可视化 echarts g2 等)就很不熟练。自己需要做到把经常使用的项目,具体的配置和注意点熟记,不常使用的项目,可以短时间内阅读项目并进行开发。

如果未来换到另一个项目组中,那么需要的就是之前的项目积累,或者去开发新的项目,这个就要求快速读代码的能力,快速参与到项目中,这是书本中缺少的。

3、多阅读源码

学习设计模式、学习数据结构和算法(基本的 leetcode 函数式编程,复杂的 VUE 或者 REACT 源码)很多所谓的视频教程推荐阅读源码,我想,如果不是专门写框架的工作,了解基本设计原理即可,更多的精力关注在业务和使用框架上,而不必深究 React 的源代码(世界上框架那么多,也不可能都读完)。

4、多使用非百度的搜索引擎

可以获取很多英文的参考资料,百度会减弱自己的英文能力。

5、做一个优秀的开源项目

一个alibaba的大佬告诉我,如果到了一定的水平(例如alibaba内部),大家基本功都很棒,那么自己怎样才能更胜一筹呢?关键就是自己需要有亮点!可以尝试做一个自己的开源项目,并且在 github 上有三位数的星星;这样才能独当一面。当然,现在自己离这个还有很远的路。小厂需要全部都会,大厂在全部都会的基础上,有自己的特长或者项目,可以快速上手完成需求。

2024年5月补充

6、重点学习基础原理

从2010年的 JQuery,2016年的 Angular,2020年的 VUE,2024年的 Vite 等,随着时间的变化,各种高级顶层的框架在不断变迁,同一个框架也发生了很多版本的升级等等。如果只学习框架,那么几年过去都会过时。所以我建议优先重点掌握基础原理,例如 JS 的基本语法、数据结构与算法、计算机网络等。2010年的算法和2024年的基本算法,差距不是很大(例如二叉树的遍历),不管框架怎么变,这部分基础原理是通用的。就算换了另一种语言,TS 等等,这些知识还是完全可以使用的,所以基础原理很重要。

7、多参与其他领域的项目

在一个环境比较久后,自己的知识体系和思维方式,就会局限在这个环境中,长期以来思维固化,坐井观天,不利于未来发展。所以有机会的话,一定要去其他领域的项目看看,这部分可以找其他 IT 的朋友多分享,参与线上的分享会等,大家一起交流,这样才能扩宽视野,避免落伍,避免思维固化。

  • 22
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值