关于MQL4文件的讨论 - 页 8

 
Gorillych:
一切都是可以理解的,文件在那里,例子在那里,Rosh已经写好了一切。
我唯一不满意的是文档中的例子。这些例子有很多已经在网站上写过了,而文档仍然是一样的--哑巴 :(

我建议(我想这是第三次)在网站的在线文档中增加添加自己评论的可能性。这在其他IT技术中得到了成功的应用。
下面是这样一个功能描述的例子:基本的,加上准备好的代码片段,下面是第三方开发者--采取和复制。

 
Yurixx,文档到底有什么问题?请给我们一个明确的错误指示,我们将修复它。

例如,有一个未指定标识符的错误,我们已经纠正了:

Jhonny写道(a):
关于文档,我注意到一些奇怪的事情,当我在文档中的OBJPROP_FIBOLEVELS属性上按下F1 时,就会出问题,或者说几乎什么都不会发生。


但是,如果你想拥有所有案件的最详细的文件,不幸的是,我们不能这样做。将MSDN的模拟信号插入终端将是困难的。无论我们写什么,仍然会有问题。而且,即使有文章、代码库、论坛和搜索引擎来处理这些东西也不一定有帮助。


这个话题让我清楚地形成了一个久违的想法。理论上"给我一本好的文件/书,我就能改变世界"的做法是不够的。这需要强制性的和独立的踩踏耙子的练习。

来自我们实践的案例研究:

我们长期以来一直在改进软件开发的方法,我们也正在准备进行ISO9000认证。在过去的几年里,我们购买了几十本关于这个问题的书籍,重新阅读了很多,所有的人都同意实施的必要性。但是理论是不够的。你必须掌握并做到这一点。我们正在一步一步地做。

这很难--读完书后,你的脑子里一片混乱。现在正是出去大喊 "文件没有用 "的时候。立即想到 "让我们给顾问打电话",让他们在这里为我们做一切。但理智告诉我们,我们必须自己去了解和改变事情,而不是仅仅阅读顾问们的水货报告。

这在商业上也是一样的。如果你只看书,这一切似乎很简单--"相信自己,摇身一变,开了一家企业,一切都在进行。生活是不同的。

我们对文件的立场。

  • 通过一个专门的网站MQL4.community,在全球范围内对交易者进行互动培训。
  • 为交易者提供相互帮助和分享知识的可能性
  • 使交易者能够直接与开发商沟通。
  • 激励交易者撰写文章,将其翻译成其他语言
  • 在一个地方收集信息,以便任何人都可以访问它

这就是说,我们的教育任务要比最简单的内置文件广泛得多。例如,昨天我从上海飞来,在那里我们开设了办公室,在中国推广MetaTrader。在未来几个月,我们网站的中文部分将有重大变化。

更广泛地看一下我们是如何做的。

 
chv:

我提议(我想这是第三次了),网站上的在线文档应该允许你添加自己的评论。这在其他IT技术中已被成功使用。
下面是这样一个功能描述的例子:基本的,加上下面来自第三方开发者的现成的代码片断--拿去复制吧。

是的,这是个好主意,我们很可能会实施它。

我们继续在MQL4网站上工作,有很多想法。明天我们将发布网站新编辑器的测试版本。然后会有一个新版本的高级"相关主题"功能。
 
我还想说一件事,这个话题经常把新手送到 Rosha 的文章,但我也经常访问它,但我已经有一段时间没有这样做了,因为Alpari的网站发生了一些变化,所有来自这里的链接'Rosh的文章:MetaTrader 4专家' 都导致404错误。所以我必须纠正这些链接。

当然,我后来看到了评论,但我想要的文章几乎在最前面,所以我没有立即注意到它。
 
Jhonny:
我还想说一件事,这个话题经常把新手送到 Rosha 的文章,但我也经常访问它,但我已经有一段时间没有这样做了,因为Alpari的网站发生了一些变化,所有来自这里的链接'Rosh的文章:MetaTrader 4专家' 都导致404错误。所以我必须纠正这些链接。
我们正在等待Alpari纠正这些链接--他们承诺了。
 
Renat:
Yurixx,文档到底有什么问题?请给我们一个明确的错误指示,我们将修复它。

如果你想在所有场合都有最详细的文件,不幸的是,这样做是不行的。在终端中插入MSDN的类似物将会很困难。无论我们写什么,仍然会有问题。而且,即使有文章、代码库、论坛和搜索引擎来处理这些东西也不一定有帮助。

这个话题让我清楚地形成了一个久违的想法。仅有"给我一份好的文件/书,我就能改变世界"的理论方法是不够的。这需要进行强制性和独立的踩耙练习。

我们对文件的立场。

  • 通过专门的网站MQL4.community对全球的交易者进行互动教育
  • ,为交易者提供相互帮助和分享知识的机会
  • ,让交易者有机会与开发人员直接沟通
  • ,鼓励交易者撰写文章,并将其翻译成其他语言
  • 将信息积累在一个地方,任何人都可以访问它
我不希望在所有场合都有最详细的文件,等等。这只是一个正常的文件问题。 在这个主题中表达的几个愿望,我在第3页的帖子中结合了。文件部分如下。

必须有一章描述(如alex_ant 所写)MQL-程序的运行机制。这是每一个刚接触编程的交易者甚至在学习语言之前就能理解的。而这种描述必须与交易过程联系起来,也可以解释指标、脚本和专家顾问之间的区别,它们与tick队列、交易服务器、彼此之间的关系如何,等等。

应该更多地关注MQL-程序的结构,其主要组成部分 - init()、start()和deinit()函数。这些函数是MQL与其他语言的主要区别,而文档中给它们的篇幅很少,几乎只有几行。

如果能把字典中的所有条目都看一遍,不仅能消除错误和错别字,还能使术语达到一个共同的标准,那就非常好了。很多时候,对相同或相似的函数和程序参数的描述是用相当不同的术语进行的,而且没有解释它们的含义。因此,有了描述,但一些参数的意义和使用必须在实验中研究。


把例子放在一条直线上是非常重要的(完全同意4x4ever 的观点)。词典文章中的绝大多数例子都没有解释什么,也没有教什么。 事实上,一行例子并不是一个例子 !在普通的教科书中,这个例子既可以让你理解参数的含义,也可以让你理解过程/函数的使用顺序,以及它产生的结果。而为此,没有必要自己编写程序。IMHO:MQL字典例子的弱点是文档的主要缺点之一。

你必须承认,这不算什么。

雷纳特,你的公司对文件的立场值得充分尊重。然而,请注意,在你列出的要点中,没有一个项目与文件直接相关。它们都很好,但基础是材料,每个人都在用MQL学习和编程。目前,这些是字典(即文件),其次是网站上的出版物。为了使附加功能发挥作用,你需要建立一个强大的基础。也就是说,使MQL参考值达到预期的质量
 

雷纳特写道(a)。
Yurixx,文档中到底有什么问题?请给我们一个明确的错误指示,我们将修复它。


Yurixx:
雷纳特,你的公司对文件的立场值得充分尊重。然而,请注意,在你列出的要点中,没有一个与文件直接相关的。它们都很好,但基础是材料,每个人都在用MQL学习和编程。目前,这些是字典(即文件),其次是网站上的出版物。要使附加功能发挥作用,你需要打下坚实的基础。也就是说,使MQL参考值达到预期的质量

因此,我理解,没有明显的错误指示。这是个遗憾。
 
Renat:

我认为没有明确指出明显的错误。这是个遗憾。

通常在这种情况下,为了不使你们紧张:)寻找具体的错误,他们会提供一堆多页的GOST、SNiPs和ISO的参考资料,并提出使产品符合指定的清单。可惜我不记得这些数字,也不想去找它们,否则我就把名单扔给你;)
这是个笑话。

雷纳特,你之前在计划推出什么新的网站编辑器时提到过?
 
chv:

雷纳特,你之前在这里提到的网站的什么新编辑器,计划推出吗?
我们为论坛和文章部分做了一个新的、更方便用户使用的在线编辑器版本。这个版本使创建帖子变得更加容易。

其中一个新功能(尚未包括)将是插入视频剪辑。既有你自己的剪辑,也有来自YouTube的剪辑。最有可能的是,我们将在周一推出公共测试版。
 
Renat:

雷纳特写道(a)。
Yurixx,文档中到底有什么问题?请提供明确的错误指示,我们将修复它。

我理解,没有明确指出明显的错误。这是个遗憾。


你,雷纳特,是在妄下结论。看来你真的想不费吹灰之力就能摆脱恼人的 "批评家"。 在如此漂亮地宣称公司的立场之后,它表明实际上这些宣称的背后是不愿意听取用户的意愿。事实上,MQ本身就知道要做什么和怎么做,用户与它有什么关系。

我可以向你保证,你对情况有误解。我可以很好地给你明确指出需要改进的地方。但首先,让我把事情说清楚。这句话是用红色标记的,很有说服力,清楚地表明了以下情况:如果你指出错误,我们会修复它们,但我们不会自己翻阅文档。 而 "明显的错误 "这句话也是暗示性的。 在两年的调试过程中,由于本论坛成员的帮助,"明显的错误 "的数量已经减少到了最低限度,并继续减少。但你仍然用这句话明确表示,你对其他不 "明显 "的错误的信息不感兴趣。而且你对糟糕的例子、难以理解的书面解释等也不感兴趣。

此外,你真的想让我对所有的 文件错误做出指示吗?没有雷纳特,对不起。你的公司可能不会写一本关于MQL的手册--那也没关系。 但它必须修改关于该语言的文件。是的,必须这样做!除了语言的创造者,还有谁必须记录它?除了在这些文件的基础上,程序员还能如何学习使用这种语言?

所以,不是没有根据的,我给你举个典型的例子。 如果你对文件的质量不感兴趣,你肯定会发现为什么我写的东西是垃圾。如果这次谈话中有任何建设性的因素,你无疑会明白我的意思。但你已经知道我的意思。

尽管如此,这里有一个例子。

intArrayRange( object array[], int range_index)
返回数组中给定维度的元素数量。因为索引从零开始,维度大小比最大索引多1。

参数。

阵列[] - 被检查的阵列
范围_索引 - 尺寸指数。

例子。
int dim_size; double num_array[10,10,10]; dim_size=ArrayRange(num_array, 1);
.


通常情况下,索引是一个对数组元素进行编号的变量。在这种情况下,它不是一个索引,而是一个索引号。 然而,从 "由于索引从零开始,维度大小比最大索引多1。"这一点和其他任何事情都不能被理解。特别是对一个初学者来说。

你说 "自从...... "是什么意思?这一点以前在哪里规定过?无处可去!因为这是一个特定的函数,而对测量值进行编号的变量range_index 并没有出现在其他地方。所以你只需要说测量值的编号从0开始,而测量值(不是大小!)比range_index 变量(不是 "index")的最大值多1。更好的是,不要把所有的东西都挤在一句话里,而是用2-3句话连贯而明白地解释。

说明中给出的例子是《手册》的经典之作。它能说明什么?没有什么!如果你,Renat,不知道应该如何,请看本页第一篇文章中的图片。 至少应该有一个例子中给出的操作结果的打印输出。那么,dim_size 变量的结果是什么?我知道你知道,但语言开始者知道吗?

而且即使写成dim_size=10, 对任何人都有帮助吗?这个例子的作者,也许只是出于幽默的原因,在数组的三个维度上都放了数字10

这里有一个写文件的态度的例子。自己想一个 "态度 "这个词的表征。
我想知道你在这里数了多少个 "明显 "的错误。我想,没有一个人。
但我可以向你保证--《手册》中还有许多这样的文章,它们没有明显的错误,但大大降低了它所包含的文件质量。