零基础学习编程(前端、Java、Python、大数据……)的一些建议

news/2024/10/17 14:19:09/

一、学习要明确动机和方向,有强烈的学习欲望

就自学前端来说,很多时候你其实都是孤独的,不知道到底学得怎么样,除非有强烈的欲望,不然大部分的新手很容易就会半途而废。

首先,要想明白自己学习编程的强烈动机,明确定位,为的是能够让你坚持下来。比如,

① 通过编程开发脚本,来重复执行某些操作,解放双手,节省时间,提升工作效率。

② 你想从事这方面的工作,进入IT行业,获得一份高薪的收入。

③ 想要做出一个明确的作品,并以此获得收入也好,满足兴趣爱好也罢。

根据自己的定位,需求,市场的前景,确定方向,选择适合自己的语言和环境。

二、制定学习计划,规划学习路径

很多人觉得编程难的原因就在于,从来没有接触过,也没有掌握正确的编程学习方法。自学尤其如此,没有人指导,很多新人常常就不知道如何下手。

对于新手来说,最好能够找到行业内的高手指点一二,让他帮你规划一下成长的路径。 尽量先找一个过来人,让他给你提提建议,问问对方怎么学,学什么。因为他也是从新手过来的,肯定踩过不少的坑。避开了这些坑,你成长速度会快很多。根据自己的需求选择编程语言,没有绝对的好坏,只有适合不适合,不同的项目适合不同的语言。不同的语言,上手难度,和适用的场景也会不同。

C/C++,JAVA的学习门槛高,周期长,新手容易犯错,见效比较慢,但是相对规范,相关的工作多,需求多,长期来看较好。而Pyhon,php,javascript等,上手相对来说容易一点,容易出效果,适合比较着急上手的人。因此,自学需要根据自身的情况来做选择。

三、循序渐进,掌握基础

学习的时候,要注意循序渐进,新手千万不要上来就是一大堆设计模式,算法,很容易劝退。同时,有些知识,不到一定难度的项目是用不上的,没有一定的代码量也很难理解。时间一长,学过的东西就很容易忘记。

其实,编程就像是我们在学一门新的"外语",需要我们掌握基本的语法。先了解基本的概念,比如,变量,函数,数组,类,面向对象等等。还需要掌握一些最基本的算法和计算机英语。学习的时候,要定期检验你的学习成果,发现自己的问题,然后再做针对性的学习。

四、边学边实践,通过项目引导学习

刚开始,建议先找一本经典入门教材,最好是有课后练习的那种,每学完一章节,马上进行课后实践,这样的效果是最好的。通过一些编程小练习,一来可以巩固学过的知识,二来通过实践,很容易就能够发现自身的问题,接着再去思考,和答案做对比,就能够比较快速地提升自己了。很多人的问题在于,看得太多,做得太少。

编程能力的提升非常依赖我们日常的实操和不断地总结。学习的时候,应该以做出某个项目为导向,而不是盲目地想要学会所有的知识。

五、先从读懂代码开始

在大量的实操之前,尽量先从读懂别人的代码开始,甚至于可以先抄一抄书上的案例代码,上机试一试实际的效果。平时,多看高手的代码,这些代码可能来自书中,博客文章,开源程序,标准库等等各个渠道。先了解别人是怎么做的,然后再去写代码,尝试着做一些小项目。

六、每天固定行数的代码,刻意练习

为什么很多人学不好编程,因为编程不光是看会就行了,还需要大量的实操演练。很多人的问题就在于,只注重看的学习,缺少做的实战。尤其是一些新手,一看书感觉自己全都懂了,然后一实践,标点符号漏了,单词写错了,结果不断调试,纠结半天。

编程非常注重实操,你没有一定时间的积累,一定的代码积累量是成为不了高手的。因此,我们需要有一个实操计划,每天安排固定的时间,写出不低于固定数量的代码。

七、加入行业社群,论坛,学会提问和交流

进入到行业圈子里面,可以让我们了解到最新的行业动态,技术发展。看看大家都在讨论什么,同时,也可以提出自己的问题,通过交流,快速提升自己的水平。

学习的时候,千万不要卡在一个地方,要学会向高手提问。要注重时间的性价比,有的时候,你花几天时间研究一个细节,可能高手一个点拨,你就全明白了。

八、递归学习法,结果导向,提升学习效果

