Il mio approccio. Il nucleo è il motore. - pagina 57

 
Реter Konow:

Avrei già pubblicato una versione gratuita se ci fosse stato un feedback costruttivo. Ma vedo una negatività diffusa, lampante e poco spiegata. E su tutti i lati. Questo è un fenomeno che sto cercando di capire.

Peter, un anno e mezzo fa ti ho scritto in privato:

Non c'è nessun fenomeno. C'è un'ovvietà che lei si rifiuta di capire.
L'ovvietà è che state usando metodi di programmazione obsoleti e fondamentalmente non volete impararne di nuovi, o per pigrizia, o per estremo conservatorismo, o semplicemente per un comportamento di protesta, radicato nell'infanzia.

 
Реter Konow:

È necessario conoscere il C#. Dovete sapere come scrivere una DLL. È necessario organizzare e pensare all'interazione tra il modulo e l'applicazione MT.

Mettiamo insieme tutti i passi e vediamo se è tutto così semplice come dici. Anch'io sono interessato a questo.

Puoi per favore inviarmi il codice della DLL?

Sono un pessimo insegnante, ma imparo in fretta )))).

Ok, cercherò di spiegare in dettaglio:

1. Scarica il compilatore C#, ho scaricato SharpDevelophttp://www.icsharpcode.net/OpenSource/SD/Download/Default.aspx , ho scelto Downloads per SharpDevelop 5 (Frameworks 2.0 to 4.5.1) = 14 MB

2. Installatelo ed eseguitelo.

3. Creare un nuovo progetto: File - New - Solution - C# folder - Class Library

4. Aggiungere un modulo visivo: File - New -New file (premere Create file inside project) - cartella C# - cartella Windows Applications - Form

5. Ora il progetto è pronto, apri il designer del modulo, aggiungi pulsanti, caselle di controllo, schede, linee di griglia... ...tutte le cose standard di Windows

6. Nel file con il nome del nostro progetto scrivete il codice di base:

namespace Mylib
{
        /// <summary>
        /// Description of TestClass.
        /// </summary>
        public class TestClass
{
        static Form1 f=new Form1();
        public static void Run()
   {
        f.ShowDialog();
   }
}
}

7. Premete F8 e cercate la vostra .dll pronta sul disco nella cartella del progetto

In MT5 scriviamo un Expert Advisor per chiamare il modulo:

#import "Mylib.dll"
#import
//+------------------------------------------------------------------+
int OnInit()
  {
   TestClass::Run();
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
void OnTick()
  {
  }
//+------------------------------------------------------------------+

lanciarlo, usare una finestra già pronta con elementi di controllo, poi fare gestori di pulsanti in MQL (se conveniente in OnTick() o OnTimer()) e una classe in C# che restituirà ciò che un utente ha premuto su richiesta

Ho allegato il codice sorgente dell'Expert Advisor e della .dll, oggi sono troppo pigro per sedermi vicino al computer, domani capirò perché questo modulo non funziona nello Strategy Tester, ma, come ho scritto, ci sono molte informazioni sul web, per uso personale, non potrebbe essere più facile ;)

File:
MQL5.zip  11 kb
 
Igor Makanu:

hmm, non sono un buon insegnante, ma imparo in fretta ))))

OK, cercherò di elaborare:

1. Si scarica il compilatore////.

Pensi che ne abbia bisogno per imparare (grazie, a proposito, per le istruzioni concise e precise)?

Sta per iniziare a parlare del perché il suo approccio è migliore e questo è inutile.

 
Dmitry Fedoseev:

Pensi che ne abbia bisogno per imparare (grazie, a proposito, per le istruzioni brevi e precise)?

Sta per iniziare a parlare del perché il suo approccio è migliore e questo è inutile.

Non so, forse hai ragione!

