MQL5培训 - 页 19 1...1213141516171819202122 新评论 TheXpert 2012.04.06 19:36 #181 papaklass: 让我问你一个问题。程序化编程和OOP之间的根本区别是什么?寥寥数语,即是本质的区别。首先,即使是程序性方法也意味着结构,因为没有结构就很难。这至少是某种形式的数据组织。OOP允许我们在设计阶段 轻松地识别抽象实体和它们之间的关系。然后你可以简单地对它们进行编码,甚至是单独编码,而不必特别关注实现的特殊性。而且这一切看起来更有逻辑性和可读性。而且,它往往工作得更快。而最主要的是,它的实施速度更快。尽管我们可能有更多的代码。 Yedelkin 2012.04.07 00:49 #182 papaklass:我希望你能表达你对这个问题的理解,而不是给我一个书本上的表述。不就是不。我告诉你我的情况。 好吧,我没有 "给你配书":)我根本没有制定任何东西--有解释。我只是假设这个问题是一道考试题,由于吃了药,答案你已经知道了。结果是这样的 :)我没有拒绝回答关于个人经验的问题。有时只需 "感受 "一下这个现象,不问诸如 "怎么会这样 "和 "它的深层含义是什么 "等哲学问题,只需通过实例了解它是如何运作的。参考手册》中对俄罗斯方块的引用对我来说已经足够了,这个例子对最开始的时候也足够了。根据哪一个类对象被创建,一个或另一个派生类的虚拟函数被调用。void CTetrisField::NewShape() { //--- случайным образом создаём одну из 7 возможных фигур int nshape=rand()%7; switch(nshape) { case 0: m_shape=new CTetrisShape1; break; case 1: m_shape=new CTetrisShape2; break; case 2: m_shape=new CTetrisShape3; break; case 3: m_shape=new CTetrisShape4; break; case 4: m_shape=new CTetrisShape5; break; case 5: m_shape=new CTetrisShape6; break; case 6: m_shape=new CTetrisShape7; break; } //--- отрисовываем m_shape.Draw(); //--- }直观地创建对象,其行为因初始数据的不同而不同,足以见得。接下来--我从论坛上申请了整个俄罗斯方块的文件,加上手记材料、库等。然后它就开始运行了。论坛上有很多关于这个主题的问题。纸杯。在阅读了网站上的一堆信息后,我仍然不明白什么是OOP。 我们只是有一个完全不同的方法。我还没有特别想知道从科学的角度来看 "什么是OOP"。- 以免在新的和不可理解的术语的外表下失去本质。 我直截了当地去研究现有的例子。 纸杯。在阅读了网站上的大量信息后,我仍然不明白什么是OOP。 TheMQL5 Reference/Fundamentals / Object-Oriented Programming.就读这一页。显然,这对我来说已经足够了--无需在第三方材料中寻找其他定义。 --- 2012.04.07 07:03 #183 papaklass:我的问题的答案。生产性编程侧重于行动(动词),而面向对象的编程侧重于对象,或实体(名词)。这是最主要的区别。在理论和实践中都是如此。程序性编程回答的是做什么(动词) 的问题。 面向对象的编程动词 和描述(形容词) 的对象(名词)。也就是说,OOP是将代码的上层结构概括为具有许多语篇的有意义的句子。只用动词说话的人被允许生活在程序中。谁想叙述他的代码,就让他用OOP写吧。PS。我们对所有这些程序员理论家是多么的厌倦,该死的。 很快,我将无情地扼杀 "OOP与程序 "这个话题。 Yedelkin 2012.04.07 07:15 #184 sergeev:PS。我已经厌倦了所有这些程序员理论家,该死的。 很快我就会毫不留情地扼杀 "OOP与程序 "的话题。 为什么你必须一次 "杀死 "他们?大多数MQL5的初学者都熟悉 "程序性编程"。而如果他们对OOP的必要性和意义有疑问--就需要耐心地解释/理解。就像学校里的老师--年复一年地做同样的事情。耐心解释,--不要因为老师厌倦了重复这个话题就叫他们滚开。 Andrey F. Zelinsky 2012.04.07 07:19 #185 sergeev:PS。我们对所有这些编程理论家是多么的厌烦,该死的。 很快,"OOP与程序 "的主题将被无情地杀死。"与其随意安排标点符号,不如写一份词汇表,就不会有人 "无情地杀 "了。但是,如果你读到OOP的 "从业者"--它就像一个OOP的高级专家的 "种姓"。MQL5是一种适用于所有理解和能力水平的语言,而不仅仅是适用于逃亡者--指标和专家顾问的标准例子证明了这一点。一种编程语言不是目标,而是手段。如果PP足以达到目的--就让它这样吧。如果对某人来说,使用OOP更容易、更清晰--就让它这样吧。而为了实现这一目标--没有根本的区别--特别是在90%的低代码微功能指标和专家顾问中,主要是写的。 Dmitriy Skub 2012.04.07 07:25 #186 papaklass:当你在一门课程的开头遇到这样一句话时,就会立即明白整本书的内容。不知何故,一切都水到渠成。你明白属性是对象的属性,实现和方法是同一回事(函数),最后,类是由对象组成的。对象不仅有属性(属性)和方法(功能),而且还可以相互作用。同时,它们(对象)也不需要知道其他对象的属性和方法。这就是类是如何从这些构件中创建的,这些构件也是相互作用的。 你把所有的东西都堆在一起,甚至不能用它来做粥)))。不可能是写在书上的。 Yedelkin 2012.04.07 07:35 #187 abolk:一种编程语言不是目的,而是一种手段。如果PP足以实现目标,那就这样吧。如果OOP对某人来说更清晰、更简单,那就这样吧。 睿智。根据我自己的经验判断:单一货币指标是写在PP上的。而多货币专家顾问是用OOP 编写的(因为如果没有OOP--在我的情况下,它根本就不会出现)。 [删除] 2012.04.07 08:13 #188 Как уже надоели все эти программистские теоретики, блин. 很快,"OOP与程序 "的主题将被无情地扼杀。这是因为人们不了解两者的优点、缺点、使用地点和方式。一篇有这样简单例子的文章:PP会给这个任务_1带来这样那样的好处,OOP会给这个任务_1带来这样那样的坏处;PP会给这个任务_2带来这样那样的好处,OOP会给这个任务_2带来这样那样的坏处。我认为,如果类和接口出现在五个中,那么多注意类和接口的比较是很关键的,因为对于那些刚接触OOP的人来说,细微的差别会很复杂。而且都是偏向于解决简单的问题,这就是困难所在--解释和例子需要尽可能的简单和简短,但要使用PP和OOP的原则。那么就有可能使一个线程崩溃,把它送到一个地方,那里所有的东西都被安排在架子上,有简单的应用实例,根据一些主题系统化。耶德尔金。 睿智。根据我自己的经验判断:单币种指标是写在PP上的。而多货币专家顾问是用OOP编写的(如果没有OOP,它根本不会出现)。 亲爱的耶德尔金!如果你有兴趣,我可以把程序化设计的多币种内核发给你(它的工作原理是开放的)。这段代码是为4编写的,但在5上也能工作--你可以在上面比较两种变体的性能。 Yedelkin 2012.04.07 08:25 #189 -Alexey-: 亲爱的耶德尔金!如果你有兴趣,我可以给你发送一个程序化设计的多币种内核(在开放条上工作)。该代码是为4编写的。 我赞成大家尽可能地生活在和平与和谐之中。至于我的帖子,我只是在描述我对OOP的理解。它(理解)可能是三次错误的--但它是 "我的 "理解。我完全不排除我在OOP的帮助下能够解决的一部分问题也能在PP的框架内得到解决。abolk 声明的智慧恰恰在于:"如果PP足以实现目标--那就这样吧。如果有人使用OOP会更清楚、更简单--那就这样吧"。我在我的帖子中补充了一个内容。 [删除] 2012.04.07 08:34 #190 Yedelkin: 我赞成大家在可能的情况下相互理解,共同生活。至于我的留言,我专门描述了我对OOP的理解。它(理解)可能是三次错误的--但它是 "我的 "理解。我完全不排除我在OOP的帮助下能够解决的一部分问题也能在PP的框架内得到解决。abolk 声明的智慧恰恰在于:"如果PP足以实现目标--那就这样吧。如果对某人来说,使用OOP更容易、更清楚--那就这样吧"。 我同意。而为了争取这种或那种偏好的情绪,最好在论坛用户之间组织竞赛--竞争。有这样一项任务......:在性能、内存消耗、代码大小、可移植性等方面,究竟哪种方法会胜出? 1...1213141516171819202122 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
让我问你一个问题。程序化编程和OOP之间的根本区别是什么?寥寥数语,即是本质的区别。
首先,即使是程序性方法也意味着结构,因为没有结构就很难。这至少是某种形式的数据组织。
OOP允许我们在设计阶段 轻松地识别抽象实体和它们之间的关系。然后你可以简单地对它们进行编码,甚至是单独编码,而不必特别关注实现的特殊性。
而且这一切看起来更有逻辑性和可读性。而且,它往往工作得更快。而最主要的是,它的实施速度更快。尽管我们可能有更多的代码。
我希望你能表达你对这个问题的理解,而不是给我一个书本上的表述。不就是不。我告诉你我的情况。
好吧,我没有 "给你配书":)我根本没有制定任何东西--有解释。我只是假设这个问题是一道考试题,由于吃了药,答案你已经知道了。结果是这样的 :)我没有拒绝回答关于个人经验的问题。
有时只需 "感受 "一下这个现象,不问诸如 "怎么会这样 "和 "它的深层含义是什么 "等哲学问题,只需通过实例了解它是如何运作的。参考手册》中对俄罗斯方块的引用对我来说已经足够了,这个例子对最开始的时候也足够了。
根据哪一个类对象被创建,一个或另一个派生类的虚拟函数被调用。
直观地创建对象,其行为因初始数据的不同而不同,足以见得。接下来--我从论坛上申请了整个俄罗斯方块的文件,加上手记材料、库等。然后它就开始运行了。论坛上有很多关于这个主题的问题。
在阅读了网站上的一堆信息后,我仍然不明白什么是OOP。
我们只是有一个完全不同的方法。我还没有特别想知道从科学的角度来看 "什么是OOP"。- 以免在新的和不可理解的术语的外表下失去本质。
我直截了当地去研究现有的例子。
在阅读了网站上的大量信息后,我仍然不明白什么是OOP。
TheMQL5 Reference/Fundamentals / Object-Oriented Programming.就读这一页。显然,这对我来说已经足够了--无需在第三方材料中寻找其他定义。
我的问题的答案。
生产性编程侧重于行动(动词),而面向对象的编程侧重于对象,或实体(名词)。这是最主要的区别。
在理论和实践中都是如此。
程序性编程回答的是做什么(动词) 的问题。
面向对象的编程动词 和描述(形容词) 的对象(名词)。
也就是说,OOP是将代码的上层结构概括为具有许多语篇的有意义的句子。
只用动词说话的人被允许生活在程序中。
谁想叙述他的代码,就让他用OOP写吧。
PS。
我们对所有这些程序员理论家是多么的厌倦,该死的。
很快,我将无情地扼杀 "OOP与程序 "这个话题。PS。
我已经厌倦了所有这些程序员理论家,该死的。
很快我就会毫不留情地扼杀 "OOP与程序 "的话题。PS。
我们对所有这些编程理论家是多么的厌烦,该死的。
很快,"OOP与程序 "的主题将被无情地杀死。"与其随意安排标点符号,不如写一份词汇表,就不会有人 "无情地杀 "了。
但是,如果你读到OOP的 "从业者"--它就像一个OOP的高级专家的 "种姓"。
MQL5是一种适用于所有理解和能力水平的语言,而不仅仅是适用于逃亡者--指标和专家顾问的标准例子证明了这一点。
一种编程语言不是目标,而是手段。如果PP足以达到目的--就让它这样吧。如果对某人来说,使用OOP更容易、更清晰--就让它这样吧。而为了实现这一目标--没有根本的区别--特别是在90%的低代码微功能指标和专家顾问中,主要是写的。
papaklass:
当你在一门课程的开头遇到这样一句话时,就会立即明白整本书的内容。不知何故,一切都水到渠成。你明白属性是对象的属性,实现和方法是同一回事(函数),最后,类是由对象组成的。对象不仅有属性(属性)和方法(功能),而且还可以相互作用。同时,它们(对象)也不需要知道其他对象的属性和方法。这就是类是如何从这些构件中创建的,这些构件也是相互作用的。
一种编程语言不是目的,而是一种手段。如果PP足以实现目标,那就这样吧。如果OOP对某人来说更清晰、更简单,那就这样吧。
Как уже надоели все эти программистские теоретики, блин.
很快,"OOP与程序 "的主题将被无情地扼杀。这是因为人们不了解两者的优点、缺点、使用地点和方式。一篇有这样简单例子的文章:PP会给这个任务_1带来这样那样的好处,OOP会给这个任务_1带来这样那样的坏处;PP会给这个任务_2带来这样那样的好处,OOP会给这个任务_2带来这样那样的坏处。我认为,如果类和接口出现在五个中,那么多注意类和接口的比较是很关键的,因为对于那些刚接触OOP的人来说,细微的差别会很复杂。而且都是偏向于解决简单的问题,这就是困难所在--解释和例子需要尽可能的简单和简短,但要使用PP和OOP的原则。
那么就有可能使一个线程崩溃,把它送到一个地方,那里所有的东西都被安排在架子上,有简单的应用实例,根据一些主题系统化。
睿智。根据我自己的经验判断:单币种指标是写在PP上的。而多货币专家顾问是用OOP编写的(如果没有OOP,它根本不会出现)。
我赞成大家在可能的情况下相互理解,共同生活。至于我的留言,我专门描述了我对OOP的理解。它(理解)可能是三次错误的--但它是 "我的 "理解。我完全不排除我在OOP的帮助下能够解决的一部分问题也能在PP的框架内得到解决。abolk 声明的智慧恰恰在于:"如果PP足以实现目标--那就这样吧。如果对某人来说,使用OOP更容易、更清楚--那就这样吧"。