My approach. The core is the engine. - page 59

 
One man has been doing "something" for 3000 years without showing his brainchild, but people reproach him for going the wrong way :)
Peter, Peter the Great Coder, if I understand correctly, you are a marketer?
 
jdjahfkahjf:
One man has been doing "something" for 3000 years without showing his brainchild, but people reproach him for going the wrong way :)
Peter, Peter the Great Coder, if I understand correctly, you are a marketer?

Without showing, but at the same time quite clearly describing their principles. That's what you object to, that's what they say, that "the road is wrong".

Moreover, it is "wrong" not for the author, but for those who object. They have chicken-like brains and cannot remember where and what objects they created, where and who refers to them, what each cell in the array signifies, where they can change from and where not... It's understandable that opponents are outraged. Instead of training their memory, so that they could easily memorize a couple thousand objects and references in the program, silly people cut their own access rights, define some distinctions, some interfaces, some polymorphic functions... They torture themselves, like under the Tsarist regime, eh...

 
Georgiy Merts:

And, "wrong" it is just not for the author, and for those who object. They have chicken brains, and can not remember where and what objects they created, where and who refers to them, what each cell in the array means, where they can change from, where not... It is understandable that opponents are outraged. Instead of training their memory, so that they could easily memorize a couple thousand objects and references in the program, silly people cut their own access rights, define some distinctions, some interfaces, some polymorphic functions... They torture themselves, like under the Tsarist regime, eh...

that's it:

The topicstarter has a talent for attracting an audience, which then in his topic arranges a shambles, overnight managed to remember who got what out of where, discuss psychology, make up and drink for his health!

ZS: Congratulations on good health! Good luck, good health, and long life!

 
Georgiy Merts:

By not showing it, but by describing its principles quite clearly. These are the objections, and they are used to say that "the road is wrong".

Moreover, it is "wrong" not for the author, but for those who object. They have chicken brains and cannot remember where and what objects they created, where and who refers to them, what each cell in the array means, where they can change from, where not... It's understandable that opponents are outraged. Instead of training their memory, so that they could easily memorize a couple thousand objects and references in the program, silly people cut their own access rights, define some distinctions, some interfaces, some polymorphic functions... They torture themselves, like under the Tsarist regime, eh...

In order to memorise well, you have to program in your mother tongue. Or better yet, in two languages. Then the memory is 100 per cent working.

This simple truth cannot be understood. Stereotypes get in the way.


And with fewer rules, their own constructions in the program are better remembered. That is why I invented my own approach with a tiny number of rules. In order to make a lot of them.

 
Igor Makanu:

that's it:

The topicstarter has a talent for attracting an audience, which then in his topic arranges a shambles, overnight managed to remember who got what out of where, discuss psychology, make up and drink for health!

ZS: Congratulations on good health! Good luck, good health and long life!

I'm downloading and installing C# at the moment.

I want to handle this question in practice.

Let's see how easy it is.

 
Реter Konow:

In order to be good at remembering, you need to program in your mother tongue. Or better still, in two languages. Then your memory is 100 per cent working.

This simple truth cannot be understood. Stereotypes get in the way.

You are always talking about stereotypes. Let's think objectively. Look, all the future programmers from school desks are mostly studying C++ and participating in contests.

All international contests for schoolchildren and students of the world scale are in C++, Java, I don't know if Pascal or C# exist or not. But C++ reigns, not counting the tools for the WEB.

What do you think ? Everybody is comfortable with C++ and OOP style. But there are very few forex programmers among programmers, as well as the number of those who deal with forex. Many do not even know what Forex is, even Americans.

Out of a thousand programmers you may not find a single programmer who has done algotrading.

 

Installed C#. Opened a project. Made a form and added two buttons and three checkboxes to it.

Here is the code in the editor:

