一.Python
特点:1. 简单:Python是一种代表简单思想的语言。
2. 易学:Python有极其简单的语法。
3. 免费、开源:Python是FLOSS(自由/开放源码软件)之一。
4. 高层语言:使用Python编写程序时无需考虑如何管理程序使用的内存一类的底层细节。
5. 可移植性:Python已被移植到很多平台,这些平台包括Linux、Windows、FreeBSD、 Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、 PalmOS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC。
6. 解释性:可以直接从源代码运行。在计算机内部,python解释器把源代码转换为字节码 的中间形式,然后再把它翻译成计算机使用的机器语言。
7. 面向对象:python既支持面向过程编程也支持面向对象编程。
8. 可扩展性:部分程序可以使用其他语言编写,如c/c++。
9. 可嵌入型:可以把Python嵌入到c/c++程序中,从而提供脚本功能。
10. 丰富的库:Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、 文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、 XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统 有关的操作。
主要应用领域:1.WEB开发:Python拥有很多免费数据函数库、免费web网页模板系统、以及与 web服务器进行交互的库,可以实现web开发,搭建web框架。
2.桌面软件
3.网络编程
4.爬虫开发
5.云计算开发
6.人工智能
7.自动化运维
8.金融分析:量化交易,金融分析,在金融工程领域,Python不但在用,且用的 最多,而且重要性逐年提高。原因:作为动态语言的Python,语言 结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很厉 害,生产效率远远高于c,c++,java,尤其擅长策略回测
9.科学计算,数据分析
10.游戏开发:相比于Lua or C++,Python比Lua有更高阶的抽象能力,可以用更 少的代码描述游戏业务逻辑,Python非常适合编写1万行以上的项 目,而且能够很好的把网游项目的规模控制在10万行代码以内。 PyGame模块可用于编写游戏
二.C
特点:1、简洁紧凑、灵活方便:C语言一共只有32个关键字,9种控制语句,程序书写自由,主要 用小写字母表示。它把高级语言的基本结构和语句与低级语言 的实用性结合起来。
2、运算符丰富:C的运算符包含的范围很广泛,共有34个运算符。C语言把括号、赋值、 强制类型转换等都作为运算符处理。从而使C的运算类型极其丰富表达式 类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的 运算。
3、数据结构丰富:C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体 类型、共用体类型等。能用来实现各种复杂的数据类型的运算。并引 入了指针概念,使程序效率更高。另外C语言具有强大的图形功能, 支持 多种显示器和驱动器。且计算功能、逻辑判断功能强大。
4、C是结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除 了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些 函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使 程序完全结构化。
5、C语法限制不太严格、程序设计自由度大
6、C语言允许直接访问物理地址,可以直接对硬件进行操作
7、C语言程序生成代码质量高,程序执行效率高
8、 C语言适用范围大,可移植性好
主要应用领域:1.系统软件开发:操作系统(windows,Linux,Unix)
驱动系统(主板驱动,显卡驱动)
数据库(DB2,Oracle,sql)
2.应用软件开发:办公软件(WPS)
图形图像多媒体(ACD)
嵌入式软件开发(智能手机)
游戏开发(2D,3D游戏)
三.Java
特点:1.简单性
2.面向对象
3.分布式
4.健壮性
5.安全性
6.体系结构中立
7.可移植性
8.解释型
9.高性能
10.多线程
11.动态性
主要应用领域:1、嵌入式领域
2、大数据技术
3、软件工具
4、网站应用
5、在金融服务行业的服务器应用
6、交易系统
7、J2MEApps
8、高频交易领域
9、科学应用
10、安卓Apps
四.C++
特点:1.尽量兼容C
2.支持面向对象的方法
3.语言简洁灵活
4.运算符和数据结构丰富
5.具有结构化控制语句
6.程序执行效率高
7.同时具备高级语言和汇编语言的优点
主要应用领域:1. 服务器端开发:很多游戏或者互联网公司的后台服务器程序都是基于C++开发 的,而且大部分是linux操作系统
2. 游戏
3. 虚拟现实:
4. 数字图像处理:
5.科学计算
6.网络软件
7.分布式应用。
8.操作系统
9.设备驱动程序
10.移动(手持)设备。
11.嵌入式系统。
12.教育与科研。
13.部分行业应用。
五.C#
特点:1、简单、安全:
2、面向对象语言的基本特征,即封装、继承、 多态。并且添加了事件和委托,增强编程 的灵活性
(1)、封装。就是将代码看作一个整体,例如使用类、方法、接口等。在使用定义好的 类、 方法、接口等对象时不必考虑其细节,只需要知道其对象名以及所需要的参数 即可,也是一种提升代码安全性的方法。
(2)、继承。是一种体现代码重用性的特性,减少代码的冗余,但在 C# 语言中仅支持单继 承。
(3)、多态。不仅体现了代码的重用性,也体现了代码的灵活性,它主要通过继承和实现接 口的方式,让类或接口中的成员表现出不同的作用。
3、支持跨平台
4、开发多种类型的程序使用 C# 语言不仅能开发在控制台下运行的应用程序,也能开发 Windows 窗体应用程序、网站、手机应用等多种应用程序,并且其提供的 Visual Studio 2015 开发工具中也支持多种类型的程序,让开发人员能快速地构建 C# 应用程 序。
主要应用领域:1、数据库应用程序开发 :数据库应用程序,比如医院的医疗管理系统、超市的 收银系统等。
2、分布式开发
3、Web应用开发
4、网络通信开发
5、嵌入式设备开发
6、游戏软件开发
7、工具软件开发
六.Visual Basic
特点:1.面向对象和可视化的程序设计:Visual Basic 实现了对象的封装,是程序员只需把注意力集 中到对象的设计.特别是对程序界面的设计.
2.事件驱动的运行机制
3.结构化的程序设计语言:在程序结构方面,Visual Basic继承了QBasic的所有优点,不但完 全符合结构化程序设计的要求,而且具有较强的数值运算和字符 串的处理能力.
4.多种数据库访问能力.
5.提供了功能完备的应用程序集成开发环境.
6.方便使用的联机帮助功能.
主要应用领域:程序设计语言和软件开发工具
七.Java Script
特点:1、脚本语言:JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而 JavaScript是在程序的运行过程中逐行进行解释。
2、基于对象:JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现 有的对象。
3、简单
4、动态性
5、跨平台性
主要应用领域:1、网站前端开发
2、服务端开发
3、命令行工具开发
4、桌面应用开发
5、移动开发(Web app、混合式应用开发)
6、插件开发
7、游戏开发
八.SQL
特点:1.综合统一
2.高度非过程化
3.面向集合的操作方式
4.以同一种语法结构提供多种使用方式
5.语言简洁,易学易用
6.对于数据统计方便直观
主要应用领域:1、多媒体数据库
2、移动数据库
3、空间数据库
4、信息检索系统
5、分布式信息检索
6、专家决策系统
九.PHP
特点:1、开放的源代码:所有的PHP源代码事实上都可以得到。
2、PHP是免费的:和其它技术相比,PHP本身免费。
3、快捷性:程序开发快,运行快,技术本身学习快。嵌入于HTML:因为PHP可以被嵌入 于HTML语言,它相对于其他语言,编辑简单,实用性强,更适合初学者。
4、跨平台性强:由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、 WINDOWS下。
5、效率高:PHP消耗相当少的系统资源。
6、图像处理:用PHP动态创建图像
7、面向对象:在php4,php5 中,面向对象方面都有了很大的改进,现在php完全可以用来 开发大型商业程序。
8、专业专注:PHP支持脚本语言为主,同为类C语言。
主要应用领域:1、服务端脚本。
2、命令行脚本。
3、编写桌面应用程序。
十.Assembly language
特点:1.机器相关性
2.高速度和高效率
3.编写和调试的复杂性
主要应用领域:1.由于汇编更接近机器语言,能够直接对硬件进行操作,生成的程序与其他的语 言相比具有更高的运行速度,占用更小的内存,因此在一些对于时效性要求很 高的程序、许多大型程序的核心模块以及工业控制方面大量应用。
2.汇编语言的大部分语句直接对应着机器指令,执行速度快,效率高,代码体积 小,在那些存储器容量有限,但需要快速和实时响应的场合比较有用,比如仪 器仪表和工业控制设备中。
3.在系统程序的核心部分,以及与系统硬件频繁打交道的部分,可以使用汇编语 言。比如操作系统的核心程序段、I/O接口电路的初始化程序、外部设备的低层 驱动程序,以及频繁调用的子程序、动态连接库、某些高级绘图程序、视频游 戏程序等等。
作者为新人菜鸟,为了快速了解这些语言所以在网上查阅了资料写了这篇文章,希望能够帮助到有同样需求的新人。另全文都不是作者所写,全部都是借鉴网上各位大神的文章,进行了一些剪切和取舍,因为借鉴的人太多,所以原作者没有一一注明,希望大家理解。如有不足,请多包涵。谢谢!