主流编程语⾔的介绍及特点
主流编程语⾔的介绍及特点
1.C/C++
⼀句话概括:⼤多数中国程序员的第⼀个语⾔
C 语⾔是⾯向过程语⾔在当代的鲁殿灵光,常⽤于编写操作系统。C++ 是 C 语⾔的⼀个超集,既有指针⼜
对象使它成为最复杂的语⾔。
C/C++ 的优势:
⼏乎所有现代编程语⾔都脱胎于 C/C++,因此了解了 C/C++,就了解了关于编程语⾔的⼀切,⾮常有利于快速掌握其他各类编程语⾔;C/C++ 可以被嵌⼊任何现代处理器中,⼏乎所有操作系统都⽀持 C/C++,跨平台性⾮常好。
唐文龙C/C++ 的不⾜:
据说 C/C++ 发明的时候为了提⾼⼊⾏门槛和⾏业收⼊⽔平刻意制造了学习难度;尽管 C 语⾔体型⼩巧,可最常使⽤的 C++ 规模可观且拥有⼤量极为复杂的功能交互⽅式,容易造成资源浪费。
职业路线:
我们结婚了 赵权
(1)⾸推 Unix/Linux 等操作系统软件的开发和嵌⼊式开发。
(2)Android ROM 的定制,以及 Android App 的 NDK 开发。
撩人套路(3)⽤ Cocos2d-x 开发游戏也是 C++ 程序员的好出路。
C
C 语⾔是⼀种通⽤的⾼级语⾔,最初是由丹尼斯·⾥奇在贝尔实验室为开发 UNIX 操作系统⽽设计的。UNIX 操作系统,C编译器,和⼏乎所有的 UNIX 应⽤程序都是⽤ C 语⾔编写的。由于各种原因,C 语⾔现在已经成为⼀种⼴泛使⽤的专业语⾔。
C语⾔是⼀门⾯向过程的计算机编程语⾔,与C++、Java等⾯向对象编程语⾔有所不同。C语⾔的设计⽬标是提供⼀种能以简易的⽅式编译、处理低级存储器、仅产⽣少量的机器码以及不需要任何运⾏环境⽀持便能运⾏的编程语⾔。C语⾔描述问题⽐汇编语⾔迅速,⼯作量⼩、可读性好,易于调试、修
改和移植,⽽代码质量与汇编语⾔相当。C 语⾔⼀般只⽐汇编语⾔代码⽣成的⽬标程序效率低10%~20%。因此,C语⾔可以编写系统软件。
企业新年祝福语
特点:
易于学习,进⾏结构化编程
c语⾔所产⽣的代码运⾏速度与汇编语⾔编写的代码运⾏速度⼏乎⼀样
预编译处理使C语⾔更有弹性
优点:
代码量⼩
⽣成⽬标代码质量⾼,运⾏速度快
功能强⼤
跨平台,可移植性强
使⽤指针,灵活性强
允许直接访问物理地址,对硬件进⾏操作
缺点:
数据安全性有很⼤问题
语法限制不严格,映像程序安全性
指针太过灵活,初学难度有点⼤
c++
C++是C语⾔的继承,它既可以进⾏C语⾔的过程化程序设计,⼜可以进⾏以抽象数据类型为特点的基于对象的程序设计,还可以进⾏以继承和多态为特点的⾯向对象的程序设计。
特点:
⽀持数据封装和数据隐藏
⽀持集成和重⽤
⾯向对象
⽀持多态性
C++ 是⼀种静态类型的、编译式的、通⽤的、⼤⼩写敏感的、不规则的编程语⾔,⽀持过程化编程、⾯向对象编程和泛型编程。
优点:
类型检查⽐c语⾔更加严格
增加了⾯向对象机制
增加了泛型编程机制
增加了函数重载和运算符重载
异常处理
提供了标准库STL
缺点:
没有垃圾回收机制,可能引起内存泄漏
2.Java
⼀句话概括:最长寿的语⾔
Java 是最典型的⾯向对象语⾔。Java 不仅吸收了 C++ 语⾔的各种优点,还摒弃了 C++ ⾥难以理解的多继承、指针等坑爹概念。今明两年毕业的⼤学⽣⼤多是 Java 的同龄⼈(1995 年)。
Java 的优势:
Java 平台不断迎来新功能,⽐如移动互联⽹时代的 Android,⼤数据时代的 Hadoop,⼈⼯智能时代的 TensorFlow;Java 是世界上使⽤范围最⼴的语⾔——Java 环境安装时那句 “3 Billion Devices Run Java” 谁没见过?
Java 的不⾜:
国内 Java 及其衍⽣技术的就业环境被培训班破坏得太厉害,培训班 HR 曾问我:“Android 不吃⾹了,你能推荐⼏个Hadoop 讲师吗?”Java 占⽤⼤量内存,并且启动时间较长——搞 Android 的都被 Windows 系统中的 Android AVD 坑过。
特性:
1. 纯⾯向对象
2. ⽀持分布式
3. 跨平台,移植性强
4. 是⼀门编译性语⾔
5. ⽀持多线程,⾼性能
优点:
1. ⾯向对象
2. 稳健、安全、可移植、⾼性能
3. 跨平台李小璐 王思聪
4. 编译型静态语⾔
缺点:
1. 编译速度慢
3.Python
⼀句话概括:需要拿着游标卡尺学习的语⾔
Python 是⼀款服务器端解释型开源⾮编译脚本语⾔。它常被昵称为胶⽔语⾔,能够把⽤其他语⾔制作的各种模块(尤其是 C/C++)很轻松地联结在⼀起。
Python 的优势:
Python 学习简单,被誉为 “最易学习的语⾔”
Python 的不⾜:
Python 存在⼀些只在特定情况下才会出现(⽆法重现)的 bug
职业路线:
(1)⽤ Django 框架进⾏ Web 开发:和 Java 没什么两样。
(2)⽤ PIL 框架进⾏图形处理
(3)物联⽹:Raspberry Pi 等物联⽹平台都选择了 Python 作为开发语⾔
(4)Python 有⼀个⽆所不能的 Hack 库,如果认为 “打⼯时不可能打⼯的” 就去当⼀个⾃由的⿊客吧特性:
1. 解释性语⾔
2. 拥有丰富的库
3. 跨平台
4. 可移植、可扩展
广州外贸服装批发5. ⽀持GUI编程
6. 可嵌⼊
优点:
1. 简单,易学
2. 免费,开源
3. 可移植性强
4. 属于解释性的⼀门动态语⾔
5. ⾯向对象