如何学好编程?

学好编程是一个系统性的过程,以下是一些建议,可以帮助你更好地学习编程:
### 基础准备
1. "了解编程基础":了解编程语言的基本概念,如变量、循环、条件语句等。 2. "选择合适的编程语言":根据你的兴趣和目标选择一门编程语言,如Python、Java、C++等。
### 学习步骤
1. "理论学习":通过书籍、在线课程、教程等学习编程语言的基础知识。 2. "动手实践":通过编写小程序来实践所学知识,比如计算器、待办事项列表等。 3. "阅读代码":阅读他人的代码可以帮助你学习不同的编程风格和解决问题的方法。
### 深入学习
1. "数据结构与算法":学习如何有效地存储和组织数据,以及解决问题的算法。 2. "框架和库":了解并使用框架和库可以加快开发速度,提高效率。 3. "版本控制":学习使用Git等版本控制工具,以便于代码管理和团队协作。
### 提升技能
1. "项目实践":参与实际项目,将所学知识应用于实际中。 2. "代码审查":通过审查他人的代码来提高自己的编程能力。 3. "参加比赛":参加编程比赛可以锻炼你的编程速度和解决问题的能力。
### 持续学习
1. "关注新技术":编程领域不断进步,了解新技术可以帮助

相关内容:

lass="xiangguan" id="content">

马上又结束一段职业旅程,即将踏上新的征程。回首25年的学习与工作经历,历经3年嵌入式开发,从8位单片机的系统开发干起,甚至还包含了一颗CPLD;再到MSP430的16位单片机;后来又搞32位ARM的开发版,当时还是三星的44B0和2410,可惜三星的一把好牌打了个稀巴烂;再后来再做C/C++在UNIX和Linux的3年开发,玩遍了常见的服务器操作系统HP-UX、AIX、Solaris、Linux、Windows等系统;再用C#做排版软件、防伪SaaS平台、创业媒体“创业帮”的第一版网站、博客、远程实验系统;后来又学Java搞大数据平台、用Javascript写小程序做智慧中医;如今又学Rust搞服务器后端和嵌入式开发;学遍了常用的各种语言并在商业项目中应用。多少还是应该有点儿心得,简单整理下二十年多年的学习编程经验,分享给编程爱好者和软件工程师们。

一、看书

其实我开始学编程学的是C语言,当时的大学课程,虽然有老师上课,但大学的课就是上课而已,好像听懂了好像没听懂,也可能是听懂了没记住,反正一上机写就是一堆错误,然后错误又不会解决,也没有别的资源可用,就是不断地看书不断地练。看课本,在图书馆借书看,然后在机器上练,就是硬学。可能是形成了自己的学习方法,后来自学C++、Java、C#、Javascript、Python、Rust都是看书。

学编程看书主要是:

1)语言类的书:读一本完整讲解语法的书;

2)软件工程类的书:学习该语言的一些常用技巧、编程模式;

3)应用类的书:看一下该语言主要适合做哪类应用,如何实现,以后用到可以知道去哪儿查。

具体的书就不再单写了,几年前写过几篇博客,总结了一下,要想成为一名好的程序员应该读哪些书:

程序员修炼必读书单(一)
程序员修炼必读清单(二)
程序员修炼必读清单(三)
程序员修炼必读书单(四)

到现在积累了4个书柜的书,基本都是逐页读过的,有感情不舍得扔,每年还在买,每次搬家特别头大,搬家的时候真能体会“书中自有黄金屋”的份量。

二、练习

“科学是算出来的,技术是干出来的”!编程是技术活儿,必须能够灵活掌握语法、编程技巧,并熟练使用工具进行调试,要想把编程学好必须多练,不要只练一些基本的DEMO,没有太大意义,做一个自己喜欢的软件,不断地进行完善,做得会越来越大,用到的语法和技术也会越来越多,软件做完了语法也熟了,相关技术也熟了,工具也用熟练了,可能还会收获一个大大的惊喜——收获了一个受人欢迎的软件!

三、读源码

有什么想法就多上github上找相关的案例,不是抄袭,而是学习, 学习他们的编码、架构、文件组织、编码规范等一系列的知识和技巧,站在巨人的肩膀上,不仅会学得快还能够看得确远,走得远。尤其一些大型工程的源码,任何一种语言都有比较好的大型工程,只有见得多了才能学得好。

什么是好的项目?框架类的项目或开源的应用软件项目,甚至操作系统的源码,从不同角度学习他们的优点,其实有时候也会发现里面有些代码写得也差点儿意思,毕竟开源项目参与的人多,水平参差不齐。

四、多交流

敏捷开发里有一个特别好的实践就是“结对编程”,通过结对编程可以让两个人充分地交流,并互相学习在编程过程中的一些工作细节,让人受益匪浅。交流可以包括技术上的,更应该交流工具、编程理念、学习方法等方面,聊得多也就学得多。

五、参加培训

如果有条件可以参加一些线下的培训,这类的培训一班比较系统,可以系统了解编程相关的一些知识,但都不深入,深入还要靠自身的持续学习,我是一天培训班也没上过。

六、网上学

为什么把上网学习写到最后,因为很多人养成了非常不好的习惯,懂了一点皮毛就不系统学习也,然后会遇到很多问题,然后就是网上一顿搜。在网上能搜到的解决方案很少是深层次的问题,一般都是基础性问题,顶多给一些启发,如果没有深厚的技术基础是走不远的。

尤其是很多人养成了“复制-粘贴”的习惯,这在《反模式》里明确列为了一个编程的反面典型。一复制下来基本功能是对的又不求甚解,等这段代码出了问题又不会解决。拿来主义不是复制粘贴,而是要消化吸收,搞清楚每一行的原理、逻辑,吸收为自己的知识和能力,以后方得应用自在。

作为入门,一些自己不理解的点,多在网上看些文章、视频去解决一些点状的问题也是很好的,唯有多读书才能将自身的知识系统化,以不变应万变,解决真正工程中遇到的“千奇百怪”的问题。

技术也不断进步,学编程也好,学别的知识或技术也好,都要持续跟进,“活到老,学到老”,关键是尽早形成自己的学习方法,一旦把技术学到一定程度就可以非常容易地迭代跟进,保持技术的领先性。

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章