首先, 我们先普及一下编程语言的基础知识. 用任何编程语言来开发程序, 都是为了让计算机干活, 比如编写一篇文章, 下载一首 MP3 等, 而计算机干活的 CPU 只认识机器的指令, 所以, 尽管不同的编程语言差异极大, 最后都得 "翻译" 成 CPU 可以执行的机器指令. 理论上任何语言干任何事情几乎都可以, 但是主要干什么那就不一样了.
01,Java
java 常常跟 "企业" 联系在一起, 因为具备一些很好的语言特性, 以及丰富的框架, 在企业应用中最被青睐, 你总可以听到关于 J2EE,JSP,Hibernate 之类的东西的讨论. 同时, java 在手机领域也有一席之地, 在普遍智能化之前, 很多手机就是以支持 java 应用作为卖点的, 而智能手机爆发之后, java 手机主场变成了 android, 作为安卓的标准编程语言而存.
总结: Java: 网页, 企业级开发, 普通应用软件, 游戏后台.
02,C 和 C++
C/C++ 理论上说可以做任何开发, 只要有合适的硬件驱动和 API, 特点是效率高, 基本上是编译语言里面效率最高的. 除非你的系统中连 C/C++ 编译器都不具备. 某些系统当中 C++ 编译器是不具备的, 但是 C 一般都具备. 目前而言, C 语言主要用来开发底层模块 (比如驱动, 解码器, 算法实现), 服务应用(比如 web 服务器) 和嵌入式应用(比如微波炉里的程序). C++ 也可以做这些, 不过由于 C++ 的复杂性和标准问题, 人们还是更愿意使用 C 来做. C++ 更适合比较复杂但又特别需要高效率的设施, 比如大型游戏, 一些基础库, 大型桌面应用.
总结:
C: 系统底层, 驱动, 嵌入式开发.
C++: 游戏开发, 大规模, 高性能, 分布式要求的程序开发.
03,JavaScript
javascript 听起来跟 java 有关系, 其实并没有任何关系, 只是名字像而已. 就好比雷峰塔和雷锋的关系一样, 虽然只差一个字. js 最广泛的应用毫无疑问是在 web 前端. 简单的说, 网站给你传过来的是一堆用各种标签表示格式的文档, 而 js 负责操纵这些文档实现一些客户端动态效果. js 的领地还不仅如此, 现在的 Node.js 还可以用于服务器端的开发.
总结: JavaScript 是浏览器的脚本语言, 一般和 html,CSS 这些一起学, 主要做网站的前端开发, 展现各种酷炫的画面.
04,PHP
php 这三个字你常常会在浏览器地址栏里看到, 所以不意外 php 是用来开发网站的. 也是 web 后端的王者语言. 无数的网站后端都运行着 php 代码.
总结: PHP: 主要是网络前端, 用于生成网页. 也可以整个 web 服务器都用 php, 比如很多论坛引擎.
05,Python
Python 由于具有丰富和强大的库, 它又叫做作胶水语言, 能够把用其他语言制作的各种模块 (尤其是 C/C++) 很轻松地联结在一起. 常见的一种应用情形是, 使用 Python 快速生成程序的原型(有时甚至是程序的最终界面), 然后对其中有特别要求的部分, 用更合适的语言改写, 比如 3D 游戏中的图形渲染模块, 性能要求特别高, 就可以用 C/C++ 重写, 而后封装为 Python 可以调用的扩展类库.
Python 是做服务器开发与物联网开发. 信息安全, 大数据处理, 数据可视化机器学习, 物联网开发, 各大软件的 api, 桌面应用, 都需要 python.
来源: https://juejin.im/post/5b6cffb45188251b3a1df889