1946年,世界上第一台通用电子计算机埃尼阿克“ENIAC”在美国宾夕法尼亚大学诞生
年份 | 发展历程 | 描述 |
---|---|---|
(1946-1953) | 低级语言时代 | 主要包括被称为“天书”的机器语言以及汇编语言。 |
(1954-至今) | 高级语言时代 | 随着世界上第一个高级语言fortran的出现,新的编程语言开始不断涌现出来。数十年来,全世界涌现了2500种以上高级语言,一些流行至今,一些则逐渐消失。 |
python是一种解释型的高级通用编程语言,它涵盖了三种编程语言的分类角度
程序执行方式
类型 | 描述 | 举例 |
---|---|---|
解释型语言 | 计算机一边“阅读”一边执行 | 如python,PHP |
编译型语言 | 先将代码预处理(编译),再整体执行 | 如C,java |
语言抽象等级
类型 | 描述 | 举例 |
---|---|---|
高级语言 | 接近于人类的语言,编程用到的词汇大多和人类语言一样 | 如python,java |
低级语言 | 接近于计算机硬件,便于计算机高效率执行 | 如汇编语言 |
语言使用场景
类型 | 描述 | 举例 |
---|---|---|
通用语言 | 用作各种领域的编程工作 | 如python,java |
专用语言 | 专门处理某种特定事务 | 如SQL |
编程语言还有其他分类方式
变量是否需要指明类型
类型 | 描述 | 举例 |
---|---|---|
强类型语言(静态语言) | 变量使用要严格符合定义的类型,所有变量都必须先定义后使用(编译时就确定变量的类型) | 如Java,C,C++ |
弱类型语言(动态语言) | 变量的数据类型可以被忽略,一个变量可以赋不同数据类型的值,不需要事先定义变量类型(运行时才确定变量数据类型) | 如python,PHP,JavaScript |
TIOBE排行榜 是根据互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo)以及Wikipedia、Amazon、YouTube和Baidu(百度)统计出排名数据,反映某个编程语言的热门程度,是当前业内程序开发语言的流行使用程度的有效指标
TOIOE网站:TIOBE排行榜
语言 | 使用场景 |
---|---|
python | 数据分析、大数据、机器学习、量化交易、网络爬虫 |
Java | 互联网web开发、android应用开发 |
c语言 | 操作系统层级和嵌入式开发 |
C++ | 游戏后端、各种底层高性能软件(如浏览器、搜索引擎),硬件底层 |
C# | Windows桌面软件、信息系统、unity游戏开发 |
PHP | 服务端小型web开发 |
Javascript | web前端 |
R语言 | 数据分析、大数据 |
Visual Basic(VB) | 桌面软件、单位的信息系统 |
Go | 高并发的网络程序或本地程序后端 |
主要优点 | 描述 |
---|---|
语法简单灵活 | 语法采用直观的英语信息描述,相较于其他开发语言,python对于语法结构的要求较低 |
规范化的代码 | 使用强制缩进形式提高代码可读性 |
面向对象 | python不仅提供面向过程开发外,还支持面向对象的模块化程序开发,提高代码的可维护和重用性 |
可移植 | 可以移植到不同的平台和设备终端 |
解释型语言 | 无需手工编译,代码保存后可由python解释器自动编译并运行 |
可扩展性(extension) | 可以粘合不同语言开发的功能模块,被戏称为“胶水语言” |
丰富的第三方库 | |
并发支持 | python可充分利用多GPU特点实现多线程,多进程开发 |