Programmation OOP vs programmation procédurale - page 2

 
Реter Konow:
Tu sais, derrière tous ces termes et ce code OOP, je ne vois pas le problème que tu as résolu. Quel est le but de tout cela ? Veuillez le décrire et je vous proposerai ma solution. Nous pouvons alors les comparer selon tous les critères possibles.

Erm... Je ne comprends pas bien l'essentiel.

La tâche consistait à séparer le CT du terminal. Le code doit être compilé sur les deux plateformes sans modifications. La super tâche - transférer tout le TS écrit à WealhtLab Developer en écrivant seulement les classes de travail avec le serveur de commerce.

 
George Merts:

Pourquoi "inutile" ? Très utile.

Mais comment peut-on comparer la "facilité de prise en charge" dans la pratique ?

Disons qu'il s'agit d'un code écrit en un seul bloc et d'un code divisé en parties fonctionnelles - l'introduction de changements dans les deux cas est absolument identique. La seule différence est que dans le premier cas, il faut se souvenir de tous les liens qui seront affectés par la modification et les prendre en compte. Dans le second cas, puisque l'unité n'a accès qu'aux liens dont elle a besoin pour fonctionner - la modification affectera tous les liens disponibles. Vous n'avez pas besoin de vous souvenir de quoi que ce soit - vous corrigez tout ce qui est disponible pour le bloc que vous modifiez en séquence.

Comment estimer la différence ici ? La quantité de travail est exactement la même !

Résolvons un problème spécifique et comparons.
 
George Merts:

Erm... Je n'ai pas bien compris.

L'objectif était de séparer le CT du terminal. Le code doit être compilé sur les deux plateformes sans aucune modification. La super tâche - transférer tous les TS écrits à WealhtLab Developer en écrivant seulement les classes pour travailler avec le serveur de commerce.

La tâche consiste-t-elle à compiler sur les deux plateformes ? Probablement seulement lorsqu'on utilise la POO. Sérieusement, quel est le défi dans tout ça ? Décrire ce que c'est ?
 
Реter Konow:
Résolvons un problème particulier et comparons.

Critère de comparaison ?

Je soutiens que la POO est nécessaire pour faciliter la maintenance et les modifications du code fini. Vous, tel que je le comprends (parlons de "vous"), affirmez que ce n'est pas plus compliqué (et peut-être même plus simple) dans votre code. Comment pouvons-nous comparer ?

Votre seule phrase sur "vous vous souvenez de tout" introduit déjà une inégalité. Disons que mon processeur marchand consiste en 39 fichiers et 270 kb de code. Si les développeurs changent les protocoles d'interaction avec un serveur de commerce - je crains que sans structuration et classes OOP-système il sera très difficile pour moi de trouver tous les endroits, qui doivent être affectés par ce changement, et de modifier le code, de sorte que, d'abord, les blocs travaillant dans MT4 ne seraient pas affectés et, deuxièmement, le TS écrit ne serait pas "sentir" ce changement.

L'ensemble du système OOP limite pour moi la possibilité de faire des erreurs, précisément parce que je ne me souviens pas de tout. Et si je me souvenais de tout, comme vous le faites, il n'y aurait probablement pas besoin de construire toutes ces interfaces virtuelles...

 
C'est comme une voiture avec un manuel ou un automatique. C'est plus pratique dans un manuel.
 
George Merts:

Erm... Je ne comprends pas bien.

La tâche consistait à séparer le TS du terminal. Le code doit être compilé sur les deux plateformes sans modifications. La tâche principale - transférer tous les TS écrits à WealhtLab Developer en écrivant seulement les classes pour travailler avec le serveur de commerce.


C'est un Sharp, même les tableaux sont configurés différemment. Bien sûr, si j'attire fxsaber avec ses définitions folles, je serai probablement capable d'égaler MQL5 et WealhtLab )))).

 
Dmitiry Ananiev:
C'est comme une voiture manuelle ou automatique. C'est plus pratique avec une automatique. C'est plus pratique sur un manuel.

Qu'est-ce qui est le plus pratique ? Est-il plus pratique de brûler l'embrayage dans la circulation ?

J'ai conduit un Tiguan, et le bouton start/stop, c'est vraiment pratique.

 
Alexey Volchanskiy:

C'est un Sharp, même les tableaux sont configurés différemment. Bien sûr, si vous faites participer fxsaber avec ses définitions folles, vous pouvez probablement égaler MQL5 et WealhtLab )))).

Eh bien, c'est exactement pourquoi - je ne travaille jamais avec des tableaux. En exclusivité avec les classes d'héritiers sagrau.

Je ne suis pas sûr de pouvoir un jour mettre la main sur un tel code universel qui compilerait à partir de WLD sans modifications, mais j'aimerais pouvoir...

P.S. Êtes-vous également enthousiasmé par le travail de fxsaber ? :)))

 
George Merts:

C'est exactement la raison pour laquelle - je ne travaille jamais avec des tableaux. En exclusivité avec les classes Sagrau.

Je ne suis pas sûr de mettre la main sur un tel code universel pour compiler sans modification avec WLD, mais j'aimerais pouvoir...


En fait, WL est en train de mourir, aucune nouvelle version depuis un an et demi. Et comme le dit Vic.

Les tests sont effectués sur un seulcœur, ce qui rend le processus long sur les ordinateurs modernes dotés de plusieurs cœurs.

Центральный процессор | Wikiwand
Центральный процессор | Wikiwand
  • www.wikiwand.com
You can help our automatic cover photo selection by reporting an unsuitable photo.
 
George Merts:

C'est exactement la raison pour laquelle - je ne travaille jamais avec des tableaux. Seulement avec les classes dérivées de sargau.

Je ne suis pas sûr de pouvoir mettre la main sur un code universel tel qu'il compilerait avec WLD sans modifications, mais j'aimerais pouvoir...

P.S. Êtes-vous également enthousiasmé par le travail de fxsaber ? :)))

Ouais, si j'étais une fille, je jouirais, juste le seigneur de toutes les définitions )))) Tu te souviens de Lord of the Storm ? ))