返回首页

在搜寻的相似
我们的文明已经经历了几个发展阶段,通过不同的革命性的概念。但是,一切革命的概念背后的想法有一些共同的东西。它是在一个更好的形状社会。在所有最新的信息技术革命。这基本上是一个有效的信息管理和更快的资源调动的努力。这又是另一个技术革命的基础上,这是什么但"计算机硬件/软件方面都。我们可以比较一下,这样的事情,马与赛马的硬件/软件的情况。由于骑师骑着马,软件游戏机的硬件。赛马(软件)是更好的,我们能看到的特技表演。但是,这骑师和马之间的接口?接口是指令集。这组预定义的指令是通过这种互动是开展或换句话说,形式语言的媒介。这就是说,语言只是一个沟通的模式,连接到每个指令特定的含义。为什么我们的沟通?它基本上是想表达我们的感觉等等,如果有不会有任何沟通,那么我们可能不会需要任何语言的需要做了一些作品。婴儿出生时,拿起指示,从他/她的母语,并连接到这些指示,并慢慢地登记在其内存的意义。在这个过程中,宝宝开始与他人沟通。不能与其他两个人从两个不同的社区,因为一个无法破译的声音或其他脚本的含义。因此,语言是沟通的基础上,那么我们如何能够进行有效的沟通。只有当我们能表达自己的东西,是亲近自然,或者更确切地说,比较是我们想要表达的一些自然现象。例如,如果我们说,水是冰冷如,冰在自然界中一个独特的对象,其独特的性能,我们马上就可以有一个冷漠的感觉。即使是这样的句子:
"虽然一天的滞后时间的推移,通过招标的天空无风云一样。"
这只是与自然的比喻,在句子足够的冲床和的美丽所在。一个语言获取丰富的,当它移动的性质,因为我们不能表达自己与一些外来的想法,我们没有觉得。部分2
集成芯片的发明,导致微处理器的发展和随后的计算机的发明。计算机与机器太需要一种语言的数字机和互动。多年来,良好的语言已被开发,其中很多都有自己的目标。 C是这些被认为是一个很好的通用语言,因此被认为是一个标准的。在本节中,我们试图与自然相关的编程语言的发展,据我们所知,有大约一百几个元素存在撇开人造元素的性质C.光。这些原子元素结合本身产生分子的元素。但后来单独的原子或分子的元素不负责形成的性质。有众多复合元素,这些元素在自然界中有。
让我们举一个例子。两个氢原子形成氢分子。然后,两个氢原子和一个氧原子化学结合在一起,形成一个水分子。现在,考虑水的情况下,我们将有兴趣时,信息或数据的构成要素的数量和不同类型的化学反应的一部分,并随后发展的复合元素的属性。在这里,两个氢原子和一个氧原子数据类型的数据,氢气和氧气。一旦形成了水,水本身成为一个独特的数据类型,其独特的性能。因此,这个组合是与水可以创建一个逻辑框架,但没有成为现实。只有当我们真正创造他们成为现实。这个逻辑框架下创建的对象成为独特的,它在技术上是相同的无处不在,无论是恒河水域,或泰晤士,或亚马逊。一旦它成为一个新的数据类型,那么我们可以说500加仑的水,而不是与实际的数据多少个氢原子和氧原子在500加仑的水有自己的烦心事。这就是所谓的抽象(面向对象的基本概念之一)。
同样的概念已应用的编程语言。在C - INT,CHAR,浮动代表的基本数据类型,我们可以认为它们是原子分子或原子数据类型。但是,这些原子的数据类型有其自身的局限性。例如,如果我们要存储百年的相同数据类型的的值,然后我们要创建百变量。这自然是麻烦。为了克服这个问题,分子元素的概念进行了介绍。副产品是数组的概念。即,把同一类型的元素结合在一起。由于已经提到了,原子和分子的元素本身不负责形成的性质。因此,现实的做法靠拢的性质。输出的结构概念。它是在同一个地方,就像复合元素的基本要素的结构。这是C语言的两端
,它是可以放在一起在同一个地方,通过结构的不同元素的数据类型,但是这是在与自然的完美协议。结构的原因是绝对显示的复合元素组成,但与自然对象不同的是,它不能揭示结构的属性。让我们看看水的例子再次。只要水是形成像沸点的某些特征或属性,形状等等获取相关的,它的水变成了唯一的对象。换句话说,在这个宇宙中的每一个单一的对象是独特的,只是因为它的属性。让我们看看另一个例子。水是由两个氢原子和一个氧原子,而过氧化氢的两个氢原子和两个氧原子组成的。在这两种情况下的基本数据类型是相同的,只有在不同的元素或数据的数量,这是负责在自然对象完全不同的特点。这是从天然化合物元素的结构不同。我们可以有两种不同的结构具有相同的成分,但只在自己的名称或标识不同。结构从来没有发现任何此类性质。我们不能传授传授自然物作为构成要素的数量属性。这差额是履行通过类,即这是最好的编程范式的演变介绍的概念 - 面向对象编程的概念。 (从技术上讲,面向对象范式的演变是从不同的角度,我们将在下一节讨论)。正是这一类的属性或行为的概念一起投入使用的函数或方法的结构。因此,一类是传授其属性通过函数结构的想法的延伸。它是这里所说的结构或类中,我们定义新的数据类型(正如我们已经提到,水成为一个新的数据类型)。当一个类被创建时,它只是一个逻辑框架,但不是一个物理的现实。这是只有当对象被创建为一个特定的类内存分配,然后才成为物理现实。部分-3
的面向对象编程原理的概念进入了存在,因为在较早的编程概念,在数据安全限制。早期的编程语言,如基本被称为面向过程的语言,这意味着要完成的工作是在一步一步顺序。这些语言的小程序确定。但作为节目的长度越来越长,控制语句,如"转到"被证明是致命的,方案的复杂性,不能有效和高效地处理。这是只有这样的结构化编程的概念的概念应运而生。的概念划分成更小的的模块的程序,然后连接模块。 C是一种结构化语言。在C模块分为功能。这些函数传递参数连接。要限制的参数传递,这是由不同的模块利用被宣布为全局变量。这一概念又被确定为较小的方案。但随着的大小和复杂性增加,当一个函数设置一些值的全局变量,函数改变了它。在这个过程中,其结果是不正确的的。最终将在这两种情况下,是我们打下强调,只有在执行的步骤,但我们很难对所有这些已完成的数据困扰。这奠定了新的思维观念,这将使绝对的数据安全和OOPS演变的基础。部分-4
面向对象编程原理,首先和最重要的原则是数据封装。这是实现对数据安全的目标的第一步。在自然对象,数据的安全性是通过在原子和分子水平的各种力量。例如,两个氢原子和一个氧原子,形成水。但是,如果我们打破这种结构,不留水更多。在实施OOPS语言实现了数据的安全性是通过各种接入规范,如私人,保护放大器;公共 - 在自然物体的原子和分子的力量实现。面向对象编程范式的第二个重要方面就是继承。这是什么,但继承另一个类,这就是所谓的子类的超类或父类的属性,就像孩子从父母那里继承的属性。这种性质的财产,发现在编程领域具有十分重要的意义,因为我们没有相同的属性,一次又一次在不同类别的申报。我们刚刚宣布的显著属性一类和继承这些类其他类,需要落实或反映在这样的属性,除了其自身的属性。自然,这种方法节省了大量的复杂性,并在与自然现象的演唱会是。
面向对象的编程范式的第三个重要方面是多态的,这意味着一个面和多个接口的概念。这个概念又是非常有性质。一个人可以是某人的父亲,兄​​弟的人,别人的朋友。但是,当互动的问题时,同一人的行为取决于关系。事实上,在关系中的具体定义,描述了人的个性。这种多态性的概念是通过具有相同名称的功能,但其执行上下文而定。函数重载是实施多态性的一种方式。再就是运行时多态等等的情况下
除了这些基本属性的封装,继承,多态的概念应运而生,如抽象类,内部/外部类的存在。抽象类中定义这样一种方式,也有只在类中的函数声明。在类的功能没有定义,因此命名为抽象类的类。这些类被继承和定义,他们实施的职能。虽然这些概念似乎听起来很抽象的,而是在密切关注的性质发现,这些概念的性质。让我们看看水的例子再次。水的形状是抽象的。它需要保持容器的形状。即,形状得到实施它的定义。
当一个类是另一个类的内部定义,内部类称为内部类和内部类称为外部类的类,它包含。在这种情况下,一个外部类对象不能直接访问内部类的资源。它传递通过内部类的对象,这是内外部类中定义的要求。内部类可以访问外部类的,但不是反之亦然的资源。自然界中的例子说明了这种情况,最好是一个婴儿在子宫内。如果你想喂宝宝,你来养活母亲。您不能直接喂孩子。这就是所谓的遏制的概念 - 一个非常重要的概念的编程语言有很大的影响。
的基本概念OOPS即数据封装,继承和多态性与其他属性一起,不仅提高了数据的安全性,但也演变成一个丰富的编程风格。事实上,其对自然的漂移,并已使事情变得更加现实和逻辑。所以,让我们与"大自然"和谐。