/*
 * Created by SharpDevelop.
 * User: Peter Konow
 * Date: 12.12.2018
 * Time: 9:08
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;

namespace Test_app_1
{
        /// <summary>
        /// Description of MainForm.
        /// </summary>
        public partial class MainForm : Form
        {
                public MainForm()
                {
                        //
                        // The InitializeComponent() call is required for Windows Forms designer support.
                        //
                        InitializeComponent();
                        
                        //
                        // TODO: Add constructor code after the InitializeComponent() call.
                        //
                }
                
                void Button1Click(object sender, EventArgs e)
                {
                        
                }
        }
}

Question: Why is there a function for one button and where are the functions for the second button and the checkboxes?

Found this code:

/*
 * Created by SharpDevelop.
 * User: Peter Konow
 * Date: 12.12.2018
 * Time: 9:08
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
namespace Test_app_1
{
        partial class MainForm
        {
                /// <summary>
                /// Designer variable used to keep track of non-visual components.
                /// </summary>
                private System.ComponentModel.IContainer components = null;
                
                /// <summary>
                /// Disposes resources used by the form.
                /// </summary>
                /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
                protected override void Dispose(bool disposing)
                {
                        if (disposing) {
                                if (components != null) {
                                        components.Dispose();
                                }
                        }
                        base.Dispose(disposing);
                }
                
                /// <summary>
                /// This method is required for Windows Forms designer support.
                /// Do not change the method contents inside the source code editor. The Forms designer might
                /// not be able to load this method if it was changed manually.
                /// </summary>
                private void InitializeComponent()
                {
                        this.button1 = new System.Windows.Forms.Button();
                        this.checkBox1 = new System.Windows.Forms.CheckBox();
                        this.checkBox2 = new System.Windows.Forms.CheckBox();
                        this.checkBox3 = new System.Windows.Forms.CheckBox();
                        this.button2 = new System.Windows.Forms.Button();
                        this.SuspendLayout();
                        // 
                        // button1
                        // 
                        this.button1.Location = new System.Drawing.Point(25, 21);
                        this.button1.Name = "button1";
                        this.button1.Size = new System.Drawing.Size(131, 76);
                        this.button1.TabIndex = 0;
                        this.button1.Text = "button1";
                        this.button1.UseVisualStyleBackColor = true;
                        this.button1.Click += new System.EventHandler(this.Button1Click);
                        // 
                        // checkBox1
                        // 
                        this.checkBox1.Location = new System.Drawing.Point(25, 146);
                        this.checkBox1.Name = "checkBox1";
                        this.checkBox1.Size = new System.Drawing.Size(104, 24);
                        this.checkBox1.TabIndex = 1;
                        this.checkBox1.Text = "checkBox1";
                        this.checkBox1.UseVisualStyleBackColor = true;
                        // 
                        // checkBox2
                        // 
                        this.checkBox2.Location = new System.Drawing.Point(25, 176);
                        this.checkBox2.Name = "checkBox2";
                        this.checkBox2.Size = new System.Drawing.Size(104, 24);
                        this.checkBox2.TabIndex = 2;
                        this.checkBox2.Text = "checkBox2";
                        this.checkBox2.UseVisualStyleBackColor = true;
                        // 
                        // checkBox3
                        // 
                        this.checkBox3.Location = new System.Drawing.Point(25, 207);
                        this.checkBox3.Name = "checkBox3";
                        this.checkBox3.Size = new System.Drawing.Size(104, 24);
                        this.checkBox3.TabIndex = 3;
                        this.checkBox3.Text = "checkBox3";
                        this.checkBox3.UseVisualStyleBackColor = true;
                        // 
                        // button2
                        // 
                        this.button2.Location = new System.Drawing.Point(172, 21);
                        this.button2.Name = "button2";
                        this.button2.Size = new System.Drawing.Size(127, 76);
                        this.button2.TabIndex = 4;
                        this.button2.Text = "button2";
                        this.button2.UseVisualStyleBackColor = true;
                        // 
                        // MainForm
                        // 
                        this.AutoScaleDimensions = new System.Drawing.SizeF(6 F, 13 F);
                        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                        this.ClientSize = new System.Drawing.Size(325, 261);
                        this.Controls.Add(this.button2);
                        this.Controls.Add(this.checkBox3);
                        this.Controls.Add(this.checkBox2);
                        this.Controls.Add(this.checkBox1);
                        this.Controls.Add(this.button1);
                        this.Name = "MainForm";
                        this.Text = "Test app 1";
                        this.ResumeLayout(false);
                }
                private System.Windows.Forms.Button button2;
                private System.Windows.Forms.CheckBox checkBox3;
                private System.Windows.Forms.CheckBox checkBox2;
                private System.Windows.Forms.CheckBox checkBox1;
                private System.Windows.Forms.Button button1;
        }
}

And how to use it for interrelation with MT5?

 

That is, I have 5 controls on a form. How do I connect them to MT5 next?

 
Реter Konow:

And how can this be used to interface with MT5?

Alas, I can't go any further than I wrote herehttps://www.mql5.com/ru/forum/293630/page57#comment_9851502

But if you know how the event model works in Windows and have experience working with compilers with form designers, then everything is the same everywhere

ZS: this is the third time I've seen Sharp, but I've had great experience with Delphi, I don't see any difference, everything works exactly the same, what doesn't work is googled the first time

Мой подход. Ядро - Движок.
Мой подход. Ядро - Движок.
  • 2018.12.11
  • www.mql5.com
В этой ветке, я хочу рассказать о своем подходе в программировании. Заранее предупреждаю, - здесь не будет обсуждений GUI...
 
Igor Makanu:

Alas, I can't go any further than I did herehttps://www.mql5.com/ru/forum/293630/page57#comment_9851502

But if you know how the event model works in Windows and have experience working with compilers with form designers, then everything is the same everywhere

SZZ: this is the third time I've seen Sharp, but I've had great experience with Delphi, I don't see the difference, everything works exactly the same, what doesn't work is googled the first time

  1. I need to send event of pressing buttons and checkboxes to MT5.
  2. I need to change state of checkbox or button in form programmatically.
How to do it?


PS. Programmatically, I mean from MT5. The user in MT5 program should change the state of the checkbox or button in the form.

Reason: