精华内容
下载资源
问答
  • 常用高级语言及其特点
    2021-06-23 07:52:35

    推荐答案

    简单来说

    学计算机语言目的就是和计算机沟通

    沟通以后就能用计算机做很多事情了

    跟好的控制计算机 跟好的用计算机完成我们的目的。

    高级语言是相对于低级语言来说的,低级语言有机器语言和汇编语言。低级语言与特定的机器有关、功效高,但使用复杂、繁琐、费时、易出差错。除非有特殊需要,比如效率的极端要求,一般是不用低级语言的,因为如今编译器的技术和硬件的发展已经可以弥补人为的优化控制。所以更多的是将程序设计往高层抽象上提高。

    当计算机语言发展到第三代时,就进入了“面向人类”的语言阶段。第三代语言也被人们称之为“高级语言”。高级语言是一种接近于人们使用习惯的程序设计语言。它允许用英文写解题的计算程序,程序中所使用的运算符号和运算式子,都和我们日常用的数学式子差不多。高级语言容易学习,通用性强,书写出的程序比较短,便于推广和交流,是很理想的一种程序设计语言。高级语言发展于50年代中叶到70年代,有些流行的高级语言已经被大多数计算机厂家采用,固化在计算机的内存里。如 BASIC语言,现在已有128种不同的 BASIC语言在流行,当然其基本特征是相同的。除了BASIC语言外,还有FORTRAN(公式翻译)语言、 COBOL(通用商业语言)、 C语言、 DL/I语言、 PASCAC语言、ADA语言等250多种高级语言。

    01分享举报

    此回答由管理员  理科爱好者cdb   推荐为最佳回答。

    更多相关内容
  • 1、在没有程序语言以前,计算机科学家们写程序都是以开关电 闸(即用二进制)来实现(表示)的,后来有了汇编,在后来有了C,直到今天有了C++、JAVA、VB、Delphi等等各种各样的编程语言层出不穷。 可就在计算机语言不断...

    1、在没有程序语言以前,计算机科学家们写程序都是以开关电 闸(即用二进制)来实现(表示)的,后来有了汇编,在后来有了C,直到今天有了C++、JAVA、VB、Delphi等等各种各样的编程语言层出不穷。 可就在计算机语言不断的演化过程中,每一种语言都有一些共性是不变的.。这些共性可概括为以下三点:

    其一是:内存电位的设置.(置1或0)

    其二是:条件判断(if,else)该功能可通过逻辑门实现.

    其三是:循环,也就是程序下一条指令地址可设置。

    2、常见语种:

    C语言、C++、汇编语言、Pascal语言、VisualBasic、Java。

    5d3e4243048a6e8d9a19f7e19895163e.png

    计算机语言(Computer Language)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。计算机系统最大特征是指令通过一种语言传达给机器。为了使电子计算机进行各种工作,就需要有一套用以编写计算机程序的数字、字符和语法规划,由这些字符和 语法规则组成计算机各种指令(或各种语句)。这些就是计算机能接受的语言。

    展开全文
  • 常用编程语言介绍语言特点

    千次阅读 2019-03-30 00:06:19
    1、高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。[ 2、结构式语言:结构式语言的显著特点是代码数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化...

    C语言

    基本性
    1、高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。[
    2、结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
    4、代码级别的跨平台:由于标准的存在,使得几乎同样的C代码可用于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。C语言对编写需要进行硬件操作的场合,优于其它高级语言。

    5、使用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C++在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。Java则吸取了C++的教训,取消了指针操作,也取消了C++改进中一些备受争议的地方,在安全性和适合性方面均取得良好的效果,但其本身解释在虚拟机中运行,运行效率低于C++/C。一般而言,C,C++,java被视为同一系的语言,它们长期占据着程序使用榜的前三名。

    特有特点
    1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
    2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
    3、不同的变量类型可以用结构体(struct)组合在一起。
    4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
    5、部份的变量类型可以转换,例如整型和字符型变量。
    6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。
    7、预编译处理(preprocessor)让C语言的编译更具有弹性。

    优点
    1、简洁紧凑、灵活方便
    C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
    C语言的 Hello World 程序
    C语言的 Hello World 程序
    2、运算符丰富
    C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
    3、数据类型丰富
    C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。[13]
    4、表达方式灵活实用
    C语言提供多种运算符和表达式值的方法,对问题的表达可通过多种途径获得,其程序设计更主动、灵活。它语法限制不太严格,程序设计自由度大,如对整型量与字符型数据及逻辑型数据可以通用等。
    5、允许直接访问物理地址,对硬件进行操作
    由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位(bit)、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写系统软件。
    6、生成目标代码质量高,程序执行效率高
    C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编程序生成的目标代码效率低10%~20%。
    7、可移植性好
    C语言在不同机器上的C编译程序,86%的代码是公共的,所以C语言的编译程序便于移植。在一个环境上用C语言编写的程序,不改动或稍加改动,就可移植到另一个完全不同的环境中运行。[14]
    8、表达力强
    C语言有丰富的数据结构和运算符。包含了各种数据结构,如整型、数组类型、指针类型和联合类型等,用来实现各种数据结构的运算。C语言的运算符有34种,范围很宽,灵活使用各种运算符可以实现难度极大的运算。
    C语言能直接访问硬件的物理地址,能进行位(bit)操作。兼有高级语言和低级语言的许多优点。
    它既可用来编写系统软件,又可用来开发应用软件,已成为一种通用程序设计语言。
    另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。
      
    缺点
    1、 C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。
    2、 C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程

    java

    1.简单性
    Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。
    2.面向对象
    Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。
    Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。
    3.分布性
    Java设计成支持在网络上应用,它是分布式语言。Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,所以用户可以产生分布式的客户机和服务器。
    网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。
    4.编译和解释性
    Java编译程序生成字节码(byte-code),而不是通常的机器码。Java字节码提供对体系结构中性的目标文件格式,代码设计成可有效地传送程序到多个平台。Java程序可以在任何实现了Java解释程序和运行系统(run-time system)的系统上运行。
    在一个解释性的环境中,程序开发的标准“链接”阶段大大消失了。如果说Java还有一个链接阶段,它只是把新类装进环境的过程,它是增量式的、轻量级的过程。因此,Java支持快速原型和容易试验,它将导致快速程序开发。这是一个与传统的、耗时的“编译、链接和测试”形成鲜明对比的精巧的开发过程。
    5.稳健性
    Java原来是用作编写消费类家用电子产品软件的语言,所以它是被设计成写高可靠和稳健软件的。Java消除了某些编程错误,使得用它写可靠软件相当容易。
    Java是一个强类型语言,它允许扩展编译时检查潜在类型不匹配问题的功能。Java要求显式的方法声明,它不支持C风格的隐式声明。这些严格的要求保证编译程序能捕捉调用错误,这就导致更可靠的程序。
    可靠性方面最重要的增强之一是Java的存储模型。Java不支持指针,它消除重写存储和讹误数据的可能性。类似地,Java自动的“无用单元收集”预防存储漏泄和其它有关动态存储分配和解除分配的有害错误。Java解释程序也执行许多运行时的检查,诸如验证所有数组和串访问是否在界限之内。
    异常处理是Java中使得程序更稳健的另一个特征。异常是某种类似于错误的异常条件出现的信号。使用try/catch/finally语句,程序员可以找到出错的处理代码,这就简化了出错处理和恢复的任务。
    6.安全性
    Java的存储分配模型是它防御恶意代码的主要方法之一。Java没有指针,所以程序员不能得到隐蔽起来的内幕和伪造指针去指向存储器。更重要的是,Java编译程序不处理存储安排决策,所以程序员不能通过查看声明去猜测类的实际存储安排。编译的Java代码中的存储引用在运行时由Java解释程序决定实际存储地址。
    Java运行系统使用字节码验证过程来保证装载到网络上的代码不违背任何Java语言限制。这个安全机制部分包括类如何从网上装载。例如,装载的类是放在分开的名字空间而不是局部类,预防恶意的小应用程序用它自己的版本来代替标准Java类。
    7.可移植性
    Java使得语言声明不依赖于实现的方面。例如,Java显式说明每个基本数据类型的大小和它的运算行为(这些数据类型由Java语法描述)。
    Java环境本身对新的硬件平台和操作系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSIC语言编写。
    8.高性能
    Java是一种先编译后解释的语言,所以它不如全编译性语言快。但是有些情况下性能是很要紧的,为了支持这些情况,Java设计者制作了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。
    Java字节码格式设计时考虑到这些“及时”编译程序的需要,所以生成机器代码的过程相当简单,它能产生相当好的代码。
    9.多线索性
    Java是多线索语言,它提供支持多线索的执行(也称为轻便过程),能处理不同任务,使具有线索的程序设计很容易。Java的lang包提供一个Thread类,它支持开始线索、运行线索、停止线索和检查线索状态的方法。
    Java的线索支持也包括一组同步原语。这些原语是基于监督程序和条件变量风范,由C.A.R.Haore开发的广泛使用的同步化方案。用关键词synchronized,程序员可以说明某些方法在一个类中不能并发地运行。这些方法在监督程序控制之下,确保变量维持在一个一致的状态。
    10.动态性
    Java语言设计成适应于变化的环境,它是一个动态的语言。例如,Java中的类是根据需要载入的,甚至有些是通过网络获取的。

    优点
    (1)一次编写,到处运行。
    (2)系统的多平台支持。
    (3)强大的可伸缩性。
    (4)多样化和功能强大的开发工具支持。

    缺点
    (1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
    (2) Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的。java文件和.class文件,以及对应的版本文件。

    优缺点
    1、跨平台性,虽然是很好的优势,可以让JAVA在任何的系统中运行,但是前提是该系统要安装JAVA虚拟机,这样导致一些JAVA编写的桌面程序无法在一般的用户(没有安装JAVA虚拟机的用户)上使用
    2、JAVA的身后是SUN公司,提供及时的API更新,但是过多的版本导致JAVA的向下兼容性很差。而SUN公司在J2EE上的标准定义的并不是完美,导致在J2EE的开发中多数使用开源框架,开源框架是好东西,但是更新速度并不快。
    3、都说面向对象的语言先进与面向过程,JAVA是OOP语言,但是它适合的是BS系统,在WEB项目中JAVA的实力毋庸置疑,但是转到了底层的程序却无法同C++抗衡。
    4、个人认为JAVA的最大优点是开源,但是这往往也成了最大的缺陷了,无法定义一个好的标准使得开发时使用了框架,在新的程序员来到公司时必须先了解框架,延缓了开发的时间。

    C++

    语言特点编辑
    支持数据封装和数据隐藏
    在C++中,类是支持数据封装的工具,对象则是数据封装的实现。C++通过建立用户定义类支持数据封装和数据隐藏。
    在面向对象的程序设计中,将数据和对该数据进行合法操作的函数封装在一起作为一个类的定义。对象被说明为具有一个给定类的变量。每个给定类的对象包含这个类所规定的若干私有成员、公有成员及保护成员。完好定义的类一旦建立,就可看成完全封装的实体,可以作为一个整体单元使用。类的实际内部工作隐藏起来,使用完好定义的类的用户不需要知道类是如何工作的,只要知道如何使用它即可。
    支持继承和重用
    在C++现有类的基础上可以声明新类型,这就是继承和重用的思想。通过继承和重用可以更有效地组织程序结构,明确类间关系,并且充分利用已有的类来完成更复杂、深入的开发。新定义的类为子类,成为派生类。它可以从父类那里继承所有非私有的属性和方法,作为自己的成员。
    支持多态性
    采用多态性为每个类指定表现行为。多态性形成由父类和它们的子类组成的一个树型结构。在这个树中的每个子类可以接收一个或多个具有相同名字的消息。当一个消息被这个树中一个类的一个对象接收时,这个对象动态地决定给予子类对象的消息的某种用法。多态性的这一特性允许使用高级抽象。
    继承性和多态性的组合,可以轻易地生成一系列虽然类似但独一无二的对象。由于继承性,这些对象共享许多相似的特征。由于多态性,一个对象可有独特的表现方式,而另一个对象有另一种表现方式。

    优点
    1、 C++实现了面向对象程序设计。在高级语言当中,处理运行速度是最快的,大部分的游戏软件,系统都是由C++来编写的。
    2、 C++语言非常灵活,功能非常强大。如果说C语言的优点是指针,那么C++的优点就是性能和类层次结构的设计。
    3、C++非常严谨、精确和数理化,标准定义很细致。
    4、 C++语言的语法思路层次分明、相呼应;语法结构是显式的、明确的。

    缺点
    1,语言的过度复杂和标准库的过度苍白。
    2, C++语言过于复杂在业界是共识。一个指针就使C++比关键字数目相同的语言复杂许多,导入模板后各种应用精巧的应用使这门语言进一步复杂化,而C++0x使这复杂性又升华了。

    PHP

    特性
    PHP的特性包括:

    1. PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。
    2. PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,
      PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;
      PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。
    3. PHP支持几乎所有流行的数据库以及操作系统。
    4. 最重要的是PHP可以用C、C++进行程序的扩展!

    优点
    1,开放源代码
    所有的PHP源代码事实上都可以得到。
    2,免费性
    和其它技术相比,PHP本身免费且是开源代码。
    3,快捷性
    程序开发快,运行快,技术本身学习快。嵌入于HTML:因为PHP可以被嵌入于HTML语言,它相对于其他语言。编辑简单,实用性强,更适合初学者。
    4,跨平台性强
    由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS、Mac OS、Android等平台
    5,效率高
    PHP消耗相当少的系统资源。
    6,图像处理
    用PHP动态创建图像,PHP图像处理默认使用GD2。且也可以配置为使用image magick进行图像处理。
    7,面向对象
    在php4,php5 中,面向对象方面都有了很大的改进,php完全可以用来开发大型商业程序。
    专业专注
    PHP支持脚本语言为主,同为类C语言。

    缺点
    1.对多线程支持不太好,大多数时候我们只能简单的模拟去实现的,Via。
    2.对面向对象的支持也不太好,相对来说PHP5的面向对象有了不少的提升。
    3.编码规范不太统一,如删除用户,有的人用delete_user,而有的人可能用deleteUser,如果不提前制定编码规范,这种情况可能会经常发生,因为每个人都有自己的编码习惯。

    c#

    C#所开发的程序源代码并不是编译成能够直接在操作系统上执行的二进制本地代码。与Java类似,它被编译成为中间代码,然后通过.NETFramework的虚拟机——被称之为通用语言运行时(CLR)——执行。 所有的.Net编程语言都被编译成这种被称为MSIL(Microsoft Intermediate Language )的中间代码。因此虽然最终的程序在表面上仍然与传统意义上的可执行文件都具有“.exe”的后缀名。但是实际上,如果计算机上没有安装.Net Framework,那么这些程序将不能够被执行。 在程序执行时,.Net Framework将中间代码翻译成为二进制机器码,从而使它得到正确的运行。最终的二进制代码被存储在一个缓冲区中。所以一旦程序使用了相同的代码,那么将会调用缓冲区中的版本。这样如果一个.Net程序第二次被运行,那么这种翻译不需要进行第二次,速度明显加快。系统均适用。

    优点

    1. 完全面向对象。
    2. 支持分布式,之所以有C#,是因为微软相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上。所以C#一出生就注定了能很好解决分布式问题。
    3. 跟Java类似,C#代码经过编译后,成为了一种IL(中间语言)。在运行时,再把IL编译为平台专用的代码。
    4. 健壮,C#在检查程序错误和编译与运行时错误一点也不逊于Java,C#也用了自动管理内存机制。
    5. C#不像Java那样完全摒弃了指针和手动内存管理。C#默认情况下是不能使用指针的,程序员在有必要时可以打开指针来使用。这样可以保证编程的灵活性。
    6. 安全性:C#的安全性是有.net平台来提供的。C#代码编译后成为IL语言。是一种受控代码,.net提供类型安全检查等机制保证代码是安全的。
    7. 可移植性:由于C#使用类似Java的中间语言机制。使得C#也跟Java类似,可以很方便的移植到其他系统。在运行时,再把中间代码编译为适合特定机器的代码。
    8. 解释性:C#也是一种特殊的解释性语言。
    9. 高性能:C#把代码编译成中间语言后,可以高效的执行程序。
    10. 多线程:与Java类似,可以由一个主进程分出多个执行小任务的多线程。
    11. 组件模式:C#很适合组件开发。各个组件可以由其他语言实现的,然后集成在.net中。
      C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。

    缺点
    1, C#不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或者1050次的循环,并在不需要这些循环时,立即其管理它们所占的资源。
    2,C#缺乏性能极高的应用程序所需要的关键功能,包括保证在所代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。

    .Net

    .Net是微软推出的一门技术,它是一个技术平台,基于这个平台进行开发可以简化很多工作。.Net的主要优点有跨语言,跨平台,安全,以及对开放互联网标准和协议的支持
    .Net通过将各语言先编译成中间语言(IL),然后再执行时用即时(Just In Time)编译器将之编译成本地平台代码来实现异构平台下对象的互操作,目前.Net支持的平台有Windows,Linux和Unix的支持正在开发中。
    基于.Net平台上有很多语言,比如C#、VB.Net、IronPython、F#、Powershell等,F#、Powershell是满足特定用途的语言,IronPython、IronRuby等并没有广泛应用,VB.Net是仅次于C#的第二大基于.Net的语言,不过按照微软的战略是把主要精力放到C#上,VB.Net只是微软为了将VB开发人员平滑的转移到.Net平台下的语言。[2]
    初学者可能会弄不清C#和.Net的关系,.Net是一个技术平台,而C#是这个技术平台上的一门语言,就像Windows是一个操作系统,而Word、QQ、FireFox则是在Windows上运行的一个程序。

    优点:
    1.完全支持类和面向对象编程,包括接口和继承,虚函数和运算符重载的处理
    2.定义完整,一致的基本类型集
    3.对自动生成xml文档说明的内置支持
    4.自动清理动态分配的内存
    5.可以用用户定义的特性来标记类或者方法,这可以用于文档说明,对编译有一定的影响
    6.对.net 基类库的完全访问权,并易于访问windows API
    7.可是使用指针和直接内存访问,但c#语言可以在没有它们的条件下访问内存
    8.以visual baisc 的风格支持属性和事件
    9.改编译器选项,可以把程序编译为可执行文件或。net组件库,该组件库可以用于activeX控件(Com组件)相同的方式由其它代码调用
    10.C#可以用于编写asp.net的动态web页面和xml web服务

    缺点:
    1.C#不适用于编写时间急迫或性能非常高的代码,例如一个要运行1000或者1050次的循环,并在不需要这些循环时,立即其管理它们所占的资源。
    2.C#缺乏性能极高的应用程序所需要的关键功能,包括保证在所代码的特定地方运行的内联函数和析构函数。但这类应用程序非常少。

    Python

    设计定位编辑
    Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。
    Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。所以很多人认为Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy。
    Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
    虽然Python可能被粗略地分类为“脚本语言”(script language),但实际上一些大规模软件开发计划例如Zope、Mnet及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言,原因是“脚本语言”泛指仅作简单程序设计任务的语言,如shellscript、VBScript等只能处理简单任务的编程语言,并不能与Python相提并论。
    Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。因此,很多人还把Python作为一种“胶水语言”(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如Google Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用相应的模块。《Python技术手册》的作者马特利(Alex Martelli)说:“这很难讲,不过,2004 年,Python 已在Google 内部使用,Google 召募许多 Python 高手,但在这之前就已决定使用Python,他们的目的是 Python where we can, C++ where we must,在操控硬件的场合使用 C++,在快速开发时候使用 Python。”

    优点
    简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
    易学:Python极其容易上手,因为Python有极其简单的说明文档[5] 。
    速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。[3]
    免费、开源: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程序员,也可能陷入陷阱当中。最常见的情况是tab和空格的混用会导致错误,而这是用肉眼无法分别的。
    运行速度慢:这里是指与C和C++相比。

    Shell

    在Linux下命令行终端(terminal)是一个很重要的工具。我们可以在终端下执行一条条命令得到输出结果。在命令行下,命令都分为一个个极小的子集,每个命令只专著于完成和实现一个功能 这也是Unix的设计哲学, 小即是美 。而不想在windows上的GUI(Graphic User Interface)软件的功能全面和集中。但是这些命令,给了我们极大的定制化,和扩展空间,我们可以就像搭积木一样,来组合这些 小命令实现我们的想要功能。 shell脚本就好像积木和积木之间的连接器。Shell其实准确来说是一个用 C 语言编写的应用程序,它提供给用户一个和Unix/Linux系统交互的通道。用户甚至可以通过它来直接访问系统的内核服务。 shell编程,也叫shell脚本(shellscript)编程.

    优点
    1.shell的语法和结构比较简单,易于掌握
    2.学习和使用也比较方便,上手比较容易
    3.常用命令也比较好记,不清楚的情况下,可以通过man命令迅速找到相关的说明
    4.shell是解释型语言,运行之前不需要编译
    5.文本处理方面,主要依赖于awk、sed这两把尖刀,能够方便快捷地处理相当复杂的问题
    6.程序开发的效率非常高,依赖于功能强大的命令可以迅速地完成开发任务、

    缺点
    1.弱类型语言,对变量定义的查检不是很严格
    2.效率上存在的劣势:shell相当于一个接口,大部分的功能全部靠外部程序来完成,如shell在调用awk、sed的进程来处理文件时,需要产生一个新的进程,并且还需要使用管道进行IPC进程通信,那么就会增大相应的开销。在文本处理过程中,原本一个工具一次能完成的任务,在需要经过awk和sed等多次管道后,程序性能的降低是必然的。因此,按照这个观点来看的话,完成同样功能的C代码要比shell快(我会进一步做测试验证这个想法)。结合shell易于开发,但效率不高的特点,可以用一句话来概括:“shell的开发产能优于运行的性能”
    3.I/O性能不高:之前看过一篇文章介绍,shell的I/O性能比perl要差,我会进一步做测试来验证这个观点是否正确。
    4.一些细节上的不足:向awk传入shell定义的变量时,表达式比较复杂,且对shell的变量是只能读取而不能修改。

    SQL

    结构化查询语言(Structured Query Language,简称SQL)是一种介于关系代数与关系演算之间的语言,是一种用来与关系数据库管理系统通信的标准计算机语言。其功能包括数据查询、数据操纵、数据定义和数据控制4个方面,是一个通用的、功能极强的关系数据库语言。目前已成为关系数据库的标准语言。

    SQL基本功能
    SQL语言集数据查询(Data Query)、数据操纵(Data Manipulation)、数据定义(Data Definition)和数据控制(Data Control)功能于一体,充分体现了关系数据语言的特点和优点。
    1.数据定义功能
    通过DDL(Data Definition Language)语言来实现。可用来支持定义或建立数据库对象(如表、索引、序列、视图等),定义关系数据库的模式、外模式、内模式。常用DDL语句为不同形式的CREATE、ALTER、 DROP命令。
    2.数据操纵功能
    数据操纵功能通过DML(Data Manipulation Language)语言来实现,DML包括数据查询和数据更新两种语句,数据查询指对数据库中的数据进行查询、统计、排序、分组、检索等操作.数据更新指对数据的更新、删除、修改等操作。
    3.数据控制功能
    数据库的数据控制功能指数据的安全性和完整性。通过数据控制语句DCL(Data Control Language)来实现。

    优点
    1.语言简洁、易学易用
    2.高度非过程化
    用户只需提出“做什么”就可以得到预期的结果,至于“怎么做”则由RDBMS完成,并且其处理过程对用户隐藏
    3.SQL语言既可交互式使用,也可以以嵌入形式使用
    前者主要用于数据库管理者等数据库用户,允许用户直接对DBMS发出SQL命令,受到运行后的结果,或者主要嵌入(C、C++)等宿主语言中,被程序员用来开发数据库应用程序。而在两种不同的使用方式下,SQL语言的语法结构基本上是一致的。这种以统一的语法结构提供两种不同的使用方式的作法,为用户提供了极大的灵活性与方便性。
    4.面向集合的操作方式
    SQL语言采用集合操作方式,不仅查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。
    5.SQL语言支持关系数据库三级模式结构
    数据库三级模式指:内模式对应于存储文件,模式对应于基本表,外模式对应于视图。基本表是本身独立存在的表,视图是从基本表或其他视图中导出的表,它本身不独立存储在数据库中,也就是说数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中,因此视图是一个虚表。用户可以用SQL语言对视图和基本表进行查询。在用户眼中,视图和基本表都是关系,而存储文件对用户是透明的。
    6.综合统一
    ① SQL语言集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于一体,语言风格统一,可以独立完成数据库生命周期中的全部活动,包括定义关系模式、录入数据以建立数据库、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作要求,这就为数据库应用系统开发提供了良好的环境,例如用户在数据库投入运行后,还可根据需要随时地逐步地修改模式,并不影响数据库的运行,从而使系统具有良好的可扩充性。
    ② 在关系模型中实体和实体间的联系均用关系表示,这种数据结构的单一性带来了数据操作符的统一,即对实体及实体间的联系的每一种操作(如:查找、插入、删除、修改)都只需要一种操作符

    缺点
    1,安全性不够,加了用户级密码容易破解
    2,C/S 结构下对服务器要求很高,否则容易造成 MDB 损坏并发数255。但是对高强度操作适应性差,如果服务器不够好,网络不够好,编程的方法不够好,6-7个人同时访问就能导致 MDB 损坏或者并死不能将 VBA 代码开发的软件系统直接编译成 EXE 可执行文件。
    3,不能脱离 ACCESS 或者 ACCESS RUNTIME 环境,该环境相对其他软件体积较大(50M左右)

    展开全文
  • 常用的编程语言及其特点This is an introductory article for students who are willing to learn computer programming languages like C/C++, Python, JavaScript, or any other programming language. This will ...

    常用的编程语言及其特点

    This is an introductory article for students who are willing to learn computer programming languages like C/C++, Python, JavaScript, or any other programming language. This will provide basic details about programming languages.

    这是一篇入门文章,适用于愿意学习计算机编程语言(例如C / C ++PythonJavaScript或任何其他编程语言)的学生。 这将提供有关编程语言的基本细节。

    Let's start with the language first.

    让我们先从语言开始。

    什么是语言? (What is a language?)

    Language is the medium of communication to share ideas, opinions with each other. For example, if we want to communicate with someone, we need a language that can be any of the languages that both the communicators know it can be English, Hindi, Spanish, or another language. But you need at least one language to communicate with someone (human/person).

    语言是交流思想,观点的媒介。 例如,如果我们想与某人交流,我们需要的语言可以是双方都知道的任何一种语言,可以是英语,北印度语,西班牙语或其他语言。 但是您至少需要一种语言才能与某人(人/人)进行交流。

    什么是编程语言? (What is a programming language?)

    To communicate with a person, you need a language. In the same way, if you need to communicate with the computer, you need a programming language. Without a programming language, you cannot communicate with the computer.

    要与人交流,您需要一种语言。 同样,如果您需要与计算机通信,则需要一种编程语言。 没有编程语言,就无法与计算机通信。

    Thus, the programming language is the medium of communication between human and computer systems. It is the set of instructions written in a specific style (coding) to instruct the computer to perform a specific task.

    因此, 编程语言是人与计算机系统之间通信的媒介。 它是以特定样式(编码)编写的一组指令,用于指示计算机执行特定任务

    计算机编程语言的类型 (Types of computer programming languages)

    There are three types of computer programming languages, they are,

    有三种类型的计算机编程语言,它们是

    1. Low-level programming languages

      低级编程语言

    2. High-level programming languages

      高级编程语言

    3. Middle-level programming languages

      中级编程语言

    1)低级编程语言 (1) Low-level programming languages)

    These are machine-dependent programming languages such as Binary (Machine code) and Assembly language.

    这些是依赖于机器的编程语言,例如二进制(机器代码)和汇编语言。

    Since computers can only understand Binary language which is instructions in the form of 0's and 1's (Signals - that can be either High or Low). So these programming languages are the best way to give signals (Binary Instructions) to the computer directly but are not that human friendly.

    由于计算机只能理解二进制语言,因此是0和1(信号-可以是高电平或低电平)形式的指令。 因此,这些编程语言是直接向计算机发送信号(二进制指令)的最佳方法,但并不友好。

    Machine Code (Binary Language) does not need an interpreter or compiler because the computer understands these signals directly.

    机器代码(二进制语言)不需要解释器或编译器,因为计算机可以直接理解这些信号。

    The assembly language needs to be converted to equivalent Binary code so that the computer can understand the instructions written in Assembly. Assembler is used to convert an assembly code to its equivalent Binary code.

    汇编语言需要转换为等效的二进制代码,以便计算机可以理解汇编中编写的指令。 汇编程序用于将汇编代码转换为其等效的二进制代码。

    The codes written in such kind of languages are difficult to write, read, edit, and understand. Also, the programs are not portable to any other computer system.

    用这种语言编写的代码很难编写,阅读,编辑和理解。 而且,程序不可移植到任何其他计算机系统。

    Low-Level programming language programs are faster than High-Level programming language programs as they have fewer keywords, symbols and there is no need to convert it into Machine Code.

    低级编程语言程序比高级编程语言程序快,因为它们具有较少的关键字,符号,并且无需将其转换为机器代码。

    2)高级编程语言 (2) High-level programming languages)

    These are the machine-independent programming languages, which are easy to write, read, edit, and understand.

    这些是与机器无关的编程语言,易于编写,阅读,编辑和理解。

    Languages like Java, .Net, Python, JavaScript, C++, C, C#, and others (which are very popular now to develop user-end applications). These languages come under the category of high-level programming language.

    诸如Java.Net ,Python,JavaScript,C ++,C,C#等语言(现在在开发用户端应用程序中非常流行)。 这些语言属于高级编程语言。

    High-level programming languages have special keywords, functions, and class libraries. Using these we can easily build a computer program.

    高级编程语言具有特殊的关键字,函数和类库。 使用这些,我们可以轻松地构建计算机程序。

    The computer does not understand the program written in such languages directly, As the computer understands only Machine code. So, Programming language translators are required to convert a high-level program to its equivalent Machine code.

    由于计算机只能理解机器代码,因此计算机无法直接理解用此类语言编写的程序。 因此,需要编程语言翻译器才能将高级程序转换为其等效的机器代码。

    Programming translators are generally called Compilers and Interpreters. Compilers are the system software that converts a program written in particular programming languages to its equivalent Machine code.

    编程翻译器通常称为编译器和解释器。 编译器是系统软件,可以将以特定编程语言编写的程序转换为其等效的机器代码。

    Features of High-level programming languages,

    高级编程语言的功能

    • Portable (system-independent): The programs written in High-Level programming languages are independent of the system which means a program written on one system can run on another system.

      可移植(独立系统) :用高级编程语言编写的程序独立于系统,这意味着在一个系统上编写的程序可以在另一个系统上运行。

    • Easy to understand: As these programming languages contain keywords, functions, class libraries (which are similar to English words), we can easily understand the meaning of a particular term in that programming language.

      易于理解 :由于这些编程语言包含关键字,函数,类库(类似于英语单词),因此我们可以轻松地理解该编程语言中特定术语的含义。

    • Easy to code, read, and edit: The programs written in a high-level programming language are easy to code, read, and edit. Even we can edit programs written by other programmers easily by easily if we have a little knowledge of the programming language.

      易于编码,阅读和编​​辑 :用高级编程语言编写的程序易于编码,阅读和编​​辑。 即使我们对编程语言有一点了解,也可以轻松地编辑其他程序员编写的程序。

    • Even though programs written in high-level language compile/run slower than programs in low-level language, these programming languages are popular to develop User End Applications.

      即使使用高级语言编写的程序比使用低级语言编写的程序的编译/运行速度慢,但这些编程语言在开发用户最终应用程序时仍很受欢迎。

    3)中级编程语言 (3) Middle-level programming languages)

    There is no such category of programming languages. But the programming languages that have features of both low level and high-level programming languages come under this category.

    没有此类编程语言。 但是具有低级和高级编程语言功能的编程语言属于此类别。

    Hence, we can say that the programming languages which have features of Low Level as well as High-Level programming languages known as "Middle Level" programming language.

    因此,可以说具有低级功能的编程语言以及称为“中级”编程语言的高级编程语言

    C programming languages is the best example of Middle-Level Programming languages as it has features of low level and high-level programming languages both.

    C编程语言是中级编程语言的最佳示例,因为它具有低级和高级编程语言的功能。

    翻译自: https://www.includehelp.com/basics/computer-programming-languages.aspx

    常用的编程语言及其特点

    展开全文
  • 常用编程语言介绍和特点

    千次阅读 2019-03-28 20:18:28
    (一)编程语言介绍 编程语言(programminglanguage),是用来定义...编程语言俗称“计算机语言”,种类非常的多,总的来说可以分成机器语言、汇编语言、高级语言三大类。电脑每做的一次动作,一个步骤,都是按...
  • 高级语言之间的关系 C++的版本: 具体学习链接:https://www.icourse163.org/course/BUPT-1003564002
  • 常用编程语言介绍及特点

    千次阅读 2019-03-28 15:28:43
    编程语言 编程语言俗称计算机语言,种类非常多,总的来说可分为机器语言,汇编语言,高级语言。电脑做的每一次动作,一个步骤,都是按照已经用...(以下是常用的几种编程语言及其特点) 一、C 既有高级语言特...
  • 机器语言、汇编语言(低级语言)、高级语言

    万次阅读 多人点赞 2019-11-10 00:00:57
    机器语言、汇编语言(低级语言)、高级语言 【原文:https://zhuanlan.zhihu.com/p/37524989】 编程语言的机器级表示:机器语言、汇编语言、高级语言 ​ 首先下面一张图是C语言、汇编语言以及翻译过的机器语言,大家...
  • 高级语言及其描述

    2019-12-21 10:08:29
    2.常用高级语言 FORTRAN 数值计算 COBOL 事务处理 PASCAL 结构程序设计 ADA 大型程序、嵌入式实时系统 LISP 函数式程序设计语言 PROLOG 逻辑程序设计 ALGOL 算法语言 C/C++ 系统程序设计 Java Internet ...
  • 常用编程语言简介 #编程语言(programming language),来自百度百科的解释为:编程语言是用来...#编程语言俗称“计算机语言”,种类非常的多,总的来说可以分成机器语言、汇编语言、高级语言三大类。电脑每做的一次...
  • 高级语言的两种处理方式——编译和解释 1.编译型 工作过程图 编译程序功能就是把高级语言书写的源代码译成与之等价的目标程序(汇编语言或机器语言)。 2.解释型 解释程序实现高级语言的三种方式 解释型在词法、...
  • 常用计算机语言及其应用和特点常用计算机语言及其应用和特点:Java应用:个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网1.Java语言是简单的 Java语言是一个面向对象的 Java语言是分布式的 Java...
  • 常用编程语言汇总及其用途

    千次阅读 2020-08-08 18:27:36
    常用编程语言汇总及其用途 C:操作系统、嵌入式、驱动开发 C++:图形图像、科研、通信、桌面软件、游戏、游戏服务器 C#:Windows桌面软件、.NET Web、服务器 Java: Java SE:跨平台的桌面应用,Android;Java EE:...
  • 编程语言 编程语言(programming language)  编程语言是用来定义计算机程序的形式... 最早的编程语言是在电脑发明之后产生的,当时是用来控制提花织布机自动演奏钢琴的动作。在电脑领域已发明了上千不同的编...
  • 常用编程语言及特点

    2019-03-30 14:48:48
    编程语言(programming language),来自百度百科的解释为:编程语言是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的...
  • 展开全部程序设计语言32313133353236313431303231363533e78988e69d8331333238643730,通常简称为编程语言,是一组用来定义计算机程序的语法规则。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言...
  • 高级语言 计算机语言是用来干啥的呢??? 当你想要计算机按照你的“意愿”去办事,那就需要用计算机的语言告诉ta。使用计算机能理解的计算机语言,告诉计算机该怎么去做。 *一般的计算机目前还不能在人类的自然...
  • 很多高级语言的鼻祖,个人觉得最大的缺点是:他是一门面向过程的语言。主要用于嵌入式等底层领域 C++ 带面向对象的C语言,运行速度快,有人曾说:Python什么都可以干,其实C++也不例外,而且运行效率比Python高很多...
  • 高级语言C程序设计

    2021-05-23 12:26:15
    高级语言C程序设计》是2018年清华大学出版社出版的图书,作者是阳小兰、吴亮、钱程、彭玉华 。书名高级语言C程序设计作者阳小兰、吴亮、钱程、彭玉华出版社清华大学出版社出版时间2018年05月01日页数307 页定价59 ...
  • 常用编程语言及简介

    千次阅读 2019-03-19 08:55:06
    java入门篇常见编程语言及简单介绍C语言java语言C++语言C#语言PHP语言javaScript语言Obkective-C语言Python语言 常见编程语言及简单介绍 C语言 C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言...
  • plc几种常用的编程语言特点

    千次阅读 2020-08-12 13:59:04
    前期的PLC仅支持梯形图编程言语和指令表编程言语,现根据世界电工委员会制定PLC编程支持的言语包含以下五种:梯形图Delete(LD)、指令表Delete(IL)、功能模块图Delete(FBD)、顺序功能流程图Delete(SFC)结构...
  • 编译原理就 第二章 高级语言及其语法描述.ppt

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 139,036
精华内容 55,614
热门标签
关键字:

常用高级语言及其特点