OOP vs programmazione procedurale - pagina 29

 
Dmitiry Ananiev:

Guarda gli ordini sul mercato dei freelance. Quasi nessun ordine non può essere evaso in un giorno. Si passa più tempo a concordare le TOR, a rispondere alle domande del cliente, a metterle sottosopra e ad accettare/consegnare il lavoro. Naturalmente, è bello poter scrivere lo stesso tetris in MQL5. Ma questo linguaggio è progettato per qualcos'altro.
L'Expert Advisor Wizard basato su strategie già pronte è un esempio di utilizzo di OOP. Ho provato a farlo una volta e l'ho capito. Ma ora non ricordo come funziona.
Lo stile procedurale descrive tutto chiaramente. Indovina quando passerò completamente a OOP?

Un altro esempio: avete un'immagine su cui volete scrivere. Userete il semplice Paint o caricherete Photoshop con centinaia di plugin? Sì, purché scarichiate Photoshop, farò tutto in Paint con la quinta volta e dimenticherò questo compito.



Personalmente userò solo MT5 se non altro per la sua velocità. Per lo sviluppo uso MT4 perché è più facile vedere quando e dove un programma rallenta. OOP o no, MT5 è ancora molto più figo.
 
Реter Konow:
Beh, personalmente lavorerò solo su MT5 almeno per la sua velocità. Per lo sviluppo uso MT4, perché è più facile vedere quando e su cosa il programma è in ritardo. OOP o no, MT5 è ancora molto più figo.
Sembra: Io ho un Cruzak e mia moglie ha una Smart. Il Cruzak è una cosa. Ecco perché guido la Smart per fare la spesa durante il giorno e una birra la sera. Perché è più facile da parcheggiare, non consuma molta benzina, non ha bisogno di molte riparazioni.
 
Реter Konow:

Stai scherzando, ma nella mia immaginazione, ho una tale visione di questo approccio che non riesco a superarlo. Sembra che, col tempo, potrei essere in grado di avviare un meccanismo di auto-miglioramento del sistema. Se faccio un kernel logico e lo faccio generare casualmente diversi meccanismi. Poi basta fare un po' di selezione e scegliere quelli giusti. Poi macinarli un po'... grazie al kernel, si possono fare cose incredibili.


Scusa, Peter :) ma è più facile, o meglio più comodo, farlo con le classi.

 
Dmitiry Ananiev:
Sembra: Io ho un Cruzak e mia moglie ha una Smart. Il Cruzak è una cosa. Ecco perché guido la Smart per fare la spesa durante il giorno e una birra la sera. Perché è più facile da parcheggiare, non consuma molto gas, non ha bisogno di molte riparazioni.

Spiritoso. Ma per me, il vero vantaggio in questo momento è la lentezza di MT4. Finché non finisco di svilupparlo. Posso solo vedere più chiaramente quando è lento... Non scherziamo.

Allora non ne avrò bisogno, cazzo).

 
Dmitiry Ananiev:

Guarda gli ordini dei freelance. Raramente un ordine può essere realizzato in un giorno. Si passa più tempo a concordare i termini di riferimento, a rispondere alle domande del cliente, a ficcare il naso e ad accettare/consegnare il lavoro.

...
Lo stile procedurale rende tutto chiaro. Indovina quando passerò completamente a OOP?

Un altro esempio: hai una foto, ha bisogno di una didascalia. Usare un semplice Paint o Photoshop con un centinaio di plugin? Per quando avrete scaricato Photoshop, avrò fatto tutto in Paint per la quinta volta e mi dimenticherò di questo compito.

Se non stessi scrivendo codice usa e getta - allora l'uso di OOP sarebbe davvero giustificato. Per esempio io uso OOP perché è troppo costoso per me catturare i bug nei prodotti già rilasciati.
 
Nikolai Semko:

Scusa, Pyotr :) ma è più facile, o meglio più comodo, farlo con le classi.

Te l'ho detto, "a ciascuno il suo"). Sono creativo, quindi mi vengono queste idee). Cosa c'è di sbagliato in questo?

 

Come possiamo spiegare perché molti broker chiamano popolare la piattaforma MQL4, ma non applicano questo epiteto a MQL5?

Ovviamente, la differenza è nell'OOP, che è molto più difficile da padroneggiare e, di conseguenza, nel debug e nel supporto del codice scritto.

Per i programmatori professionisti questo requisito non è critico, al contrario, in realtà beneficiano del "più è complicato, meglio è" per molte ragioni, poiché i programmatori sono di solito pagati a ore, e con un codice complesso si può semplicemente guadagnare di più a ore. Rende anche più difficile per gli altri programmatori decifrare e capire il codice, il che aumenta la dipendenza del datore di lavoro da quel programmatore, ecc.

È anche ovvio che per scopi commerciali, dove la paga o il tempo proprio è di solito per progetto piuttosto che per ora, questa regola non funziona.

 
Vasiliy Sokolov:
Se non si scrivesse codice unico, allora la OOP sarebbe davvero giustificata. Per esempio, io uso OOP perché è troppo costoso per me catturare i bug nei prodotti già rilasciati.

Sono assolutamente d'accordo. Questo è il vantaggio principale di OOP.

 
Andrei:

..

Ovviamente, tutta la differenza sta nell'OOP, che è molto più difficile da padroneggiare e, di conseguenza, nel debug e nel supporto del codice scritto.

Per i programmatori professionisti questo requisito non è critico, al contrario è più redditizio per loro avere "più complesso è meglio è" per molte ragioni, poiché di solito i programmatori sono pagati a ore e si può guadagnare di più a ore su codice complesso. Inoltre, rende difficile per gli altri programmatori decifrare e capire il codice, il che aumenta la dipendenza del datore di lavoro da questo programmatore, ecc.

...

Ti sbagli di grosso. Il datore di lavoro non è l'idiota che state cercando di dipingere. Nessuno pagherà di più, specialmente per un codice ingarbugliato. Tutti vogliono risparmiare denaro - per implementare un progetto velocemente, per spendere un minimo di ore uomo e allo stesso tempo per ottenere un sistema funzionante che non richieda riscritture e modifiche. Ecco perché chiedono di sapere proprio questo OOP.
 
Andrei:

Come possiamo spiegare perché molti broker chiamano popolare la piattaforma MQL4, ma non applicano questo epiteto a MQL5?

Ovviamente, la differenza è nell'OOP, che è molto più difficile da padroneggiare e, di conseguenza, nel debugging e nel mantenimento del codice scritto.


Ma in MQL5 si può anche programmare in stile procedurale. Questo non è C#. Che dire del fatto che è meno popolare - il tempo passa e il mondo cambia... Ma la piattaforma ha un sacco di vantaggi, che MT4 non ha. Questi vantaggi non significano nulla?