一、编程语言的分类

  • 机器语言(低级语言)

    可以直接和硬件交互,用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实现) 洛谷 P1319 压缩技术

    题目描述 设某汉字由N X N的0和1的点阵图案组成,如下图.我们依照以下规则生成压缩码.连续一组数值:从汉字点阵图案的第一行第一个符号开始计算,按书写顺序从左到右,由上至下.第一个数表示连续有几个0 ...

  2. Java实现 LeetCode 330 按要求补齐数组

    330. 按要求补齐数组 给定一个已排序的正整数数组 nums,和一个正整数 n .从 [1, n] 区间内选取任意个数字补充到 nums 中,使得 [1, n] 区间内的任何数字都可以用 nums ...

  3. 使用WPF实现的 喜马拉雅FM 资源下载工具

    因为喜马拉雅pc网站上没有提供下载功能,之前有个同事问我有没有办法将资源下载到本地,当然通过浏览器F12也能找到下载地址,但挺麻烦.正好最近想学wpf,周末在家也没事,于是对着百度撸了下代码.当然只能 ...

  4. css布局相关:涉及到常见页面样式难点

    一.display:table用法 Table:display:tableBody:table-row-group;Tr: table-row;Td: table-cell https://www.c ...

  5. 【Spring注解驱动开发】面试官:如何将Service注入到Servlet中?朋友又栽了!!

    写在前面 最近,一位读者出去面试前准备了很久,信心满满的去面试.没想到面试官的一个问题把他难住了.面试官的问题是这样的:如何使用Spring将Service注入到Servlet中呢?这位读者平时也是很 ...

  6. CAS(乐观锁)与ABA问题

    cas是什么 CAS 全称 compare and swap 或者compare and exchange  比较并且交换.用于在没有锁的情况下,多个线程对同一个值的更新. cas原理 例如,我们对一 ...

  7. WEB应用的常见安全漏洞

      01. SQL 注入 SQL 注入就是通过给 web 应用接口传入一些特殊字符,达到欺骗服务器执行恶意的 SQL 命令.SQL 注入漏洞属于后端的范畴,但前端也可做体验上的优化.原因:当使用外部不 ...

  8. git 本机链接多库配置

    git config --list 查看所有配置 // 提交时读取用户名称及邮箱优先级 --local > --global > --system // 全局配置用户名称及邮箱 git c ...

  9. frp多层socks代理+端口映射

    一.首先在公网上配置服务端(frps.ini) [common] bind_addr = xx.xx.xx.xx #公网vps的ip bind_port = 7000   二.配置客户端frpc. i ...

  10. rest_framework django 简单使用(数据库创建数据, 覆盖数据, 其他的大同小异)

    事先说几个坑:数据库定义字段时候,不要定义name 要定义 username 首先, 定义model(简单定义) from django.db import models from django.co ...