「大学生学编程系列」第二篇:如何选择第一门编程语言?

简介: 如何选择第一门编程语言?

第一篇讲述了为什么要选择做一名程序员,从源头上讲述要想成为一名程序员需要很强的驱动力,因为编程相对而言算是比较难入门的一个职业。在入门之前必须有克服困难的勇气,有成为一名程序员的决心

有了决心和信心了,剩下的就是加足马力开干了,问题又来了怎么干,选什么样子的编程语言适合自学入手?要根据自身的实际情况出发选择编程语言切入。完全的零基础学习编程相对来讲要费劲很多,如果要学习建议先从计算机组成原理开始入手学习,对于零基础的来说,开始学习一般来讲都会信心百倍,要懂得保持住这份信念,所以上来不要把这份信心给打没了,先让自己缓冲一段时间,先从简单的入手,学习一段时间慢慢培养计算机语感,如同学习英文也需要培养语感是一样的,了解计算机基本的框架结构,进制之间是如何转化的,cpu和内存以及硬盘之间是如何关联的。不但涨了知识还能进一步培养自己的自信心。

如何选择第一门编程语言?

选择编程语言主要从以下几点入手:

1.第一优先级选择自己喜欢的编程语言,兴趣才是第一老师,这个可能和编程语言的难易程度以及是不是很好找工作多少有点冲突,因为喜欢就会舍得下功夫去钻研学习,人有时候就怕较真,一旦较真就没有干不成的事情,所以先选择自己喜欢的语言,可能有人会觉得自己喜欢,不好找工作不也是白扯,其实之所以选择这条就是因为喜欢,正是因为喜欢才能学的足够好,足够出色,才能学出花样来。任何一种编程都有其存在的意义,现在很多人觉得学习C语言了不好找工作,但在通讯领域,以及嵌入式领域需求也是大的惊人,更重要的是现在很多编程语言的底层实现就是c语言,不要随随便便说那种语言已经过时了,不是过时有些领域只有你足够牛逼才能够得上,所以坚持自己的理想信念勇敢向前走就行。

2.选择目前市场上比较好就业的编程语言,目前来看市面上比较好就业的,就是还存在红利期的编程语言有三种,python,前端,java起码就目前中国市场来讲还是非常受欢迎的,也是培训机构非常推崇的几种编程语言。培训喜欢具备两种特点的语言:第一入门相对简单,这样培训的周期就会缩短;第二相对容易就业的编程语言,通俗来讲是还处在红利期的编程语言。从市场占有率上考虑现在java还是绝对意义上的老大。

3.入门比较容易的编程语言,第一编程语言如果选择的过于难,可能导致中间放弃了,学好了一门编程语言之后就可以触类旁通切换到别的编程语言之中。所以开始没必要跟自己过不去,现在编程语言入门会变得越来越简单,因为集成度会越来越高,如同前几年的前端开发还被很多人瞧不上,但是现在大众对于前端语言的需求已经大多了,而且要求的效果不仅仅是动态或者审美好那么简单的事情了。以前的前端页面只是用dreamware就差不多可以了,但是现在基本的html都用到了框架,javascript这块也使用通用的框架,不懂几个框架也是很难搞定一份工作,现在做前端弄得还可以的工资都不低。

基于以上三点很容易找到自己需要选择的第一门语言。

现在就主流编程语言的特性做一些介绍方便编程入门的小伙伴进行参照

1.C语言永远不会过时的编程语言,在高级语言占据导致地位的今天还是依然有强劲的生命力,未来依然还会是各大语言的基石,还是某些主流行业的必备开发语言,通讯行业、嵌入式开发、系统软件和图形处理、以及对性能要求非常严格的技术领域,还是很多编程语言底层你实现语言,有志于向架构师方向发展的C语言还是需要掌握,推荐C primer plus作为入门书籍。

2.C++目前在很多领域充当着中流砥柱的作用,主要在游戏开发、数字图像处理、科学计算、很多常用软件的框架层代码都是C++实现,比如浏览器内核,安卓框架层大部分代码等等。C++相比其他语言来讲难度增加了不少,不是很适合初学者来学习使用,因为里面不但涉及到底层更重要是语法细节相当繁琐,放在一起和C语言比较,很多做了很多年C程序的工程师可以喊声精通C语言,但是全球没有多少人敢喊着精通C++,昨天在微信群看见一个小伙计,刚入门就参加了C++方面的游戏培训,培训结束之后四处碰壁找不到工作,初学者不适合选择C++作为入门语言,有志向的小伙伴可以考虑作为第二种语言来学习使用,足够有决心也可以学习,这个语言要找到工作,一般单位都是要求有工作经验,推荐C++ primer plus作为入门书籍

3.java目前市场占有率最高的编程语言,涉猎范围相当的广泛,无论是在客户端还是服务器端市场占有率都相当高,同样作为面向对象的语言,学起来比C++要简单太多,简单并不代表功能差,虽然目前看java已经过了其红利期但目前还是有学习的必要,因为拥有最多的就职岗位,但要想通过随便学一下就找到工作的红利时代已经一去不复返了,要找到合适的工作还需要真才实学。目前开源软件里面占比最高的同样术语java,不要道听途说现在学习java的不行了落伍了,真正不行的还是那些没有真才实干的人,java是一门入门相对简单,但要成为顶级高手相当费劲的编程语言,所有的高级语言都具备这种特性。推荐java核心技术卷一作为入门书籍。

