c语言,c++,java,python先学哪个,c java python学哪个,C、C++、Java到Python,编程入门学习什么语言比较好

c语言,c++,java,python先学哪个,c java python学哪个,C、C++、Java到Python,编程入门学习什么语言比较好

本文主要介绍C,C,Java到Python,对于编程的入门学习什么语言比较好。这篇文章给你做了非常详细的介绍,对你的学习或者工作有一定的参考价值。有需要的朋友可以参考一下。

回顾过去几十年编程语言的起起落落,似乎也反映了整个信息产业的变迁与消亡。如果你想在技术的洪流中快速进步,准确识别和学习一到两种编程语言就更为重要。

近日,TIOBE更新了7月份的编程语言榜单,常年称霸榜单的C、Java、Python依然位列前三。没想到R语言居然冲到了第八名,创下了历史最好记录。而且随着行业对数据统计和挖掘需求的不断上升,R语言的普及也是相当的势不可挡。

但作为程序员吃饭的工具,编程语言之间也形成了某种鄙视链,各种论坛气氛紧张,大家都难以调整。难怪很多初学者会有疑惑。为什么有这么多编程语言?应该学什么语言?

回顾过去几十年编程语言的起起落落,似乎也反映了整个信息产业的变迁与消亡。想要在技术的洪流中勇往直前,准确地找到并学会一两门编程语言就更为重要。

编程语言的黄金时代

“有人不喜欢花括号,不喜欢发达的Python;有人设计了JavaScript在一个周末;有些人因为工作无聊,发明了C语言。”。关于编程语言的八卦故事很多,但归根结底,编程语言的诞生一定是需求驱动的。

从面向机器的语言、面向过程的语言到面向对象的语言,编程语言的历史也从复杂走向简单。90年代互联网的兴起,无疑是编程语言的黄金时代。

套用维基百科的总结,“在20世纪90年代,没有重大的创新,大部分都是对以前想法的重组或改变。”

但就是这样一个时代,却是各种编程语言的开始。

当时最主流的编程语言是贝尔实验室两位大佬发明的C/C语言,互联网的运营商计算机的基础设施都是用这种语言编写的,包括Linux操作系统、数据库、编译器等等。

这也奠定了C语言在IT领域的地位。只要计算机存在,C/C就一定会有它们的位置。

但后来者的故事随时都在发生。这里的主角是过去的巨头网景和孙,已经结束。

1994年,网景发布了真正的网页浏览器Navigator,但由于当时的技术限制,Navigator更像是一个本地显示页面,没有任何交互功能。无独有偶,1995年,Sun公司正式将其开发的Java (Oak language)推向市场,其特点是“一次编写,到处运行”。网景看中了这只潜力股,选择与孙结盟。

那时,Java可以作为脚本嵌入到网页中,实现交互功能,这就是所谓的Java小程序。但是,网景认为Java作为一个web脚本太复杂了。程序员Brendan Eich用10天时间开发了JavaScript,现在所有的浏览器前端库都需要基于Javascript实现。

随着电脑的普及,互联网的兴起,Web应用的出现,Ruby,PHP等语言都出现了。

正如知乎作者“强哥派”所言,“在此期间,虽然没有创造出编程语言,但由于大量企业的参与,编程语言得到了空前的发展,形成了今天编程语言的基本形态。也让软件开发更加标准化、规模化。”

同时还有一些“小众”编程语言,蓄势待发,伺机“爆发”。

苹果的搅局,生态很关键

2010年,iPhone 4问世,乔布斯用智能手机改写了互联网的发展。iOS和Android支撑的智能手机市场,让移动互联网成为绝对的舞台主角。

苹果创造了一个全新的生态。作为iOS的应用开发语言,始于1984年的Objective-C从默默无闻到声名鹊起。依靠各种iPhone和iPad应用的开发,Objective-C一度挤进TIOBE榜单前3。

然而,苹果于2014年在WWDC推出了一种新的编程语言Swift,它支持为macOS/OS X、iOS、iPadOS、watchOS和tvOS编写软件应用程序。第二年,它宣布开源并支持Linux。

