一、编程语言的分类

  • 机器语言(低级语言)

    可以直接和硬件交互,用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 581 最短无序连续子数组(从两遍搜索找两个指针)

    581. 最短无序连续子数组 给定一个整数数组,你需要寻找一个连续的子数组,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序. 你找到的子数组应是最短的,请输出它的长度. 示例 1: 输入: ...

  2. Java实现 LeetCode 299 猜数字游戏

    299. 猜数字游戏 你正在和你的朋友玩 猜数字(Bulls and Cows)游戏:你写下一个数字让你的朋友猜.每次他猜测后,你给他一个提示,告诉他有多少位数字和确切位置都猜对了(称为"B ...

  3. Java实现 LeetCode 67 二进制求和

    67. 二进制求和 给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11", b = "1 ...

  4. Java实现 LeetCode 65 有效数字

    65. 有效数字 验证给定的字符串是否可以解释为十进制数字. 例如: "0" => true " 0.1 " => true "abc&q ...

  5. python3 基本书写规范

    一.缩进在类.函数定义完成后需要接着写子代码快需要在定义完成后加上: 缩进格式为首字母开始空格4个位置(取消了大括号以冒号代替子模块)例: class pop: #类的定义方式 def pip: #函 ...

  6. httpd解析php的小贴士

    以前使用php的时候, 都是直接用nginx和php对接的, 极少是用apache去对接, 但是最近在用httpd测试WordPress的时候, 发现一个有趣的问题, php不用启动也能直接去解析ph ...

  7. CORS跨域漏洞学习

    简介 网站如果存CORS跨域漏洞就会有用户敏感数据被窃取的风险. 跨域资源共享(CORS)是一种浏览器机制,可实现对位于给定域外部的资源的受控访问.它扩展了同源策略(SOP)并增加了灵活性.但是,如果 ...

  8. SuperSlide之属性targetCell介绍

    禁用页面菜单js代码: <script type="text/javascript"> document.oncontextmenu=function(){ retur ...

  9. 关于Api的那些事儿!

    工作中一直在写Api数据接口,但大部分的Api都存在这样的问题 1.接口请求的地址和参数暴露 2.重要接口返回数据明文暴露 3.APP登录态请求的数据完全性问题 4.代码层的数据完全性问题(从代码层有 ...

  10. Windows10 下安装和配置Redis

    原文链接:https://blog.csdn.net/linghugoolge/article/details/86608897 一.下载地址https://github.com/MicrosoftA ...