OOP与程序化编程 - 页 25

 

1.在文章的基础上做了一些包含课程。只是不明白为什么要使用类,而不是只做一个带有可调用函数 的include文件?

2.我有个问题,为了提高优化速度,是把include文件分成几个,还是把所有东西都放在一个里面?

3.我感觉如果我在include文件中调用该指标,而不是在专家顾问中调用,优化速度会更快......?

 
forexman77:

1.在文章的基础上做了一些包含课程。只是不明白为什么要使用类,而不是只做一个带有可调用函数 的include文件?

2.我有个问题,为了提高优化速度,是把include文件分成几个,还是把所有东西都放在一个里面?

3.我感觉如果我在include文件中调用该指标,而不是在EA中调用,优化速度会更快...?

1.当多态性,即需要调用具有类似目的的不同函数时,将需要这些类。最简单的例子是当一个区块收到一个订单的指针,我们需要得到它的票据。考虑到真实和历史订单,以及MT4和MT5 - 我们得到了四个不同的功能来工作。

在程序性方法的情况下,我们需要有一个特定的开关,它将根据订单类型调用必要的函数。在OOP的情况下--我们只是调用函数来获取票据。必要的函数将被自动调用。然而,在OOP的情况下--我们需要前期工作来定义类和函数的层次结构。

2.根据准备好的可执行模块进行优化。因此,无论源代码是被分成几个文件,还是被塞进一个大文件,都没有关系。划分文件完全是程序员的选择,因为这对他来说很方便。

3.绝对没有区别。就个人而言,我从不调用任何指标,更喜欢在专家顾问中直接计算其数值。

 
George Merts:

1.当需要多态性--即调用具有类似目的的不同函数--时,将需要类。最简单的例子 - 一个区块收到一个订单的指针,我们需要得到它的票据。考虑到真实和历史订单,以及MT4和MT5 - 我们得到了四个不同的功能来工作。

在程序性方法的情况下,我们需要有一个特定的开关,它将根据订单类型调用必要的函数。在OOP的情况下--我们只是调用函数来获取票据。必要的函数将被自动调用。然而,在OOP的情况下--我们需要前期工作来定义类和函数的层次结构。

2.根据准备好的可执行模块进行优化。因此,源代码是被分成几个文件还是被塞进一个大文件并不重要。将其分解成文件,完全是程序员自己的选择。

3.完全没有任何区别。我个人从不调用任何指标,更喜欢在专家顾问中直接计算它们的数值。


我明白了。谢谢你。当然,这一切都很方便,因为我们可以在文件和类中包裹大量的代码,而在专家顾问中只留下几行。

分开来看,检查代码片段的错误、添加新的东西等,都比较容易。代码变得更容易理解,特别是对于μl5。

 
Реter Konow:
只是不清楚为什么这么多当地的园丁都成了深信不疑的挖掘者,并在自己的地盘上的树下做了一个坑)。

他们一定是决定在他们的地盘上也建一座房子。这有什么不对吗?

是的,当然,甚至人类现在使用的许多大运河都是用铲子挖的。但在那时,根本没有挖掘机。那么,既然现在有了挖掘机,为什么还要用铲子挖坑呢?

 
Nikolai Semko:

他们一定是决定在他们的地盘上也建一座房子。这有什么不对吗?

是的,当然,甚至人类现在使用的许多大运河都是用铲子挖出来的。但在那时,根本没有挖掘机。那么,既然现在有了挖掘机,为什么还要用铲子挖坑呢?


问题是,你所说的 "铲子 "完全不是我所说的 "程序化 "编程。你可能会说,我根本就没在谈论它。我是说,这里有些人使用的解决问题的方法本身就很弱,所以,如果挖掘机或铁锹都不能有效地使用,那又有什么区别呢?


这是一个专业性的问题,它的缺失不能用一个工具来代替...


而如果你有专业精神,你可以用程序化的方法来建造山。相信我。

 
Реter Konow:

问题是,你所说的 "铲屎官 "根本不是我所说的 "程序化 "编程。你可能会说,我根本就没在谈论它。我是说,这里有些人使用的解决问题的方法本身就很弱,所以,如果挖掘机或铁锹都不能有效地使用,那又有什么区别呢?


这是一个专业性的问题,它的缺失不能用一个工具来代替...


而如果你有专业精神,你可以用程序化的方法来建造山。相信我。


我不反对,但我宁愿把精力花在成为一个专业的挖掘机操作员上,而不是一个专业的挖掘机。

我不知道你说的 "程序性 "编程是什么意思,但我知道OOP是程序性编程的进化发展。

 
forexman77:

1.在文章的基础上做了一些包含课程只是不明白为什么要使用类,而不是只做一个带有可调用函数 的include文件?

2.我有个问题,为了提高优化速度,是把include文件分成几个,还是把所有东西都放在一个里面?

3.我感觉如果我不在专家顾问中调用该指标,而是在一个include文件中调用,优化速度会更快...?

谜底很清楚--这是一篇文章:-)有为了代码而代码,有文章本身的体积......"吃饭前不要看报纸" :-)


 
Реter Konow:

问题是,你所说的 "铲屎官 "根本不是我所说的 "程序化 "编程。你可能会说,我根本就没在谈论它。我是说,这里有些人使用的解决问题的方法本身就很弱,所以,如果挖掘机或铁锹都不能有效地使用,那又有什么区别呢?


这是一个专业性的问题,它的缺失不能用一个工具来代替...


而如果你有专业精神,你可以用程序化的方法来建造山。相信我。


总的来说,彼得,我有一种感觉,你看看你的坑,用铲子挖的,再看看邻居的坑,用挖掘机挖的。你比较一下,发现你的战壕更大,边缘更平整。而你的结论是,最好是用铲子挖。你能想象,如果你学会了用挖掘机挖掘...而且你可以用铲子把边缘弄平。

 
Nikolai Semko:

而且,总的来说,彼得,我有一种感觉,你看你的坑,是用铲子挖的,而你看你邻居的坑,是用挖掘机挖的。你比较一下,发现你的战壕更大,边缘更平整。而你的结论是,最好是用铲子挖。你能想象,如果你学会了用挖掘机挖掘......而且你可以用铲子把边缘弄平。

尼古拉,如果你比较工具,我根本不是用铲子挖的。这是一个不同的工具,一个更酷的工具。我还没想好怎么称呼它,但很可能你跟不上挖掘机的速度。未来将告诉我们...


一般来说,我尊重挖掘机这个工具,但我没有时间去研究它。另一个想法占据了上风)。

 
Реter Konow:

尼古拉,如果你比较工具,我根本不是用铲子挖的。这是一个不同的工具,一个更酷的工具。我还没想好怎么称呼它,但很可能我也跟不上挖掘机的速度。未来将告诉我们...

一般来说,我尊重挖掘机这个工具,但我没有时间去研究它。另一个想法占据了上风)。

那么,主题的声音应该是不同的。诸如:"一个新的编程工具包 "或 "一个新的编程范式"......。
如果你真的创造了比OOP更酷的东西,那么当你成名时,你会给你的签名吗?