从头开始自学MQL5语言 - 页 17

 
Roman:

与你所想的完全相反!
在编程中,最重要的是尽可能了解最低水平的语言!
对于初学者来说,低级别的语言是指没有额外代码包装的语言的语法。
你说的分解是什么,是对流程图组成方式的理解。
这就是为什么一个程序员的价值不在于哲学上的幻想,而在于语言的实际知识。
没有语言的基本知识,你怎么能幻想呢?简单的逻辑在哪里呢?
相当于一个电子工程师的语言,也就是这个主题的作者,首先向电路板提供电压,然后想知道为什么电路板烧坏了 ))

我不同意。当你设定一个目标时,你不需要知道这个语言,你只需要了解它的能力。但在设定目标、解决问题、选择算法和编码时,在所有这些阶段都是必要的。在不了解语言语法的 情况下设置问题,有时是实施中的一个大问题))))。

 
Roman:

...相当于,用电子语言,也就是这个主题的作者,先给电路板施加电压,然后想知道为什么电路板烧坏了 ))

你好,罗曼!很好的比较。现在我在编程方面的水平与电子工程师相同,当时我从知道晶体管的原理到学习数字电路的原理K155。

虽然,1983年我的许多同事在不了解晶体管工作原理的情况下,设法修理了EU系列的计算机。对他们来说,知道逻辑的代数就足够了。这是个题外话--对苏联时代的怀念!

问候,弗拉基米尔。

 
Valeriy Yastremskiy:

我不同意。在设定目标时,你不需要了解语言,你需要了解它的能力。但在问题设置、问题解决、算法选择和编码方面,所有这些阶段都是必要的。在不了解语言语法的 情况下设置问题,有时是实施中的一个大问题))))。

所以,如果你不知道这些可能性,你将如何理解这些可能性 ))
问题定义,是掌握语言基础知识的极端阶段,此时你已经明白什么是变量,它可以是什么大小,范围等等。
我也处在一个十字路口,当时我不知道从哪里开始,要学习什么语言,理解什么东西。那是一种痛苦,因为我尝试了几种语言来寻找真相。
但当我终于意识到mql是一种类似C的语言时,我开始以目标为导向,从基础开始学习C。
当我完成了基本的学习后,我惊讶地发现,我实际上已经了解了mql,而且一切都很清楚,只有语法和具体细节应该由docks来改进,这是mql的一个特点。
在了解了编程的过程性方法后,一年后我开始接触到OOP。很长时间以来,我都不清楚,因为同一事物的其他名称。
例如,方法和函数,有什么区别))变量和类成员))等等。
,但要达到这个目的,你需要了解程序化方法的根本,当你开始逐渐了解OOP术语时,理解就会立刻打开。
这就是区别,初始学习路径的选择。不认识字母和标点符号,怎么能用俄语写作?
记住你开始的地方,用钩子和棍子。

 
Roman:

与你完全相反!
编程的决定性因素是对语言的了解,而且是在尽可能低的水平上!

它能给你带来什么?你对语言的了解处于超低水平。你知道哪些汇编命令被替换为if,for循环如何被转换为goto。你知道汇编程序。这里面的利润在哪里?看看Python程序员。他们不知道这些。但他们非常擅长处理函数,他们知道如何进行Map/Reduce。他们能够编撰并相互输入。而现在,与Python相比,他们用MQL写的东西不多,那么MQL在哪里呢?

Roman:

没有语言的基础知识,你怎么能花哨呢?简单的逻辑在哪里呢?
这类似于电子语言,也就是这个主题的作者,先给板子提供电压,然后想为什么板子烧坏了 ))

按照你对简单逻辑的理解,这是一个非处方药的程序。在我看来,这就像汇编语言:"我所看到的就是我所唱的"。那里没有逻辑,只是愚蠢的打字技巧。一个打字员在经过两周的培训后就可以做到这一点。这不是编程。

Roman:

就分解而言,正如你所说的,它是理解流程图是如何组成的。

流程图是程序性语言的一种图示。"这里是for循环,这里是if循环"。现在没有人用程序性语言写作了。这对用户应用程序来说是无稽之谈,可以选择,例如,C或Pascal。对于操作系统核心或其他程序性语言,它是最好的。但这只是很小比例的任务,而且显然不在手头任务的范围内。
 
Vasiliy Sokolov:

而这样的知识会有什么好处呢?你对语言的了解处于超低水平。你知道哪些汇编命令可以替代if,for循环如何转换为goto。你知道汇编程序。这里面的利润在哪里?看看Python程序员。他们不知道这些。但他们非常擅长处理函数,他们知道如何进行Map/Reduce。他们能够编撰并相互输入。而现在的MQL在哪里,他们写的不是那么多,而是用Python?

在你对简单逻辑的理解中,这是一个可怕的程序性的东西。在我对逻辑的理解中,就像在汇编程序中一样:"我看到的,就是我唱的"。那里没有逻辑,只是愚蠢的打字技巧。一个打字员在经过两周的培训后就可以做到这一点。这不是编程。

流程图是程序性JD的一种图示。"这里是for循环,这里是if循环"。现在他们不使用程序性语言写作。这对用户应用程序来说是无稽之谈,可以选择,例如,C或Pascal。对于操作系统核心或其他程序性语言,它是最好的。但这在任务中的比例微乎其微,而且显然超出了手头任务的范围。
Vasily,你怎么能想象教TC用OOP范式编程,避开他没有的基本东西呢?)不,好吧,也许有可能,但我无法想象...

就像我们解释的:"编程算法(例程)=错误的方法。你应该对概念上完整的、分层结构的、被称为 "对象 "的模式化系统进行编程,这些对象在软件环境中相互继承属性和方法"。

他马上说:"啊呀,你以前怎么不说呢!?这一切都很有意义。")))
 
Vasiliy Sokolov:

而这种知识会达到什么效果呢?你对语言的了解处于超低水平。你知道哪些汇编命令可以替代if,for循环如何转换为goto。你知道汇编程序。这里面的利润在哪里?看看Python程序员。他们不知道这些。但他们非常擅长处理函数,他们知道如何进行Map/Reduce。他们能够编撰并相互输入。而现在的MQL在哪里,他们写的不是那么多,而是用Python?

在你对简单逻辑的理解中,这是一个可怕的程序性的东西。在我对逻辑的理解中,就像在汇编程序中一样:"我看到的,就是我唱的"。那里没有逻辑,只是愚蠢的打字技巧。一个打字员在经过两周的培训后就可以做到这一点。这不是编程。

流程图是程序性语言的一种模式。"这里是for循环,这里是if循环"。现在没有人用程序性语言写作了。这对用户应用程序来说是无稽之谈,可以选择,例如,C或Pascal。对于操作系统内核或其他程序性语言,它是最好的。但这只是很小比例的任务,而且显然不在手头任务的范围内。

为了让你得到启发,Python是用C语言编写的。
而Python的设计是为了使写代码更容易。但由于其看似简单而变成了一种流行的语言,编码者的知识仍然停留在Python的水平上。
而只有 C语言的程序员才会编写库和额外的东西给它。这些人是程序员,而不是编码员。
这就是一个简单的代码打字员会以她的理解击败编码员的道理。
你只是一个C#-nik,这就是为什么你有这样的表情,但根本不想想这个C#语言是用什么语言写的))

 
Roman:

所以,如果你不知道这些可能性,你将如何理解这些可能性 ))
问题设置是掌握一门语言的基础知识的极端阶段,此时你已经明白什么是变量,它可以是什么大小,作用域等等。
我也处在一个十字路口,当时我不知道从哪里开始,要学习什么语言,理解什么东西。那是一种痛苦,因为我尝试了几种语言来寻找真相。
但当我终于意识到mql是一种类似C的语言时,我开始以目标为导向,从基础开始学习C。
当我完成了基本的学习之后,我惊讶地发现,我实际上已经了解了mql,而且一切都很清楚,只有语法和具体细节应该由docks来改进,这是mql的一个特点。
在了解了编程的过程性方法后,一年后我开始接触到OOP。很长时间以来,我都不清楚,因为同一事物的其他名称。
例如,方法和函数,有什么区别))变量和类成员))等等。
,但要达到这个目的,你需要了解程序化方法的根本,当你开始逐渐了解OOP术语时,理解就会立刻打开。
这就是区别,初始学习路径的选择。不认识字母和标点符号,怎么能用俄语写作?
回想一下你开始的地方,用钩子和棍子。

我不知道该说些什么。每个人都有自己的方式,我想。我不坚持。但目标可以用不同的语言来解决,在选择目标时,人们可能不知道语法,而只知道可能性。有python的网站库,网站可以用python、pxp、jumla、html或其他任何语言来做,这是一个价格和是否有现成的功能(脚本)的问题,这是一个问题的陈述,需要对语言有更深的了解。我们可以选择以下脚本来处理系列问题:MKL、Python、R和Matlab。原生的MCL将足以让MAs设定订单。

一切都必须是和谐的。了解汽车的机械原理并不等于能很好地驾驶它。但不知道这个机制对路上的故障是不利的)。

每个人都有自己的想法,往往一个好的编码员不是一个好的算法师,反之亦然。如果这些品质很好地结合在一起,通常是很酷、很贵的,但不是那么经常。))))。

 
当然,程序化方法将程序员与包含大量现成解决方案的巨大OOP库隔离开来。而这种 "孤立 "肯定会影响到他的编码水平。但只有在掌握了基础之后,才能达到图书馆的要求。也就是说,只有具备强大的初始理论和实践基础,才有可能将程序构造成一个对象环境,而不是一个平面的功能指令。当然,我认为是这样。
 
Vasiliy Sokolov:

而这样的知识会有什么好处呢?你对语言的了解处于超低水平。你知道哪些汇编命令可以替代if,for循环如何转换为goto。你知道汇编程序。这里面的利润在哪里?看看Python程序员。他们不知道这些。但他们非常擅长处理函数,他们知道如何进行Map/Reduce。他们能够编撰并相互输入。而现在的MQL在哪里,他们写的不是那么多,而是用Python?

在你对简单逻辑的理解中,这是一个可怕的程序性的东西。在我对逻辑的理解中,就像在汇编程序中一样:"我看到的,就是我唱的"。那里没有逻辑,只是愚蠢的打字技巧。一个打字员在经过两周的培训后就可以做到这一点。这不是编程。

流程图是程序性语言的流程图。"这里是for循环,这里是if循环"。现在没有人用程序性语言写作了。这对用户应用程序来说是无稽之谈,可以选择,例如,C或Pascal。对于操作系统内核或其他程序性语言,它是最好的。但这只是很小比例的任务,而且显然不在手头任务的范围内。

这是一个很大的,这是正确的做事方式。理想情况下,客户应该是一个好的编码员))))。将节省多少神经))))

了解一种低级别的语言并不会使高级别的语言知识失效,只是让你对程序的工作原理有更深的理解。而且,如果他知道go-to循环是如何工作的,以及它们消耗了多少内存,他就可以在必要时对它们进行优化。仅此而已。

说实话,我不明白这种争论的意义。

 
Valeriy Yastremskiy:

...

坦率地说,我不明白这种争论的意义。

我认为Vasily想尝试教给初学者OOP思维,除了OOP本身,其他都是次要的。不要从变量、运算符、数组开始,而是从类、继承属性、建立对象层次和连接强大的库开始。从 "托儿所 "转学,直接进入大学。)