自学编程的六种方法,你必须知道

news2024/11/18 9:27:00

随着互联网日趋迅猛,编程已经在我们生活当中无处不在了。众所周知,程序员的工资都很不错,于是越来越多的人,都想加入到编程的行业中来。那么如何加入到程序员的行业当中?

PHP从入门到放弃,C语言从入门到放弃,Java从入门到放弃,Python从入门到放弃...

在自学编程的过程中,一部分程序员遇到冰冷的英语字母,枯燥的编程教程,果断选择了放弃。

但其实自学编程不是那么难,只要是逻辑思维或者理科比较好的还行的小伙伴,编程入门完全可以。

下面小编就介绍一些自学编程的小方法,希望能对你有帮助:

首先我们要明确自己的学习目标,不管我我们学习什么样的知识,都要有一个明确的目标,我们需要朝着目标前进,才能少走弯路,从而在学习中得到提升。

0.最好的学习方式

对于初学者来说,可以采用视频+书籍的方式进行学习。这两种方式形成互补关系。另外阅读代码也可以帮助你解决问题,了解最佳做法,这里的阅读代码是指书籍,博客文章,开源代码等等。

编程教学视频可以让你迅速掌握编程语法等等,但通常比较生动、浅显,不成系统。而书本是比较系统,深入,但是枯燥,所以最好的方法是书和视频结合。

当你已经过了入门期之后,看书、看视频、看博客就可以随心所欲。

但在阅读代码后,你需要自己实际去写代码。可以是任何东西。可以是小的编码任务或者是一个小模块,必须确保你能将之付诸于实践,并用某种方式使用你学到的东西。如果你不这样做,你会发现自己面对编辑器会无从下手。知识等待使用的时间越长,知识这把斧头就越钝。等待学习新知识的时间越久,你就越难以将其融入到代码中。

1.入门期坚持学习

自学编程难免遇到这种现象:学了一两个月,发现自己会的不多。

编程在一开始不会有那么大的反馈,这种现象非常正常!关键是你要坚持个三个月到半年的时间,熬过这个艰难的入门期。

小编推荐三件事情以避免僵局。

第一是试着关于技术的文章,并总体掌握正在发生什么。通常,当你陷入困境时,意味着你对需要澄清的事情做出了不正确的假设。

第二是咨询互联网。这一点很显然是值得一提。在网上查找并询问有过这个问题的人是一个非常重要的技能。Stackoverflow可以说是互联网上最好的网站。不要害怕在那里问自己的问题。通常,只要尽力正确地阐述你的问题就OK了。

小编的第三个建议是向你认识的人请求帮助。通常,你或许已经理解了技术,而且有了问题,但是你可能需要更高层次的上下文才能真正解开谜团。不要胆怯,大着胆子上前去问吧。

2.初学者尽量不要钻牛角尖

对于人生来说,其中任何目标的实现都离不开耐心。编程学习就如其它任何学习任务一样,都需要反复努力并投入大量时间。

如果遇到难题,耗了半天时间还是没弄懂,可以暂时跳过,知识积累到一定程度,回头再进行解决你会发现简单多了。不要一味的去钻牛角尖,一定要解决,这样会耗费大量的时间与精力。

3.寻找良师益友

学习编程的一个很好的方法就是和其他的程序员交谈。不必谈论任何特定的内容。可以是你正在学习的东西,也可以是你认为很酷的东西,更可以是你正在工作的东西,皆可。你会发现很多程序员并不喜欢只是聊编程。这样做可能会让你学到很多关于库,服务器,编程语言和模式方面的知识。但是,最重要的是,你将了解到其他人是如何看待编程的。你会发现,你认为理所当然或从来没有考虑的事情在人与人之间是非常不同的。

还有你遇到的那些小问题,已经有无数前辈也曾遇到过,他们总结了并分享在互联网上了,前人的经验是你的宝贵资源,要善于利用谷歌等软件。

4.有目的的练习

不要想着学习完就可以赚1w+这样很容易放弃编程,编程语言是一个很大的知识库,需要你不断的学习。

最好是奔着一个小项目而学习编程,当你把作品做出来了,有了成就感,同时基本上具备找工作的能力,就找个初级的开发岗位,再进阶,你的自学之路功与名都有了。

没有什么可以与工作于自己的项目以学习编程更有用的了。有了一个点子并试图实现这个点子是非常具有挑战性的。它需要很强的自律心及耐心。但是,通过尝试实际做一件事情,你可以学到如何分解问题并应用技术。你面对的各种问题,以及你如何解决它们才真正是所谓的编程。此外,想要完成项目的驱动力是继续学习的动力。从业余项目获得的满足感远远超过你在抽象中学习东西的满足感。

