MetaTrader 5交易终端中的造型器

 

讨论MQL5定型器。从这里 开始


我必须要看不同的代码。这包括写得不好的代码。

良好的格式化大大简化了代码的阅读。


因此,我认为,由于特定的格式和缺乏选项,这个东西仍将不被大多数正常的编码者所接受。

我建议要么增加定制,要么以真正的普通风格进行格式化。

作为一种选择--使其可以选择2-3种风格中的一种。

Вот это стиль! :) - MQL4 форум
  • www.mql5.com
Вот это стиль! :) - MQL4 форум
 
TheXpert :
讨论MQL5造型器


瓜诺,因为它是不可定制的。

 
TheXpert :

我建议要么增加自定义,要么以真正的普通风格进行格式化。

或者,使其能够在2-3种风格之间进行选择。

+

 

实际上,这个解决方案是微不足道的,而且已经被许多IDE实现了。

对于每个句法元素( { ( for function <= if ......) 定义规则:在它之前和之后要插入多少个空格,以及在它之前或之后是否需要换行

自定义设置应该被保存到一个文件中,并在编辑器启动时自动加载(优先)。

Документация по MQL5: Основы языка / Типы данных / Целые типы / Символьные константы
Документация по MQL5: Основы языка / Типы данных / Целые типы / Символьные константы
  • www.mql5.com
Основы языка / Типы данных / Целые типы / Символьные константы - Документация по MQL5
 
如果能让样式变得可定制,那就更好了。
 
sol :
如果能使造型器变得可定制,那就更好了。


...这是给开发者的主要问题...

有可能创建一个 可定制的造型器 吗?即有可能--这是毫无疑问的。问题是另一个,考虑这个愿望的前景和重点是什么?

 

先生们,这些代码是为谁而写的?


我很确定这是为其他程序员准备的。对他们来说,阅读别人没有格式化的代码是非常不愉快的。


正是为了解决这个问题,我们创建了内置的样式器 功能。如果你想让其他人(不是你,而是其他人)愿意查看你的代码,你最好让它尽可能的简单和明确。而这里的关键词是 "人们",而不是 "你"。



统一的风格设计对MQL5.社区很重要,因为我们在代码库中收集了一个巨大的来源数据库。这意味着这些资源将被大量的第三方开发者和用户阅读。


为了避免产生一堆难以理解的代码,所有发布的脚本都将被自动

  1. 由造型师清洗过的
  2. 检查是否正确
  3. 为指标生成标准的屏幕截图

显然,统一的风格对于解决培训档案维护的全局性任务极为重要。
 
Rosh писал(а)>>

其逻辑是,代码 与嵌套层对齐。这里没有异议,我们可以看到。

但开头和结尾的括号不是代码,它们是设计元素,所以它们略微超出代码 一个字符。


这让我很吃惊。我一直认为,在设置这个所谓的 "设计元素 "时,一个错误可能会极大地改变代码。但事实证明,它根本就不是一个代码元素。下面是一个例子。

if (условие) function1(); function2();

и ____________________________________

if (условие) {function1(); function2();}

编译者说。"没关系的!"。但是,该方案将不会起作用。错误在哪里?在设计中?还是在代码中?

 

请不要拘泥于文字。


施加严格的(甚至接近个人权利的)设计规则可以根除那种杀手级的代码。

if (условие) function1(); function2();

事实上,人们可以说,在这个问题上的弱点导致开发团队陷入混乱。


正是为了减少这种混乱,我们实施了一个硬性的、不可配置的造型器


MQL4代码库中的几千个脚本已经通过了我们的编辑的手,他们会对所使用的风格表达更严厉的意见。我们不希望再次经历这样的过程。

 
Renat :


显然,要解决培训档案维护的全局性任务,有一个统一的风格是极其重要的。


100%正确。

必须要有一个单一的风格。但是!每个人都应该而且可能有自己的风格。

许多人习惯于其他常见的风格,如VC++(例如,我支持ForexTools,我自己也在使用它)。

为什么要让程序员已经受折磨的大脑变得紧张......使这种风格更容易成为可定制的。你可能知道当你看到不同风格的代码时是什么感觉,你很想把它改成你自己的、原生的、舒服的风格,你已经用了15年了。


我认为这并不难,而不是把括号{ }移到文本上,然后再离它1个空格--对它们不做任何处理。让它与它的父母保持水平,因为,如果,...

 
sergeev :


100%正确。

必须要有一个单一的风格。但是!每个人都应该而且可能有自己的风格。

如果你是为自己 写作,就不要用普通的定型器


程序员写代码不是为了自己,而是错误地认为他们是为了自己。你知道的,不是吗?