本文主要比较python与c/c++/java之间的区别.
- 如果写操作系统,那么使用c
- 如果写的复杂应用对执行速度有很高的要求,那么使用c++
- 如要快速的实现一个东西,那么使用python
- 如果需要快速的开发应用,那么使用java
在这四门语言中,除了C语言,其他的都属于面向对象的编程语言,且属于强类型.
关于语言所属类型请看下图:
C++的相关特点
C++更加接近底层,方便直接操作内存,来源于c语言,所以其编写出的程序通常能够快速运行.所以兼容了C语言的功能特征,是一门既面向对象又面向过程的语言.
C++和C语言一样具有指针的概念,在内存管理/指针管理这一块需要开发人员具有一定的经验.
C++一次编写到处编译,编译成的机器码可以由操作系统直接调用运行,运行效率高.
java的相关特点
java是运行在java虚拟机上的一门编程语言,具备一次编译到处运行的特征.
java不需要主动地进行内存管理,其java虚拟机具有垃圾回收机制.
java是面向对象的一门强类型静态语言.
python的相关特点
python是一种脚本语言,运行由解释器来承担,而解释器的版本有很多种(有用C语言写的解释器,有用java语言写的解释器)
一些区别
-
在编写代码层面来说,python是最简单的,其大量的第三方库可以让程序员省去不少事,其他语言没有python编写快主要的原因是因为其编程思想和语法规则所导致.
-
在运行速度层面来说,python是最慢的,python是解释型语言即运行时才会翻译语言,这是导致其运行效率低下的本质原因.其他语言是属于静态语言,都是直接编译成字节码文件,运行时不需要经过翻译,而是直接执行自然比python要快.
-
从领域方面来说,这四门语言都能涉及到各个语言.但C语言更加倾向于底层中的底层,适合做操作系统;C++适合做大量计算的应用;java适合做管理系统;python适合去验证idea,即做尝试性的工作,所以这门语言特别适合科研者或者数据分析师.
-
从学习层面来说,C语言和C++的入门难度最大,java和python的入门难度稍小.