小编建议,选择你感兴趣的同时你也有想法如何实现的东西。能够在开始之前表达实现总是有助于保持我的动力。在此旅途之中你一定会学到很多!

5.完美主义者和搬运工的区别

编程是一门手艺,需要反复练习,脱离书本和视频看是否能独立实现?学到最后的境界无非就是:我亦无他,惟手熟尔 。

有两种类型的程序员:完美主义者和搬运工。有些人希望一切都是正确的,他们希望完美,他们希望遵循所有的最佳实践,并写出漂亮的优雅的代码。他们想要理解每一行代码。有别于那些不管三七二十一,只要自己的代码能工作即可,即使对代码库有损害的人。平衡这两种技能是非常重要的。有时你应该深入钻研一个问题或项目,看看发生了什么。有时你应该让它工作即可,即使你不知道发生了什么。

每当你花费太多时间在某个东西上时,那就问问自己:我应该采取哪种方法?在大多数情况下,你会想取中间值。你想提供一个好的、坚实的解决方案,同时你可以自信地理解和修改,但没有耗费荒谬的时间。随着你作为开发人员的成长,你会更好地明白什么时候就此离开就可以,以及什么时候需要以某些方法完成。

结论

这些方法可以帮助新手在他们漫长的学习旅程中起到至关重要的作用。我知道需要学习的东西还很多,并将继续学习。最重要的事情说三遍,请继续,不要放弃,不要放弃,不要放弃。当然,说说容易,因为学习编程有时可能会令人非常沮丧!不要担心。这是正常的。每个人都经历过这样的心情。

IT行业的道路固然是充满了阳光了,一路上充满了美景,但是也充满了艰苦和崎岖,在突破了之后一路的阴霾,云霄之上,必然是一番广阔的云海。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1548165.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3款免费甘特图制作工具的比较和选择指南

GanntProject GanttProject https://www.ganttproject.biz/ 是一款项目管理和调度应用,适用于 Windows、macOS 和 Linux。它易于使用,无需任何设置,适用于个人用户和小型团队。该应用提供任务层次结构和依存关系、里程碑、基准行、Gantt 图表…

【深度学习】最强算法模型之:潜在狄利克雷分配(LDA)

潜在狄利克雷分配 1、引言2、潜在狄利克雷分配2.1 定义2.2 原理2.3 算法公式2.4 代码示例 3、总结 1、引言 小屌丝:鱼哥, 给我讲一讲LDA 小鱼:LDA? 你指的是? 小屌丝:就是算法模型的LDA啊, 你…

基于XGBoost和数据预处理的电动汽车车型预测

基于XGBoost和数据预处理的电动汽车车型预测 文章目录 基于XGBoost和数据预处理的电动汽车车型预测1、前言2、导入数据3、各县电动汽车采用情况条形图4、电动车类型饼图5、前5最欢迎的电动车制造商6、XGBoost模型6.1 字符串列的标识6.2 删除不相关的列6.3 编码分类变量6.4 电动…

【机器学习之---数学】统计学基础概念

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 统计学基础 1. 频率派 频率学派(传统学派)认为样本信息来自总体,通过对样本信息的研究可以合理地推断和估计总体信息…

探究 HTTPS 的工作过程

目录 1. HTTPS 协议原理 1.1. 为什么要有HTTPS协议 1.2. 如何理解安全 1.3. HTTPS 协议是什么 2. HTTPS 的前置概念 2.1. 什么是加密 && 解密 2.2. 为什么要加密 2.3. 常见的加密方式 2.3.1. 对称加密 2.3.2. 非对称加密 2.4. 数据摘要 && 数据指纹…

Linux系统------------MySQL备份与恢复

目录 一、数据备份的重要性 二、数据库备份的分类 2.1从物理与逻辑的角度,备份可分为物理备份与逻辑备份 2.2从数据库的备份策略角度:备份可分为完全备份、差异备份、 增量备份 2.2.1完全备份 2.2.2差异备份 2.2.3增量备份 2.2.4备份方式比较 三…

白酒:生产过程的能耗分析与节能减排措施

在当今的绿色环保时代,节能减排已经成为各行各业关注的焦点。作为传统的白酒生产企业,云仓酒庄深知环境保护的重要性,并积极采取措施降低生产过程中的能耗,为可持续发展贡献力量。 在豪迈白酒的生产过程中,能耗主要来自…

【剑指offr--C/C++】JZ23 链表中环的入口结点 与哈希表