ma sto prendendo la via della minore resistenza... Non ho avuto una cattiva idea, ho visto una domanda per me stesso e ho risposto, la regola nei forum è sempre: tu chiedi a me, io chiedo a te)))

 
Vitalii Ananev:
Perché tu, Peter, non fai la stessa cosa usando OOP. Non capisco perché non sfrutti le sue possibilità e non cerchi nemmeno di afferrare i principi di OOP. La professione di uno specialista informatico presuppone di per sé che questo stesso specialista sia costantemente impegnato nell'autoformazione. Poiché le tecnologie non stanno ferme, appaiono nuovi linguaggi di programmazione e le capacità dei PC crescono. In generale, il progresso non si ferma. Ma voi con il vostro stile di programmazione siete bloccati al livello del 2000 e proponete agli altri programmatori di tornare al livello di quegli anni straccioni. L'ho detto molte volte e lo ripeto ancora una volta. Provate a fare tutto questo usando RPF.

Chi se ne frega se la stessa cosa viene fatta con o senza OOP. Cosa è già stato fatto (

 
Nikolai Semko:

Peter, un anno e mezzo fa ti ho scritto in privato:

Non c'è nessun fenomeno. C'è un'ovvietà che lei si rifiuta di capire.
E l'ovvietà è che state usando metodi di programmazione obsoleti e fondamentalmente non volete impararne di nuovi, o per pigrizia, o per estremo conservatorismo, o semplicemente per un comportamento di protesta, che ha le sue radici nell'infanzia.

Nikolai, ti sei lasciato trasportare e non è chiaro perché. Posso fantasticare:

1. Lei è qualificato come psichiatra, ma non ha recitato il giuramento di Ippocrate.

2. Ti sei fatto un po' prendere la mano e sei pronto a chiedere scusa a Peter per il tuo giudizio completamente immorale.

 
Алексей Тарабанов:

Nikolai, ti sei lasciato trasportare e non è chiaro perché. Posso fantasticare:

1. Lei è qualificato come psichiatra, ma non ha recitato il giuramento di Ippocrate.

2. Sei un po' in difficoltà e sei pronto a chiedere scusa a Peter per il tuo giudizio completamente immorale.

Nei paesi civilizzati del mondo c'è un livello molto alto di psicologizzazione della popolazione (nel senso di interesse e comprensione della psicologia), quindi in generale non è niente di speciale quando una persona cerca di capire il comportamento di un'altra e ne discute, e in generale non è un segreto che tutti i modelli di comportamento sono radicati nell'infanzia, non sorprende né offende nessuno e tutti sono tranquilli al riguardo.

 
Алексей Тарабанов:

Chi se ne frega se la stessa cosa viene fatta con o senza OOP. Quello che è già stato fatto (

In generale, non fa differenza se non si cerca freneticamente di dimostrare tutti i vantaggi del proprio approccio e il completo fallimento dell'OOP in linea di principio.

 
Dmitry Fedoseev:

Nei paesi civilizzati del mondo c'è un livello molto alto di psicologizzazione della popolazione (nel senso di interesse e comprensione della psicologia), quindi. in generale, non c'è niente di speciale quando una persona cerca di capire il comportamento di un'altra e ne discute, e in generale non è un segreto che tutte le caratteristiche del comportamento hanno le loro radici nell'infanzia, questo non sorprenderà o offenderà nessuno, e tutti sono a loro agio con questo.

Lasciatemi speculare sul luogo in cui è nato un uomo buono - per esempio, Nikolai Semko - e con cosa è nato. Siamo un paese civile.

 
Dmitry Fedoseev:

In generale, non fa differenza se non si cerca freneticamente di dimostrare tutti i vantaggi del proprio approccio e il completo fallimento dell'OOP in linea di principio.

Se ci prova, farà la differenza? Tabella - dov'è l'OOP?

Mettiamola in un altro modo, ragazzi sexy OOP. Fate due tabelle. Il primo - senza OOP, il secondo - con esso. La cosa principale è non confondere le cose.