此后,Objective-C的市场份额逐年下降,从2014年的12%下降到2016年的1%。从下图也可以看出,新语言Swift从0起步,近几年一直在稳步增长。今年1月还冲进了TIOBE榜单第九名。

虽然一门计算机语言从编译器、语法、基础库到在程序员圈子里的普及都不可能在短时间内实现,但苹果还是靠自己把Objective-C和Swift带入了编程语言的主流市场。因此,编程语言与产品的生态规模密切相关。

微软和Visual Basic的关系也是如此。在移动互联网时代之前,VB曾经依靠可视化开发环境成为最火的桌面开发工具,一度拥有300万开发者。而且凭借Windows操作系统市场的优势,VB一直保持着较高的人气(可惜微软表示不打算继续进化Visual Basic)。

回到移动互联网时代,对岸的安卓选择了Java。随着Android阵营的日益壮大,Java一直是TIOBE榜单的第一名,最差的结果也可以是第二名。

除了自身的优势,其生态的构建对于一个编程语言的长期繁荣也是非常重要的。毕竟用的人越多,它就越独特,这一点在Python的流行上体现的淋漓尽致。

大数据+AI时代,Python一骑绝尘

当学习Python要从娃娃抓起的口号流行起来的时候,编程语言从IT圈进入了流行圈。

在大数据和AI时代,Python可以说是一骑绝尘。数据分析、机器学习、Web开发、爬虫开发,都可以借助Python轻松解决。

统计人员可以用Python解决数据抓取和分析问题,大学生可以用Python解决租房问题.

最重要的是Python的学习门槛比C和Java低,简洁的语法和成熟的第三方库,即使是非程序员也能在短时间内加速。

R语言也是如此,用于统计分析,绘图,数据挖掘。它赶上了数据应用分析的潮流,自然能从众多编程语言中脱颖而出。

针对今年7月R语言在榜单上的创纪录成绩,TIOBE首席执行官Paul Jansen明确表示,两大趋势起关键作用:一是商业统计语言和软件包(如SAS、Stata和SPSS)的时代已经结束,大学和研究机构采用Python和R进行统计分析;第二,与新冠肺炎相关的研究需要大量的统计和数据挖掘,因此易学易用的统计编程语言的普及程度正在上升。

比如诞生于2010年,由Mozilla开发的Rust language,更强调安全性、内存配置、并发处理。脸书去年推出的区块链项目Libra选择Rust language来构建它,因为它足够安全。

Rust的排名也从2012年的200名,上升到了最新TIOBE榜单的前20名。

以互联网的兴起为分界线,我们可以看到,各种编程语言的取舍必然伴随着新的产品和技术。顺应新技术发展的编程语言,即使在几十年后,也能重新焕发光彩。而且随着开源社区的成长,一门优秀的编程语言可以借鉴别人的长处,成长为后起之秀。

结语

如果你想活在编程语言中,我建议你先学Java,然后是Python和C,因为这三种编程语言基本上可以解决我们在工作中遇到的大部分问题。

最后,正如C#之父安德斯海尔斯伯格曾经总结的:如果我要总结未来十年编程语言会变成什么样,首先,我认为编程语言应该变得更加“声明性”。我们需要尝试在语言中引入元编程、函数编程等一些能力,同时也可能为用户寻找扩展语法的方法,以便他们可以构造特定领域的语言等等。但总的来说,我想强调的是,对于编程语言来说,新的范式是“多范式”编程语言。

本文部分内容参考以下文章:

1、 《IT行业激荡30年-编程语言变迁史》

https://zhuanlan.zhihu.com/p/106808045

2、 《计算机和编程语言的发展历史》

https://blog.csdn.net/abc6368765/article/details/83990756

关于C,C,Java转Python,入门编程学什么语言比较好的这篇文章到此为止。更多关于C,C和Java Python哪个语言更好的信息,请搜索我们之前的文章或者继续浏览下面的相关文章。希望你以后能支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: