首页 \ 问答 \ 简述存储过程和函数的区别?

简述存储过程和函数的区别?

更新时间:2019-10-22 07:19

最满意答案

两者都不算吧,go语言没有明显的倾向,可能由于语言的设计者都是牛人的原因,他们更倾向于让编程者去考虑该怎么去用它。也许它的特色就是灵活吧。你可以用它实现面向对象,但它本身不支持面向对象的语义。

其他回答

面向对象和面向过程都是一种将现实世界事物抽象的过程。

所谓面向对象的描述对事物按一定共性建立类别进行描述的过程。

人可以按性别分类:男人 女人,你是怎么建立这个概念,你刚生出来就知道了吗,不是,这是在日后的生活中慢慢理解的。这就是一种面向对象的抽象过程(对象:人 属性:性别)。

面对象设计最大问题是,对事物理解的不深刻无法对其建立抽象类别,就好比是,在你真正理解性别这个词语的意思前,你是无法按性别来对人进行分类的。

面向对象设计最容易出现的问题就是分类有问题:
比如:
对象:人
属性:性别
但你在程序设计中,把性别的两个值分别设置成为“ 男”  和 “儿童”,你别笑,这是目前面向对象设计中最容易出现的错误。

理解了面向对象的意思后,在来说一下面向过程,在继续前,你要明白过程和对象是一个不可分割的整体,只不过,是设计的过程中关注点不同而已。

我们通过实例来说明一下。

刷牙:挤牙膏,把牙刷放到口中,开始刷,然后喝水,吐水。 

整个刷牙过程就是面向过程,过程中的每个环节我们就可以用面向对象的思路来考虑设计方法。

对象:挤牙膏  属性:牙膏量(大,小)    
对象:开始刷  属性:刷牙位置(上方的牙,下方的牙)
对象:吐水  属性:喷水的方式(大力的吐,。。。)

相关问答

