OOP vs programmazione procedurale - pagina 3

 
George Merts:

Criterio di confronto?

Io sostengo che l'OOP è necessaria per la facilità di mantenere e fare modifiche al codice finito. Voi, per come la vedo io (parliamo di "voi"), sostenete che non è più complicato (e forse anche più semplice) nel vostro codice. Come possiamo fare il confronto?

La tua sola frase sul "ti ricordi tutto" introduce già l'ineguaglianza. Diciamo che il mio merchant processor consiste di 39 file e 270kb di codice. Se gli sviluppatori cambieranno i protocolli di interazione con un server di trading - ho paura che senza classi di strutturazione e OOP-sistema sarà molto difficile per me trovare tutti i luoghi, che devono essere interessati da questo cambiamento, e modificare il codice, in modo che, in primo luogo, i blocchi che lavorano in MT4 non sarebbero interessati e, in secondo luogo, il TS scritto non "sentirebbe" questo cambiamento.

Tutto il sistema OOP limita per me la possibilità di fare errori proprio perché non ricordo tutto. E se ricordassi tutto, come fai tu, probabilmente non ci sarebbe bisogno di costruire tutte queste interfacce virtuali...

Tu o tu non importa...

Tutte le nostre discussioni non arrivano al compito specifico in questione. Ecco perché tutto rimane una "chiacchiera" inattiva. 270kb di codice non è affatto molto se è il tuo codice. Te lo ricordi e lo sai. Se non conoscete bene il vostro codice, ci saranno naturalmente delle difficoltà nel modificarlo. Passare a una piattaforma diversa non è un problema per me proprio perché non uso OOP e conosco molto bene tutto il mio codice. Anche se ho molte volte più codice. Per favore, descrivete le difficoltà specifiche che avete quando volete riscrivere il vostro codice in MQL5.

 
Alexey Volchanskiy:

In realtà WL sta morendo, nessuna nuova versione per un anno e mezzo. E come dice vika.

Itest avvengono su 1core, rendendo il processo lungo sui computer moderni con più core.

Sì, questi ragazzi, secondo me, sono stati delusi dal loro sospetto paranoico e dalla loro lotta intransigente contro la pirateria.

Mi ricordo quando ho scaricato il WLD per i russi e ho dovuto scriverci il mio nome e cognome. Beh, ho scritto il mio cognome... Questi paranoici mi hanno detto che non ti avrebbero dato la chiave perché non eri "una bella persona". Ho dovuto scrivere loro una lettera separata in russo, per spiegare che il mio bisnonno paterno era nato a Riga, e, quindi, il cognome era "zakordonnye", e che io, russo originale, sono nato qui... Si sono scusati e mi hanno mandato una chiave.

Ma la loro comunità tre anni fa, secondo me, era più sviluppata di quella di MT. È vero che ora, per come la vedo io, MT sta reclamando sempre più la sua "fetta di torta".

 
Реter Konow:

Tu o tu non importa...

Tutta la nostra discussione non arriva al compito specifico in questione. Ecco perché tutto rimane una "chiacchiera" vuota. 270 kb di codice non sono affatto molti se è il tuo codice. Te lo ricordi e lo sai. Se non conoscete bene il vostro codice, ci saranno naturalmente delle difficoltà nel modificarlo. Passare a una piattaforma diversa non è un problema per me proprio perché non uso OOP e conosco molto bene tutto il mio codice. Anche se ho molte volte più codice. Per favore, descrivete le difficoltà specifiche che avete quando volete riscrivere il vostro codice in MQL5.

Questo è il mio codice. Ma me lo ricordo, stranamente, piuttosto male. Sopra l'argomento - ho postato il mio codice, potete vedere quanti commenti ci sono, e più di una volta ho incontrato che non è sufficiente, periodicamente mi imbatto in posti che devo smontare a lungo per capire le sottigliezze del lavoro. Detto questo, è bello quando queste sottigliezze sono già descritte nei commenti in anticipo.