建议先从一些小项目开始,或者从实现一个简单的功能开始,新手就不要想着一步登天做一个大项目了。很多时候,我们从头到尾去读一本编程教材是非常枯燥的,而通过几个小项目来实践,你会很快发现自己的问题,就能够明白需要去学哪些东西。

另外,通过项目实践,你也会找到完成这个项目需要的整体性思维,培养大局观意识,把知识系统地链接起来。实践的过程中,遇到问题记录下来,然后针对性地再去学习相关的知识,如此循环。通过一个知识点,然后不断向外延伸,这样的学习更加高效实用。

比如,为了做某个小项目,需要用到B,而学B的时候,发现又要去学C才能更好地理解,C当中又包含D,然后再去学D。这样一步步去推导的学习,性价比更高,节省时间,效果也更好。

千万不要一上来,就毫无目的地全部一个个都去学,对于没有科班学习条件的人来说,费时费力,也得不到好的效果,很长一段时间做不出一个像样的作品,就容易半途而废。

九、阅读高手的博客,尝试着输出所学知识

通过大量的学习,实践,接下来我们可以尝试着输出自己的所学所想。一来总结知识,二来可以获得粉丝,积累自身的影响力,三来也是面试的时候的一个展示,可谓一举多得。

平时,要多写心得笔记,重点的内容经常回顾,对于一些常见的问题也方便你查找。记录得多了,它就是你的一笔宝贵财富。

最后

就编程学习来说,我们需要掌握最基础的概念语法,边学边练,多从实践中磨练技艺,尝试着做出一些小作品,提升成就感,循序渐进,增加难度。学习的过程之中,你必须激发内心的欲望,掌握正确的编程学习方法,走过一段漫长的新手期,有耐心和毅力坚持下来,才能拥有更好的未来。

 


http://www.ppmy.cn/news/998258.html

相关文章

MySQL 在CentOS下安装

yum安装 1、yum源安装 yum install mariadb-server2、启动MySQL服务 systemctl start mariadb3、查看运行状态 systemctl status mariadb4、设置初始密码 mysql -u rootuse mysql;update user set passwordpassword("root")where userroot;flush privileges;e…

C/C++几个关键知识点记录

1.将一个数值作为函数执行 (*(void(*)())0x13)();同理也可以将数值换成一个变量: int var0x13; (*(void(*)())var)();具体原理解释参考:https://blog.csdn.net/qq_39117115/article/details/128299574 2.断言assert 用于判断输入的参数是否正确&…

基于Ubuntu22.04部署bcache模式ceph

作者:吴业亮 博客:wuyeliang.blog.csdn.net 将Bcache集成到Ceph OSD后端可以带来一些优点和潜在的缺点。以下是它们的一些方面: 优点: 提高性能:BCache作为SSD缓存设备,可以提供更快的数据读取和写入速度…

实现 rollup 实现多模块打包

rollup 是一个 JavaScript 模块打包器,可以将许多 JavaScript 库和应用程序打包成少量的捆绑包,从而提高了应用程序的性能。本文详细描述如何通过 rollup 实现多模块打包。 前提 项目的目录结构 先看下项目的 package.json 文件夹: {&qu…

恒运资本:炒股知识有用吗?

炒股是指通过购买和出售股票来赚取差价的一种出资行为。在现代社会,炒股已经成为许多人重视的话题。然而,有些人以为炒股常识是非常有用的,而另一些人则以为炒股常识并不有用。那么,炒股常识终究有多大的用途呢?本文将…

Java并发系列之三:乐观锁机制

上一篇悲观锁中,我们讲到悲观锁的四种状态时,提到了“无锁”这种状态,并解释其有两种语义,一种是对共享资源不进行任何同步原语保护;另一种是共享资源会出现被竞争的情况,但是不使用操作系统同步进行保护&a…

LeetCode343. 整数拆分

343. 整数拆分 文章目录 [343. 整数拆分](https://leetcode.cn/problems/integer-break/)一、题目二、题解方法一:动态规划方法改良 一、题目 给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k > 2 ),并使这些整…

测试|LoadRunner安装及介绍

测试|LoadRunner安装及介绍 文章目录 测试|LoadRunner安装及介绍1.什么是LoadRunner2.LoadRunner特点3.LoadRunner基本概念4.LoadRunner三大组件之间关系LoadRunner安装1.安装包2.安装loadrunner 1.什么是LoadRunner LoadRunner是用来模拟用户负载完成性能测试的工具。 它适用…