回答

评论会员:会员3680785 时间:2011/11/29
误导性的比喻是危险的。信息没有真正的技术帮助,自我促进术语
评论会员:会员3680785 时间:2011/11/29
申请席卷隐喻这个话题,我建议您尝试谨慎。根据我的经验,我们都患的事实,OOP是这样一个有吸引力的比喻。我想大多数程序员有经验看到规范的形状/圆形/方形/三角形演示(其不可避免的。"区(带)"的方法)和思考,"哇,OOP是真的在建模现实的惊人。"问题是,它没有惊人的简单,介绍演示似乎承诺。

例如,现实的情况是不近所以适合的OOP希望它是分层组织。例如,如果一个人是作为一个对象的实例代表,它的基类是什么?人类?程序员?雇员?所有这些都是正确的答案,并通过的窘境,这是更好地为给定的应用排序是困难的,主观,费时,并导致无意义的冠冕堂皇的讨论,只有进一步隔离来自世界各地的程序员。

最灵活的方式来模拟现实的关系模型。 OOP和RDBMS时发生碰撞,面向对象的类型,开始抱怨"阻抗不匹配",如果面向对象的故障模式的现实以及RDBMS的一些扬声器插头的一种偶然的差异。事实上,"阻抗不匹配"的提示,在一个更​​大的问题:OOP是一回的餐巾纸比喻比作为一个真正的开发技术。

