一、编程语言的分类

  • 机器语言(低级语言)

    可以直接和硬件交互,用0和1和计算机沟通

    优点:执行效率高(因为可以直接和计算机沟通)

    缺点:开发效率低(都是用0和1进行编码)

  • 汇编语言

    同样可以直接和硬件交互

    优点(相较于机器语言):开发效率高(不再是0和1了)

    缺点(相较于机器语言):执行效率低(不在是计算机能读懂的0和1了)

  • 高级语言

    接近于人类的语言。

    ​ 假如现在有一个外国人要跟你交谈而你又听不懂那么你就可以有两种方式来翻译他说的话,就是解释型和编译型

    • 编译型

      可以和计算机硬件间接交互

      ​ 先全部写完再进行编译,编译成另一个文件,在与计算机进行沟通得到结果(就像一个外国人和你交谈而你可以先将他说的话全部都先记下来,再翻译成中文进行沟通)

      优点(相较于解释型语言):执行效率高(只需编译一次就能与计算机进行交流)

      缺点(相较于解释型语言):开发效率低(需要全部写完才能编译,一旦出错需要全文检查)

      如:C;C++;JAVA;GO

      C语言hello world:
      include<stdio.h>
      main
      {
      printf("hello world!\n")
      }
      Java hello world:
      public class hello
      {
      public static void main(String[]ages)
      {
      System.out.println("hello world!")
      } }
    • 解释型

      ​ 逐行翻译,需要先经过解释器(编译型语言写的)在进行编译,再与计算机进行交流沟通(就像一个外国人与你交谈,然后你找一个翻译官让他为你逐句翻译)

      优点(相较于编译型语言):开发效率高(每写一行翻译一行,一旦出错立刻就能知道)

      缺点(相较于编译型语言):执行效率低(需要先翻译成解释型语言,在进行编译才能与计算机进行沟通)

      如:Python

      Python hello world:
      print("hello world!")
  • 网络瓶颈效应

    ​ 首先应用程序都需要连接网络,而网络都会有延迟这里假设延时10ms,通过编译型高级语言写出来的程序比通过解释型高级语言写出来的程序再快也就快1ms,而这1ms相较于网络延时的10ms可能就无伤大雅


由于我们写的程序要越快越好所以我们应该选择编译型语言,但是又由于网络瓶颈效应所以在开发一些需要快速开发的程序时可以考虑使用解释型语言

python之浅谈编程语言的更多相关文章

  1. Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理

    基于python+mysql浅谈redis缓存设计与数据库关联数据处理 by:授客  QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3 ...

  2. 浅谈编程语言中的新宠Python,你叫它如何不火?

    论述 凡是对编程有所关注的朋友都已经知道,Python公布于1991年,即使出现的时间不是很遥远,但是在众多爱好者的贡献下已经发展到全民Python的地步. Python最近火起来的笼统原因:面向企业 ...

  3. 【python】浅谈包

    python中的包可以理解为模块的集合.每个包也既可以为单包也可以有多个小包组成. Python中的package定义很简单,其层次结构与目录的层次结构相同,但是每个package必须包含一个__in ...

  4. 【python】浅谈encode和decode

    对于encode和decode,笔者也是根据自己的理解,有不对的地方还请多多指点. 编码的理解: 1.编码:utf-8,utf-16,gbk,gb2312,gb18030等,编码为了便于理解,可以把它 ...

  5. Python实例浅谈之三Python与C/C++相互调用

    一.问题 Python模块和C/C++的动态库间相互调用在实际的应用中会有所涉及,在此作一总结. 二.Python调用C/C++ 1.Python调用C动态链接库 Python调用C库比较简单,不经过 ...

  6. Python实例浅谈之五Python守护进程和脚本单例运行

    一.简介 守护进程最重要的特性是后台运行:它必须与其运行前的环境隔离开来,这些环境包括未关闭的文件描述符.控制终端.会话和进程组.工作目录以及文件创建掩码等:它可以在系统启动时从启动脚本/etc/rc ...

  7. python itertool 浅谈迭代工具

    1.概述 Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个“无限”迭代器: import itertools natuals ...

  8. Python之浅谈多态和封装

    目录 组合 什么是组合 为什么使用组合 多态和多态性 多态 什么是多态? 多态性 好处 多态性 什么是多态性 封装 封装是什么意思? 隐藏 如何用代码实现隐藏 python 实际上是可以访问隐藏属性的 ...

  9. Python之浅谈继承

    目录 继承 继承介绍 如何使用继承 新式类:只要继承了object类,就是新式类,再python3中,默认继承object类 经典类:没有继承object的类,就是经典类 利用继承减少代码冗余,菱形问 ...

随机推荐

  1. Java实现 LeetCode 5 最长回文子串

    5. 最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad" 输出: "bab&quo ...

  2. SQL Server账号密码(sa)登录失败 错误原因:233

    (其实以前经常用的时候,都很简单,最近一段时间不用了,再一看发现都忘记的差不多了,还是写一篇博客吧,防止下一次再在这种问题上面浪费时间) 右键此电脑,点击管理 如果没有此电脑打开文件夹 在这里右键也是 ...

  3. PAT 月饼

    月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼.现给定所有种类月饼的库存量.总售价.以及市场的最大需求量,请你计算可以获得的最大收益是多少. 注意:销售时允许取出一部分库存.样 ...

  4. 【asp.net core 系列】8 实战之 利用 EF Core 完成数据操作层的实现

    0. 前言 通过前两篇,我们创建了一个项目,并规定了一个基本的数据层访问接口.这一篇,我们将以EF Core为例演示一下数据层访问接口如何实现,以及实现中需要注意的地方. 1. 添加EF Core 先 ...

  5. 2个线程A-B-A-B或者B-A-B-A循环输出

    代码: /** * 两个线程循环打印输出a-b-a-b */ public class AandBforTOthread { private static Object o = new Object( ...

  6. Nice Jquery Validator 【从 jQuery Validation 迁移】

    1. 初始化表单验证 .validate VS .validator jquery-validation : $("#myform").validate(options) nice ...

  7. 《Java并发编程的艺术》第4章 Java并发编程基础 ——学习笔记

    参考https://www.cnblogs.com/lilinzhiyu/p/8086235.html 4.1 线程简介 进程:操作系统在运行一个程序时,会为其创建一个进程. 线程:是进程的一个执行单 ...

  8. 浅谈RegExp 对象的方法

    JavaScript RegExp 对象有 3 个方法:test().exec() 和 compile().(1) test() 方法用来检测一个字符串是否匹配某个正则表达式,如果匹配成功,返回 tr ...

  9. ca73a_c++_流的条件状态

    /*ca73a_c++_流的条件状态strm::iostate strm::badbit //流的状态strm::failbit //输入的状态,应该输入数字,结果输入为字符,strm::eofbit ...

  10. springboot 集成mybatis时日志输出

    application.properties(yml)中配置的两种方式: 这两种方式的效果是一样的,但是下面一种可以指定某个包下的SQL打印出来,上面这个会全部的都会打印出来.