编程语言介绍及各语言特点

编程语言介绍:

编程语言(programming language)

用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让 程序员能够准确地定义计算机所需要使用的数据,并精确的定义在不同的情况下所应当采用的行动。

编程语言的描述一般可以分为语法及语义。语法是说明编程语言中哪些符号或文字的组合方式是正确的,语义则是对于编程的解释。

编程语言俗称"计算机语言",种类非常的多,总的来说可以分为机器语言、汇编语言、高级语言三大类。电脑每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,二程序全部都是我们掌握的语言来编写的

编程语言有很多种,常用的语言有:

  C、C++、Java、C#、Python、PHP、Go语言、Objective-C、Swift、汇编语言等。

 

C语言

C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发
 

C++

C++这个词在中国大陆程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,“CPP”。 它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计数据抽象面向对象程序设计泛型程序设计等多种程序设计风格
 
 

JAVA

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
 
 

C#

C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。C#是微软公司研究员Anders Hejlsberg的最新成果。Csharp(音标 [∫a:p])(又被简称为"C#")是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、界面、与Java几乎同样的语法,和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。 
 
 
Python
 
  Python , 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。

  Python名字的来源:1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是因为他是一个叫Monty Python的喜剧团体的爱好者。

  ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是其非开放造成的。Guido 决心在Python 中避免这一错误。同时,他还想实现在ABC 中闪现过但未曾实现的东西。就这样,Python在Guido手中诞生了。Python已经成为最受欢迎的程序设计语言之一。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。自从2004年以后,python的使用率呈线性增长。

Python 的优缺点

优点

  简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
  易学:Python极其容易上手,因为Python有极其简单的说明文档[7]  。
  速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。[5] 
  免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
  高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
  可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian以及Google基于linux开发的android平台。
  解释性:一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行 程序。
在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。
  面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。
  可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在Python程序中使用它们。
  可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。
  丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
  规范的代码:Python采用强制缩进的方式使得代码具有较好可读性。而Python语言写的程序不需要编译成二进制代码。

缺点

  单行语句和命令行输出问题:很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。
  独特的语法:这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。即便是很有经验的Python程序员,也可能陷入陷阱当中。
运行速度慢:这里是指与C和C++相比。
 

PHP

PHP是一种目前最流行的服务端Web程序开发语言之一。PHP主要的特点是语法简单易于学习、功能强大、灵活易用。在融合了现代编程语言的一些最佳特性后,PHP、Apache和MySQL的组合已成为Web服务器的一种配置标准。学习PHP的过程是十分轻松、快捷的。可以说PHP已经成为Web脚本技术的先驱,并且会继续引领Web技术的潮流。

PHP的特性
  1. 开放的源代码:所有的PHP源代码事实上都可以得到。
  2. PHP是免费的。
  3. PHP的便捷性 : PHP十分便捷
  4. 基于服务器端:由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。
  5. 嵌入HTML:因为PHP可以嵌入HTML语言,所以学习起来并不困难。
  6. 简单的语言:PHP坚持脚本语言为主,与Java和C++不同。
  7. 效率高:PHP消耗相当少的系统资源。
  8. 图像处理:用PHP动态创建图像
  9. 面向对象:在php4,php5 中,面向对象(OOP技术)方面都有了很大的改进,现在php完全可以用来开发大型商业程序。

 
 
Go
 
       Go是一个开源的编程语言。Go语言被设计成一门应用于搭载Web服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。目前,Go最新发布版本为1.10.

        Go语言可以运行在Linux、FreeBSD、Mac OS X和Windows系统上。

Object-C 通常写作 Objective-C 或者 Obj-C 或 OC,是根据C语言所衍生出来的语言,继承了C语言的特性,是扩充C的面向对象编程语言。
Object-C 是一种面向对象的计算机语言。而C是面向过程的语言。
Object-C 是MAC OSX和iOS开发的基础语言。

优点及缺点

  • Object-C 是非常“实际”的语言。它使用一个用C写成,很小的运行库,OC写成的程序通常不会比其原始码大很多。
  • Objective-C 的最初版本并不支持垃圾回收。
  • Objective-C 不包括命名空间机制(namespace mechanism)。
  • 虽然 Objective-C 是C的母集,但它也不视C的基本型别为第一级的对象。
  • 和C++不同,Objective-C 不支持运算子重载(它不支持ad-hoc多型)。
  • Object-C 仅支持单一父类继承,不支持多重继承。

 

 

Swift简介

  • 2014年WWDC 发布的新开发语言,可与OC共同运行于Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。

    swift2.0之后的语法则趋于稳定,2017年发布的swift4.0虽有改动,但也只是增添了一些新特性。这些新特性需要在Xcode9上运行才能显示出效果。值得一提的是它支持unicode9,也就是说,可以用某些图片图标来充当变量。

     

  • 特点:

    快速,安全,使用安全的编程模式并添加很多新特性,使编程更简单,扩展性更强(支持Cocoa 和 Cocoa Touch框架)。

    取消了OC指针和其他不安全访问的使用.变量总是初始化之前使用,数组和整数检查溢出,内存自动管理。

    ③支持代码预览允许程序员在不编译和运行应用程序的前提下运行 Swift 代码并实时查看结果

    ④舍弃OC 早起的SmallTalk的语法,全面改为打点调用(使用点语法调用属性或者函数).

    ⑤提供了类似Java的命名空间(name space)/泛型(generic)/运算对象重载(operator overloading

    语法非常简洁让编程的流程大大缩短、简化、高效、强大.

    ⑦去掉NS前缀

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
原文地址:https://www.cnblogs.com/yangHS/p/10600322.html