OOP有其他危险倾向:"类作者",以及在接近任何一个有用的应用程序,例如,提前申报的胜利。这一责任被放入一个更普通的程序员圈,而图书馆的作家得到基本隐藏从客户。 OOP的语言给他一个盾牌 - 他完成了"黑盒子"类 - 其背后隐藏。

我也认为OOP的一个讨厌的倾向,鼓励国家,从而减少usabiliy(例如threadability)。很多时候,我有一个类的实例方法,并把它改写成一个独立的辅助功能。我从来没有了解,这是为什么没有完成原来。独立的助手是面向对象的方法有用得多。它可以随时调用,以自足的方式,无需担心广泛的实例的状态,面向对象的思想实际乞求程序员发明。

我的建议是全能的思维方式,它的基本功能编程。功能编程,缺乏OOP的隐喻上诉,但在实际的用处在它前面光年。作为东西走向无状态的,线程安全的编程,我真的希望的OOP将继续手下败将。商业世界之外的,我认为真正的OOP是没有很好地尊重任何
评论会员:。Nirosh 时间:2011/11/29
嗨,

我也想过一次在同一行,并写了一篇文章关于如何设计一个软件系统,帮助系统,在物理世界的存在是为年龄的..我很高兴读/看到其他许多人认为以同样的方式...

它不仅是我和你有许多其他共享相同的思维模式..请参阅下面的
链接


Nirosh。
科伦坡,
斯里兰卡
评论会员:davspa 时间:2011/11/29
您不必使用性质或自然面前字"的"。 (我英语为母语。)将使其更易于阅读。这并不影响文章的内容,只是使得它更难阅读。

大卫西班牙,C应用程序员
评论会员:Onkar辛格 时间:2011/11/29
这家伙用字范式,因此完全地充分SH * T不信任他。他从伊拉克/伊朗移居美国,有一个从美国大学学位,并免费泥瓦匠资助一些愚蠢的没有名字的公司现在是一个suckass。
评论会员:阿米特乔杜里 时间:2011/11/29
风衣,
至少那家伙写的文章,他在他的脑海中。是的,你还提到了你的心是满的呢? (转到字13号)

小心下一次。有一定的勇气去接受其他人的努力。我相信美国不会站在你说什么。

{S0}
Onkar辛格
评论会员:乌韦凯姆 时间:2011/11/29
逸岸每个人都已经转移到美国和美国语言作出了贡献。至少写这篇文章的人谁是"壕沟",并试图对他人表现出一定的光,P
评论会员:阿米特乔杜里 时间:2011/11/29
相当一个独白... ...扩大更顺畅lannding最后一段。是什么促使您写这样的论文,并有多长你在想,在你开始之前呢?

有趣的,独特的。

我不得不喝第二杯咖啡的一些理解。


Codin"卡洛斯
评论会员:麦克斯韦陈 时间:2011/11/29
感谢您的意见。其实,整个想法来找我,为更好地解释数据和数据类型,用户定义的数据类型,以及其后类及其
对象。

阿米特