计算机语言的发展

1、机器语言(二进制)、汇编语言。比较难以理解和识记,与人类语言之间的差距太大;

2、高级语言,可以写出类似于人类思维的语句,可以有人们习惯的表达方式;

3、面向对象的语言,描述客观世界事物的属性和行为以及其关系;将具有共同属性和行为的事物归类,形成类,并且可以继承(同类的共同属性)、多态(同类的不同之处),更加的接近人类的思维和语言方式;

(学好一门语言我们不一定能够完成什么事情,因为缺乏相对应的专业背景)

程序设计方法

1、面向过程的程序设计方法。

2、面向过程结构化程序设计方法。(结构化,模块化,模块之间尽可能少联系和不联系)

3、面向对象的程序设计方法。

3.1 将数据和对数据的操作方法封装在一起,作为一个整体,称为对象。

3.2 同类事物抽象出来,形成类,并通过接口与外部联系。

3.3 对象之间可以发生联系。

3.4 对象——系统中描述客观事物的实体,是构成系统的基本单位,由属性(静态)和行为(动态)构成。

3.5 类——抽象,忽略表面的非本质的东西,将具有相同性质的事物归成一类,得出一个抽象的概念,比如车,石头,树等。面向对象的类同样是具有共同性质的对象(类的实例)的集合,该类为属于它的所有对象提供共同的属性和行为的描述,就像一个模具,对象就像是这个模具生产出来的铸件。

3.6 封装——把对象的属性和行为结合在一起,与外界形成一定隔离,但有一定的外界接口,比如说钟表(可以调时的),只可以在外面调时,不可拆开,所以要规定哪些属性是不可操作的,哪些是提供给外界操作的,因此也就需要提供一些供外界操作的方法和接口。

3.7 继承——程序设计中,继承是特殊类具有一般类的全部属性和行为(轮船继承交通工具)。

3.8 多态——继承了一般类的特殊类,可能具有不同的外在行为和属性。比如轮船之于货轮与游轮。

4、基本术语

源程序——代码,目标程序——经过翻译的计算机能够认识的代码,编译程序——是用高级语言写成的用来将源程序翻译成目标程序的代码。

C++——绪论的更多相关文章

  1. TMS320C54x系列DSP的CPU与外设——第1章 绪论

    第1章 绪论 TMS320C54x DSP是TMS320系列DSP产品中的定点数字信号处理器.C54x DSP满足了实时嵌入式应用的一些要求,例如通信方面的应用. C54x的中央处理单元(CPU)具有 ...

  2. 翻译学python---《Learn Python the hard Way》---第一章 绪论

    打算学习python,但是又不想单纯地看书或是写个小项目,干脆引入很流行的翻译学习法来学习吧-         在论坛上看到了国外的一本<Learn Python the hard Way> ...

  3. 数据结构与算法(C/C++版)【绪论/线性表】

    声明:数据结构与算法系列博文参考了<天勤高分笔记>.<王道复习指导>.C语言中文网.非商业用途,仅为学习笔记总结! 第一章<绪论> 一.基本概念及入门常识  /// ...

  4. 数字图像处理的Matlab实现(1)—绪论

    第1章 绪论 1.1 什么是数字图像处理 一幅图像可以定义为一个二维函数\(f(x,y)\),这里的\(x\)和\(y\)是空间坐标,而在任意坐标\((x,y)\)处的幅度\(f\)被称为这一坐标位置 ...

  5. Data01-数据结构和算法绪论

    Data01-数据结构和算法绪论 一.数据结构和算法绪论 1.1 什么是数据结构? 数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科. 程序设计=数据结 ...

  6. Chapter 1(数据结构绪论)

    附件列表 数据结构绪论.jpg

  7. 编译原理(一)绪论概念&文法与语言

    绪论概念&文法与语言 以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记. 绪论基本概念 1. 低级语言:字位码.机器语言.汇编语言.与特定的机器有关,功效高,但使用复杂.繁琐.费时 ...

  8. 【读书笔记】周志华《机器学习》第三版课后习题讨<第一章-绪论>

    虽然是绪论..但是...真的有点难!不管怎么说,一点点前进吧... 声明一下答案不一定正确,仅供参考,为本人的作答,希望大神们能多多指教~ 1.1 表1.1中若只包含编号为1和4的两个样例,试给出相应 ...

  9. 数字图像处理学习笔记之一 DIP绪论与MATLAB基础

    写在前面的话 数字图像处理系列的学习笔记是作者结合上海大学计算机学院<数字图像处理>课程的学习所做的笔记,使用参考书籍为<冈萨雷斯数字图像处理(第二版)(MATLAB版)>,同 ...

  10. Java反射学习系列-绪论

    Java反射学习系列-绪论 https://blog.csdn.net/hanchao5272/article/details/79358924

随机推荐

  1. sqlserver2014部署安装

    百度云网址链接: https://pan.baidu.com/s/1BwgdnESI8Fqlos9EIOLv1A 提取码: wsy5 1.解压ISO镜像文件,点击setup安装程序 2.进入安装界面 ...

  2. linq行转列

    using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text; ...

  3. 使用 Express 脚手架

    安装: npm install -g express-generator 创建项目: express myapp 安装依赖 install dependencies: > npm install ...

  4. java开发相关工具安装包分享

    链接:https://pan.baidu.com/s/19rSlXhrZ9AtNdai64tErGQ 提取码:04up

  5. Educational Codeforces Round 80 (Rated for Div. 2)(A-E)

    C D E 这三道题感觉挺好       决定程序是否能通过优化在要求的时间内完成,程序运行时间为t,你可以选择花X天来优化,优化后程序的运行时间为t/(x+1)取上整,花费的时间为程序运行时间加上优 ...

  6. 使用hexo+github搭建免费个人博客详细教程(转载)

    https://www.cnblogs.com/liuxianan/p/build-blog-website-by-hexo-github.html 1.上传文档的hexo常用命令 2.输入hexo ...

  7. 积分题1之来自G.Han的一道积分题

    今天,收到G.Han的提问,第一个是计算积分 \[\int_0^{\infty}{\frac{\ln x}{(x^2+1)^n}dx}\]顿时不明觉厉,然后在宝典<Table of Integr ...

  8. PP: Articial Intelligence—TheRevolution Hasn’t HappenedYet

    From Michael I. Jordan As with many phrases that cross over from technical academic fields into gene ...

  9. LeetCode 第二题 Add Two Numbers 大整数加法 高精度加法 链表

    题意 You are given two non-empty linked lists representing two non-negative integers. The digits are s ...

  10. Ubuntu 打不开终端 侧边栏消失的解决办法

    在网上找了很多办法,大多不行,具体原因也不太清楚,应该是Unity某些配置被改了. 我是在ubuntu14.04平台利用apt-get卸载python后,关机重启出现"打不开终端和侧边栏消失 ...