白话编程-概述

2024-01-09 06:45:17

前言:

? ? ? ? 编程作为一种纯理性的学科,时刻都要明白自己到底在干什么.程序方面的书很多,却难以有那种把复杂问题讲清楚,让人很容易理解的.笔者想建立一种程序方面简单的思维,便于理解和记忆.

目录

一.概述

二.面向过程和面向对象

一.概述

? ? ? ? 编程到底是在干什么?

? ? ? ??1)编程大多数情况下被描述是一种逻辑表达.再细致一些,编程是一种以数据表达逻辑,满足需求的技术.多了数据,实际上程序都是围绕着数据来展开的,后面会有专门的篇章讲数据.

? ? ? ? ---编程是一种用数据实现或者数据变化实现的的输入--输出逻辑

? ? ? ? 2)编程就像在"写公式"

? ? ? ? 程序员写好程序,用户使用程序,结果是根据用户需求实现的.

? ? ? 3)编程的语言有很多,但本质都是一样的.

? ? ? ? 如果用机器语言编程,或者汇编语言编程,直接调用寄存器.

? ? ? ? 如果是面向过程的语言,比如C,用函数处理数据,再把数据写入寄存器.

? ? ? ? 如果是面向对象的语言,比如C++,Java,是写对象并且将数据映射到寄存器

? ? ? ? ---计算机工作原理的模型中,CPU负责处理数据,再将处理好的数据传入硬件寄存器,产生需要的效果.所以简单点说,编程就是改变寄存器数值(假设数据驱动硬件,当然也不需要假设,产生的数据总是要有用处的)以满足需要.

二.面向过程和面向对象

? ? ? ? 属于两种不同的编程思想,面向过程偏重于算法,面向对象偏向于设计---摘自<<C++编程思想>>

? ? ? ? 面向过程是在干什么?编写函数给别人用.

? ? ? ? 面向对象是在干什么?编写类给别人用.

? ? ? ? 二者是相同的,只是面向对象先用类生成对象,再调用方法.

????????不同之处:

? ? ? ?1.面向过程里的数据是一些基本定义的数据,比如int,double,char(包括最重要的指针)等等,又称为内置数据类型.面向对象里的数据在这基础上增加了类,接口等数据.

? ? ? ?2. 面向过程的语言不适合大型程序的编写,举个例子:当有一个需求要满足,需要调动上万个寄存器的时候,两种方法一对比,如果只用1次,那么没有区别,甚至面向过程的效率还高一点.但如果需要做一点改动,面向过程的代码是要做大量工作的,不方便重用.?---这个例子可能暂时抽象.

????????面向对象弥补了这个缺点,类的概念就是为了代码重用产生的.他牺牲了一点运行效率,但大大提高了编程的效率.

? ?

文章来源:https://blog.csdn.net/jllws1/article/details/135470285
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。