4.python作为目前最火的一种编程语言,未来如果能在市场占有率和java较量一下的话,估计这位老兄算是一个。入门简单应用范围相当广泛,加上现在火的一塌糊涂的人工智能,都在无形之中助推了python的快速发展。python应用的领域相当广泛,在网络爬虫,人工智能,数据处理,图形界面绘制,科学计算,web开发,金融方面都展示出很不错的特性。零基础的建议选择这门编程语言入手,推荐笨方法学python作为入门书籍。

5.前端开发坦白讲这不算是一门语言,因为涉及到html、css、javascript三门语言,统称为前端,放在以前这种属于做网页的,但当今越来越视觉化的时代,现在要做个让客户满意的界面真是需要特别多元素,设计理念、各种流行的框架,现在很少有人直接从头到尾的自己写代码了,能把各种框架运用的熟脸异常,在当前来看也是一件了不起的事情。而且目前市场上对这方面人才需求量还是非常巨大,这三种语言中难度最大的还是javascript成为一个这方面的高手也是挺费劲,高质量的javascript效率能提升好几倍。前端也非常适合零基础的入门学习,由于这个入门比较简单,要找到理想的工作还需要多做几个接近实战的小项目来提升武装自己。

总结了目前比较主流的五种编程语言方向,由于篇幅的原因阐述的比较笼统,后续会有专门的章节细细解释。选择第一门编程语言非常重要,万事开头难,第一步做好了后面会顺畅很多,适合自己的才是最合适,不要盲目的从中反而忽略了自己最需要的东西,让自己真正做一回主。

原文发布时间为:2018-07-26
本文作者: 程序人生
本文来自云栖社区合作伙伴“ 程序员互动联盟”,了解相关信息可以关注“ 程序员互动联盟

相关文章
|
5月前
|
自然语言处理 编译器 C语言
【软件设计师-从小白到大牛】上午题基础篇:第七章 程序设计语言与语言处理程序基础(1)
语法分析阶段可以发现程序中的所有语法错误;编译正确的程序必然不包含语法错误;“除数为0”为动态语义错误,动态语义错误只有运行时才能发现。
78 0
【软件设计师-从小白到大牛】上午题基础篇:第七章 程序设计语言与语言处理程序基础(1)
|
13天前
|
自然语言处理 Java 编译器
【软件设计师—基础精讲笔记10】第十章 程序设计语言基础
【软件设计师—基础精讲笔记10】第十章 程序设计语言基础
23 1
|
1月前
|
存储 数据采集 人工智能
Python编程入门到实践,你的编程之旅从这里开始
Python编程入门到实践,你的编程之旅从这里开始
22 0
|
5月前
【软件设计师-从小白到大牛】上午题基础篇:第七章 程序设计语言与语言处理程序基础(2)
【软件设计师-从小白到大牛】上午题基础篇:第七章 程序设计语言与语言处理程序基础
28 0
【软件设计师-从小白到大牛】上午题基础篇:第七章 程序设计语言与语言处理程序基础(2)
|
9月前
|
算法 Unix Java
初学者值得一看:什么是编程/C语言,编程学习建议,编程解疑与误区注意
初学者值得一看:什么是编程/C语言,编程学习建议,编程解疑与误区注意
119 0
|
JavaScript Java 编译器
编程简单科普系列 - 什么是编程 (1)
广义上来说,编程也不仅仅是指关于计算机的范畴,现在通常也指可以diy的东西,可以通过自己想法进行自定义的东西。当然我们这里所说的是指计算机编程. 因为计算机是不能直接听懂我们人说话的,没办法直接沟通,所以我们需要通过编程语言来跟计算机进行沟通,通过编程语言把我们想表达的转化为计算机能听懂的,在这里编程语言就相当一个翻译(比如,我们不会英文,准备要和一说英文的外国人谈生意,这时候就需要找一个英文翻译,替我们把想要表达的中文翻译成对方听得懂的英文。)其实严谨点这个比喻说也不准确,因为编程语言一般是需要通过编译器或者解释器编译解释之后,才能为计算机所识别. 每个计算机编程语言,都有自己的编译器或者解
306 0
带你领略Java运算符之美 | 带你学《Java编程入门》之四
所有的程序开发都是一种数字的处理游戏,那么对于数字的处理一定会有所谓的操作模式,而这些操作模式就称为运算符。例如:如果要进行加法运算肯定使用的“+”这样的运算符来完成,而对于运算符而言,也是存在先后的关系,像小学学习四则运算,采用先乘除后加减的顺序完成。当然,程序开发也会有这些运算符。
初识“方法”,步入编程领域 | 带你学《Java编程入门》之六
在程序之中很多情况下是有可能需要重复执行一些代码的。在有一些书上也会把方法(method)称为函数(function)。需要注意一点,本次进行方法定义的时候有一个前提:方法在主类中定义,并且由主方法直接调用。
初识“方法”,步入编程领域   | 带你学《Java编程入门》之六
|
开发者
60天高效通过软考高级实战复习攻略(干货)
软考信息系统项目管理工程师(信管高级)涉及9大知识管理体系,要理解记忆,没有捷径可走。
1814 0