Non capisco cosa intendo per "difficoltà che sorgono". Non ho "un codice per MQL4 o MQL5" - il mio codice è lo stesso per entrambe le piattaforme (l'unica differenza è nelle classi dipendenti dalla piattaforma, che sono state scritte molto tempo fa e cambiano raramente). Tutto quello che scrivo funziona immediatamente sia sotto MT4 che sotto MT5

 
George Merts:

Questo è il mio codice. Ma non lo ricordo molto bene, stranamente. Sopra sull'argomento - ho postato il mio codice, potete vedere quanti commenti ci sono, e più di una volta ho incontrato che non è sufficiente, periodicamente mi imbatto in posti che devo smontare a lungo per capire la complessità del lavoro. Detto questo, è bello quando queste sottigliezze sono già descritte nei commenti in anticipo.

Non capisco cosa intendo per "complessità che sorgono". Il mio codice è lo stesso per entrambe le piattaforme (l'unica differenza è nelle classi dipendenti dalla piattaforma, che sono scritte molto tempo fa e cambiano raramente). Tutto quello che scrivo funziona immediatamente sia sotto MT4 che sotto MT5

Sono confuso. Hai detto sopra che la sfida è quella di far funzionare il codice su entrambi i terminali.
 
George Merts:

Secondo me, questi ragazzi sono stati delusi dal loro sospetto paranoico e dalla loro lotta intransigente contro la pirateria.

Mi ricordo che nella loro promozione "per i cittadini russi", ho scaricato WLD e ho dovuto scriverci i miei dati. Beh, ho scritto il mio cognome... Questi paranoici mi hanno detto che non ti avrebbero dato la chiave perché non eri "una bella persona". Ho dovuto scrivere loro una lettera separata in russo, per spiegare che il mio bisnonno paterno era nato a Riga, e, quindi, il cognome era "zakrodon" (straniero), ma io, nativo russo, ero nato qui... Si sono scusati e mi hanno mandato una chiave.

Ma la loro comunità tre anni fa, secondo me, era più sviluppata di quella di MT. È vero che ora, per come la vedo io, MT sta reclamando sempre più la sua "fetta di torta".

Sì, è davvero forte.
 
Реter Konow:
Sono confuso. Hai detto sopra che l'obiettivo era di far funzionare il codice su entrambi i terminali.
Bene, così è stato realizzato, e ora - il codice è uno.
 
George Merts:

Questo è il mio codice. Ma non lo ricordo molto bene, stranamente. Sopra sull'argomento - ho postato il mio codice, potete vedere quanti commenti ci sono, e più di una volta ho incontrato che non è sufficiente, periodicamente mi imbatto in posti che devo smontare a lungo per capire la complessità del lavoro. Detto questo, è bello quando queste sottigliezze sono già descritte nei commenti in anticipo.

Non capisco cosa intendo per "difficoltà che sorgono". Il mio codice è lo stesso per entrambe le piattaforme (l'unica differenza è nelle classi dipendenti dalla piattaforma, che sono state scritte molto tempo fa e cambiano raramente). Tutto quello che scrivo funziona immediatamente sia sotto MT4 che sotto MT5


Sono d'accordo con 100500! Io stesso leggo spesso i miei programmi e a volte mi confondo, cosa volevo fare qui? Ci penso, capisco, ma il tempo sta per scadere. Io commento quasi ogni linea di codice per i miei clienti.

E c'è un'altra persona che chiede di fare una revisione video del codice per ogni programma. I commenti non sono in qualche modo sufficienti per lui.

 
George Merts:
Bene, così è stato fatto, e ora - il codice è unificato.
George Merts:

Ehm... Non ho capito bene il punto.

L'obiettivo era quello di separare il TC dal terminale. Il codice deve essere compilato su entrambe le piattaforme senza alcuna modifica. Il super compito - trasferire tutti i TS scritti a WealhtLab Developer scrivendo solo le classi di lavoro con il server commerciale.

//--------------------------------------------------


Ho chiesto informazioni sul compito attuale per confrontare le sue soluzioni con diversi criteri e giungere a una conclusione sull'efficacia di ciascuna. Stai togliendo la conversazione dalla parte pratica. Quando si afferma l'efficacia dell'OOP, bisogna essere in grado di provarla nella pratica. Io, d'altra parte, sono disposto a provare la mia opinione.

Allora, qual è il compito attuale? Spero che te lo ricordi)

 
Alexey Volchanskiy:

Sono d'accordo 100500! Io stesso leggo spesso i miei programmi e a volte mi confondo, cosa volevo fare qui? Ci penso, capisco, ma il tempo sta per scadere. Io commento quasi ogni linea di codice per i miei clienti.

E c'è un'altra persona che chiede di fare una revisione video del codice per ogni programma. In qualche modo gli mancano i commenti.

Questa è già una "clinica" ))))

In generale, come possiamo parlare di efficienza dell'OOP se la gente non ricorda il proprio codice?)

 
Реter Konow:

Questa è già una "clinica")))

In realtà, di che tipo di efficacia OOP possiamo parlare se la gente non ricorda il proprio codice?))


Immagino che tu non sia un programmatore? Poi ricorda dove eri 2017.07.05 14:55 GMT 00, con chi stavi parlando e di cosa ))

Motivazione: