引⾔
最近⼏年,⼈⼯智能是个很⽕的⾏业,于是有很多的⼈想学习计算机编程,后⾯简称:编程。
提到编程,你⼤概会想到与它关联的三门学科:电学、数学和英语。你可能怀着满腔热⾎,但是想想这三门学科学得不是很好,就没有了信⼼,就想放弃。
那这到底是不是真相?如果没有这三门学科强⼤的⽀撑,到底能不能学编程?想学计编程,0基础从哪⾥开始⼊⼿学习呢?
下⾯由我来为你⼀⼀解答你⼼中的疑惑。
⼀、什么是编程
先简单介绍⼀下编程。编程就是⽤户和计算机的⼀种沟通渠道,通过编写⼀系列的程序指令,指挥计算机完成相应的操作。专门从事编程⼯作的技术⼈员便是程序员。
在计算机领域,编程细分下来,有很多的技术⽅向。从⼤的⽅向,分为两类,就是偏向于上层和偏向于底层的编程。
当然,这是⼈为的⼀个划分,只是为了便于理解。在学术上来说并不是很准确。下⾯我分别介绍⼀下这两类编程。
☀ 1、底层编程
简单来说,它更偏向于和计算机内部沟通。有点计算机基础的朋友都知道,计算机语⾔分为机器语⾔、汇编语⾔和⾼级语⾔。
偏向底层的编程就是使⽤汇编语⾔和⼀部分⾼级语⾔,来完成和计算机的交流,这类程序员和计算机的⽤户不直接接触。
由于⽬前计算机的⾼度集成,底层程序员⼤部分也⽤的是⾼级语⾔,例如C语⾔,再也不⽤接触那些复杂的机器指令。
举个栗⼦,咱们在安装打印机、扫描仪;或者⼿机第⼀次连接电脑;再或者安装完操作系统,都会做⼀个事情,那就是安装驱动程序。
⽽这个驱动程序的编写,就是由底层的程序员来编写完成的。
☀ 2、上层编程
会和⽤户沟通⽐较多点,负责将⽤户对软件的需求,进⾏编程实现。使⽤的计算机语⾔,就是⾼级语⾔。
这类程序员也是占到了程序员总数的⼤部分,⾄少在90%以上,⽽且这个⽐例还在逐步增加。你也许想学编程,也是属于这⽅⾯。
同样举个栗⼦,咱们每天浏览的⽹页;使⽤的⼿机APP;使⽤的各种应⽤系统……都是这上层的程序员编写的。
可以这样说, 每个⼈都会和上层的程序员有接触;或者更准确点,都会和他们写的软件有直接或者间接的接触,为什么会这样说呢?
你每天都会玩⼿机吧,⼿机上五花⼋门的APP,就是这些程序员的杰作;你只要接触电脑,就得⽤软件,这些软件都是他们编写的;
就算你不⽤⼿机、电脑,但是与你⽣活相关的各种信息的存储,都是使⽤的各种软件组成的信息系统。
21世纪,整个社会都离不开信息系统,它已经融⼊我们⽣活的⽅⽅⾯⾯。
现在,你还能说与程序员没关系。作为⼀个⼗年的程序员,很庆幸⾃⼰能为⼤家服务,让⼤家的⽣活更便捷。
⼆、学习编程的条件
学习编程,有两类⼈,⼀种是想从事这个⾏业;另⼀种是因为兴趣。不管哪⼀类,起步的时候是差不多的,只不过到后⾯深⼊程度是不⼀样的。
我现在来帮你分析⼀下学习编程的前提条件,这⾥指的也是偏上层编程的范畴。
你可能知道,计算机学科是由电学和数学来组成的,⼀个负责硬件;另⼀个负责软件。
提起程序员,在你的影响中,可能是⼀天坐在电脑前敲键盘,⽽电脑屏幕上全是字符和数字,你便把它和英语也挂上钩了。于是你便⼼⾥有了疑虑:
★学习编程,
是不是要有电学基础啊?
是不是要很深厚的数学功底?
是不是也得英语很好啊?
现在,我给你分析⼀下。
☄ 1.电学
韩国明星张紫妍主要是指数字电路和模拟电路这些学科。如果你是深度的与计算机沟通交流,与硬件⾃然有关系,也就是作为底层的程序员,是需要掌握的。
⽽你如果想学的是上层的编程,是不需要的。
举个栗⼦,你只是想开个炒菜馆,那你完全不⽤知道菜是怎么种出来的;油是怎么榨出来的;甚⾄你连⾁是哪来的,都不需要知道。
你只负责把他们采购回来,做成美味佳肴就可以。
千古玦尘每个人物最后结局☄ 2、数学
计算机学科,是由数学学科延伸⽽来的,⼤学⾥⾯也叫做数信学院。可见,数学是多么的重要,我要说没有强⼤的数学基础,你肯定会批判我。
实际上,没有⼀个⼈是真正的0基础的,就像你现在看这篇⽂章,如果你是0基础,你连字都不认识,⼜怎么能看懂呢?
所以,如果你的⽂化程度是初中还没毕业,那就赶紧放弃吧,确实不适合学习。否则,你的基础⼀定没问题,从⼩到⼤,你还是有⼀定的逻辑思维的。这点逻辑思维够了。
计算机软件编程发展到现在,分⼯已经越来越精细,像⼯⼚⾥的流⽔线⼯⼈,⼀个萝⼘⼀个坑。
专门的数学模型由数学专家来完成,负责和数学专家对接的程序员,只占到程序员的不⾜5%;
更多的程序员则是和⼴⼤⽤户密切联系,开发出符合需求的软件产品。平时根本不需要考虑深奥的数学。
举个栗⼦,⽐如⼀所⼩学,⼤部分⽼师的要求是师范类院校⼩学教育毕业就可以。但是需要⼀个专门教⾳乐的岗位,那他可能需要⼩学教育毕业外,还得有教⾳乐⽅⾯的能⼒。
☄ 3、英语
编程的过程中,看似全是英⽂,其实都是⼀些常见的词汇,如果真正开始编程了,这些单词每天都会看到,天天见,我还不信你记不住。
对于软件⾥的⼀些交互或者提⽰之类的英⽂,都是很简单的⼀些语法。如果万⼀不⾏,还有度娘啊,害怕什么呢?
现在,你是否已经打消了这些顾虑,你是不是很有信⼼了呢?其实,⼤部分时候,我们都是因为不了解真相,⽽错失了很多美好的东西。
下⾯我将告诉你,怎么从零基础来学习。
三、怎样从零基础开始?
现在,我相信你肯定想试试了,在这之前,我会更详细的为了介绍上层编程的⼏个⽅向。
1、前端页⾯技术
这个⽅⾯严格说,是属于美⼯或者UI设计师的范畴,我现在在这⾥介绍,是因为它和程序员与有很多的交集。
在⼩公司,也是由程序员来兼职的。这⽅⾯的技术主要是HTML,CSS,JAVASCRIPT等。
2、⾼级语⾔
这是程序员主要掌握的技能,主要包括的技术,例如主流的C、C++、Java、Python、Object C、Swift、Go、C#等,你如果愿意,百度查⼀下,有很多的⾼级语⾔。
行政管理实习报告
3、数据库
主要是⽤来存储数据,如Oracle,SQL Server,MySQL,DB2等,当然,也有很多,你也可以查⼀下。
举个栗⼦,⽤百度这个搜索引擎来说。殷桃简介
页⾯上显⽰出来的那个搜索框和按钮,就是前端页⾯技术来做的⼯作;
点击完按钮后,后台⽤来做搜索⼯作的就是⾼级语⾔来做的⼯作;
车速海量的页⾯和数据存储,⽤的就是数据库技术。
从这⾥可以看到,这三层技术不是孤⽴的,⽽是相互关联的。在有些公司,都有详细的分⼯,⼀个⼈只需要掌握⼀种技术就可以了,其它的⼯作交给别⼈;
⽽有些公司,就可能⾝兼数职,每种技术都可能接触。
说完了这些技术,我来说⼀下,作为0基础,你到底该从哪⾥下⼿。
1、如果你是想以后⾛职业化路线
从单⼀的⼀种技术开始。
⽐如,你想做美⼯,或者UI设计师,那就需要学习前端技术;想做⼀门语⾔的程序员,那就学习那⼀门语⾔就可以。
想从事软件开发的⼯作,那就需要掌握C/C++等⾼级语⾔的技术就可以。
2、如果你只是兴趣驱动
我想你可能都得学⼀点,这样才能做出来⼀个完整的软件出来。你可能⼜开始担⼼了,那么多技术,怎么学会呢?
其实你⼀点不⽤担⼼,让你都学,也没说每⼀门技术都学多深啊,只要能⼊门就可以了。所以,你完全不⽤太操⼼。
当然了,你可能想着,我就想学⼀⽅⾯的技术,那也可以啊,玩玩总是可以的。
⽐如,你只学了前端技术,你展⽰出来的数据就是死的,不能随着变化⽽变化;
李华月 血恋你只学了⾼级语⾔,那就没有友好的⽤户界⾯,只能在控制台(命令提⽰符,像以前的DOS)上和计算机交互;
你只学了数据库,那么只能是你⼿动保存数据和查询数据,不能以⽤户界⾯和⾃动化的⽅式操作数据。
看到这⾥,我想,你对计算机编程已经有了⼀个很清晰的框架了。你⼀定跃跃欲试了,作为⽼程序员,欢迎你加⼊编程的⾏列。
如果你还有不清楚的,也欢迎你来咨询我,我乐意带你上路。
对于热爱编程的⼩伙伴来说,路再难⾛也要坚持⾛下去!如果你感兴趣或者有需求的话,我这⾥推荐⼀个编程⼊门学习交流聚集地→在下⽅留⾔评论我会看到哦!还有完整的学习路线图和学习⽂件视频,⼩⽩和⼤神们正在等着你⼀起探讨编程,极佳的学习氛围⼀起来学习吧!
发布评论