一、哈希表(unordered_set)知识点 unordered_set是一种无序的数据集合容器,元素和键同时存在,元素没有按任何特定的顺序排序,而是根据它们的散列(hash)值组织成桶,以允许直接通过值…

不花一分钱,10分钟搭建自己的网站

不花一分钱,10分钟搭建自己的网站 文章目录 不花一分钱,10分钟搭建自己的网站效果展示第1步 账号注册与登录第2步 新建仓库第3步 新建文件夹及文件第4步 网站发布部署大功告成 效果展示 课程效果展示 进阶效果展示 第1步 账号注册与登录 点击这里 https://gitee.com/&…

韶音、南卡、Oladance开放式耳机值得买吗?多维度测评实力最强品牌

​近期,不少朋友向我咨询关于开放式耳机的选购建议,他们反映市面上的开放式耳机在音质和佩戴舒适度方面表现参差不齐。面对众多品牌,消费者往往感到无从选择。针对这一问题,我将对市面上热门的韶音、南卡和Oladance三款开放式耳机…

linux将未分配空间分配到指定挂载点

lsblk命令查看硬盘,空间有200G,子分区加起来才100个G,有100个G未使用 lsblk给硬盘分配盘符 fidisk /dev/vda n 回车 回车 w将所有未分配的空间分区,这里有100个GB 查看分配的分区 /dev/vda4 fidisk -lpvcreate /dev/vda4查看…

武汉星起航:亚马逊跨境电商市场蓬勃发展,竞争日趋激烈

近年来,跨境电商行业如日中天,成为国际贸易的新宠。作为全球电商的领头羊,亚马逊凭借其卓越的物流、支付和售后服务体系,稳坐跨境电商领域的头把交椅。然而,在激烈的市场竞争与不断变化的消费者需求面前,亚…

Deepin中定义 ll 文件查看命令

Deepin中定义 ll 文件查看命令 一、概述1. 在终端中使用2. 配置本用户使用 一、概述 在Ubuntu中习惯使用 ll 命令作为查看文件系统数据,在Deepin中无法使用此命令。我们可以用ls命令去组装一个ll命令。 1. 在终端中使用 我们如果只使用一次,我们可以用…

Halcon与C#联合开发——1.读取图片、图像二值化

在vs中引入halcon控件 修改目标平台为 x64 拖出三个控件 代码展示 using System; using System.Windows.Forms; //引用支持halcon的命名空间 using HalconDotNet;namespace _1.HalconDisplay {public partial class Form1 : Form {// HObject 是Halcon库中表示图像和其他图形…

Mac系统微信小程序的保存位置和缓存清除

Mac系统微信小程序的保存位置和缓存清除 1.小程序的保存位置2.小程序的缓存清除 1.小程序的保存位置 /Users/<UserName>/Library/Containers/com.tencent.xinWeChat/Data/.wxapplet/packages进入该目录后可以看到有很多以AppID命名的文件夹 最后再使用手机查看该小程序的…

白酒:新型包装材料的选择与应用对产品形象的提升

随着消费者对产品包装的关注度不断提高&#xff0c;包装在提升产品形象和品牌价值方面发挥着越来越重要的作用。云仓酒庄深知包装的重要性&#xff0c;并积极探索和应用新型包装材料&#xff0c;以提升豪迈白酒的产品形象。 新型包装材料的选择与应用对于产品形象的提升具有显著…

springboot swagger 接口文档分组展示

例如将 controller 分成四类&#xff0c;分别放到四个包下&#xff1a; xxx.xxx.xxx.controller.manage xxx.xxx.xxx.controller.client xxx.xxx.xxx.controller.authority xxx.xxx.xxx.controller.common SwaggerConfig.java&#xff1a; import io.swagger.annotations.Api…

java ssh 电影院购票管理系统eclipse开发mysql数据库MVC模式java编程网页设计

一、源码特点 JSP ssh 电影院购票管理系统是一套完善的web设计系统&#xff08;系统采用ssh框架进行设计开发&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用 B/S模式开发。开发环境为TOMCAT…

集成学习 | 集成学习思想:Stacking思想

目录 一. Stacking 思想 一. Stacking 思想 Stacking(或stacked generalization)&#xff0c;是指训练一个模型用于组合(combine)其他各个模型 Stacking有两层第一层是不同的基学习器&#xff08;classifiers/regressors&#xff09;第二层是用于组合基学习器的元学习&#xf…

全选和取消全选

html <table><thead><tr><th><el-checkbox change"check" v-model"checkAll">全选/取消</el-checkbox></th></tr></thead><tbody><tr v-for"(item, index) in tableData" :ke…