更多
  • Java面向对象概述 (如今的程序领域,大家都在说,面向对象OOP,但是真正能理解面向对象的含义的程序员却很少,究竟什么是对象,怎样面向对象) 一.面向对象: 1.何谓对象:在面向对象程序设计中,我们将问题空间中的元素以及他们在方案空间中的的表示物称作对象(object) Alan Kay总结了smalltalk中对象的5大基本特征: 所有的东西都是对象。 程序是一大堆对象的集合,他们通过消息传递,各个对象之间知道要做些什么。 每个对象都分配有自己的存储空间,可容纳其他对象。 每个对象都有一个类型。 同一类 ...
  • 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。 例如五子棋,面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8、返回步骤2,9、输出最后结果。把上面每个步骤用分别的函数来实现,问题就解决了。 而面向对象的设计则是从另外的思路来解 ...
  • 两者都不算吧,go语言没有明显的倾向,可能由于语言的设计者都是牛人的原因,他们更倾向于让编程者去考虑该怎么去用它。也许它的特色就是灵活吧。你可以用它实现面向对象,但它本身不支持面向对象的语义。
  • 我们用的语言都是两种, 1.面向过程(C语言) 2.面向对象(C++,C#,java等) 面向过程就是一个过程化,用人举例子,面向过程就是一步一步的制作出一个人。从头到身体到脚 而面向对象就是你建造一个一个的对象,比如脑袋,身体,四肢,这些对象建造好之后,你可以直接把他们拼接起来,而不用像面向过程很死板的从头到尾做出来 以上是我的个人见解,有理解不对的,不要见怪
  • 人类解决问题的方法就是分而治之。所以,不管是面向对象还是面向过程,本质上都是对问题进行分解。 区别是面向过程把问题分解为一系列的步骤,这些步骤再分解,直到你能很容易实现为止,相当于算法分解。而面向对象则把问题分解为一系列相互协作的对象,这些对象再分解。系统中的每个对象都代表与问题相关或者与实现相关的实体,那些与问题相关的对象是问题的组成部分,而与实现相关的对象是具体实现所使用的辅助实体,与问题本身无直接联系。系统中所有对象的相互协作和配合实现了整个系统的功能。系统中所有的对象和他们之间的关系构成了系统的组成 ...
  • 早期的编程语言如FORTRAN、C基本上都是面向过程的语言,其编程的主要思路专注于算法的实现。例如下面是一个面向过程的求正整数最大值的程序: int maxSoFar=0,price=1; //最大值maxSoFar的初始值为0,price是输入的值 while(price>0){ //循环输入price的值 if (price>maxSoFar) //输入的值price大于最大值maxSoFar maxSoFar=price; //则maxSoFar的值为price的值 String input=Jopt ...
  • 面向对象方法是一种基于对象模型的程序设计方法,包括面向对象分析、面向对象设计、面向对象编程,是目前应用范围最广的设计方法。其中对象模型包括六个要素:封装、抽象、模块化、层次结构、类型、并发发、持久。与传统的结构化设计方法不同的是面向对象强调一组自动化的代理(对象),而不是强调过程的顺序。当今有三种主要设计方法:1.面向对象设计 2.结构化设计 3.数据驱动设计。每种方法都是针对某类问题,没有一种方法是万能的。现在面向对象设计方法在世界各地都已广范使用,但现在我们有许多人连面向对象基本概念都搞不清楚,却能用J ...
  • 面向对象和面向过程都是一种将现实世界事物抽象的过程。 所谓面向对象的描述对事物按一定共性建立类别进行描述的过程。 人可以按性别分类:男人 女人,你是怎么建立这个概念,你刚生出来就知道了吗,不是,这是在日后的生活中慢慢理解的。这就是一种面向对象的抽象过程(对象:人 属性:性别)。 面对象设计最大问题是,对事物理解的不深刻无法对其建立抽象类别,就好比是,在你真正理解性别这个词语的意思前,你是无法按性别来对人进行分类的。 面向对象设计最容易出现的问题就是分类有问题: 比如: 对象:人 属性:性别 但你在程序设计中 ...
  • JS 面向对象[2022-08-15]

    为了能够清楚的解释这一切,我先从对象讲起。从其他面向对象语言(如Java)而来的人可能认为在JS里的对象也是由类来实例化出来的,并且是由属性和方法组成的。 实际上在JS里并不是如你所想(我开始是这么想的)那样,对象或直接称为object,实际上只是一些映射对的集合,像Map,字典等概念。JS里有大概7种类型(加上Symbol),数字、字符串、null、undefined、布尔、Symbol、对象。除对象以外的其他类型属于原始类型,就是说它们比较单纯,包含的东西比较少,基本上就是字面量所表示的那些(像C语言中 ...
  • 面向对象和面向过程其实都是一种编程理念,最终目的还是要达到项目想过 简单树下两者的区别把 面向过程比较容易理解。就是按照功能流程针对需求一点点的编写出相应的程序。 面向对象就是当你获得产品需求的时候,先分析,抽取出共性的内容做出相应的接口或者通用方法。在编写处理的时候调用定义好的这些接口或则方法。举个简单的例子,比如打火机制造阿。面向过程就是一套流程从开始制作打火机的外科到制作各个零件到最后出品全部都是一条流水线出来。而面向对象则是将各个零件分开处理,再组装再一起,这样通用性比较好。可以帮助你省区很多不必要 ...

相关文章

更多

最新问答

更多
  • h2元素推动其他h2和div。(h2 element pushing other h2 and div down. two divs, two headers, and they're wrapped within a parent div)
  • 创建一个功能(Create a function)
  • 我投了份简历,是电脑编程方面的学徒,面试时说要培训三个月,前面
  • PDO语句不显示获取的结果(PDOstatement not displaying fetched results)
  • Qt冻结循环的原因?(Qt freezing cause of the loop?)
  • TableView重复youtube-api结果(TableView Repeating youtube-api result)
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • SQL Server 2014版本支持的最大数据库数(Maximum number of databases supported by SQL Server 2014 editions)
  • 我如何获得DynamicJasper 3.1.2(或更高版本)的Maven仓库?(How do I get the maven repository for DynamicJasper 3.1.2 (or higher)?)
  • 以编程方式创建UITableView(Creating a UITableView Programmatically)
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何防止调用冗余函数的postgres视图(how to prevent postgres views calling redundant functions)
  • Sql Server在欧洲获取当前日期时间(Sql Server get current date time in Europe)
  • 设置kotlin扩展名(Setting a kotlin extension)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 如何在vim中启用python3?(How to enable python3 in vim?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • dedecms如何安装?
  • 在哪儿学计算机最好?
  • 学php哪个的书 最好,本人菜鸟
  • 触摸时不要突出显示表格视图行(Do not highlight table view row when touched)
  • 如何覆盖错误堆栈getter(How to override Error stack getter)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • USSD INTERFACE - > java web应用程序通信(USSD INTERFACE -> java web app communication)
  • 电脑高中毕业学习去哪里培训
  • 正则表达式验证SMTP响应(Regex to validate SMTP Responses)