OOP vs. programación procedimental - página 29

 
Dmitiry Ananiev:

Mira los pedidos en el mercado de autónomos. Difícilmente algún pedido no se puede cumplir en un día. Se dedica más tiempo a acordar los términos de referencia, a responder a las preguntas del cliente, a darle la vuelta y a aceptar/entregar el trabajo. Por supuesto, es agradable poder escribir el mismo tetris en MQL5. Pero este lenguaje está diseñado para otra cosa.
El Asistente de Asesoramiento Experto basado en estrategias preparadas es un ejemplo de uso de la POO. Lo intenté una vez y lo entendí. Pero ahora no recuerdo cómo funciona todo.
El estilo procesal describe todo con claridad. ¿Adivina cuándo cambiaré completamente a OOP?

Otro ejemplo: tienes un cuadro sobre el que quieres escribir. ¿Usarás el simple Paint o cargarás Photoshop con cientos de plugins? Sí, siempre que te descargues Photoshop, lo haré todo en Paint con la 5ª vez y me olvidaré de esta tarea.



Personalmente sólo utilizaré MT5 aunque sólo sea por su rapidez. Para el desarrollo uso MT4 porque es más fácil ver cuándo y dónde se ralentiza un programa. OOP o no, MT5 sigue siendo mucho más genial.
 
Реter Konow:
Bueno, personalmente sólo voy a trabajar en MT5 al menos por su velocidad. Para el desarrollo uso MT4, porque es más fácil ver cuándo y en qué se retrasa el programa. OOP o no, MT5 sigue siendo mucho más genial.
Suena como: Yo tengo un Cruzak y mi mujer un Smart. El Cruzak es una cosa. Por eso cojo el Smart para hacer la compra durante el día y una cerveza por la noche. Porque es más fácil de aparcar, no consume mucha gasolina, no necesita muchas reparaciones.
 
Реter Konow:

Es una broma, pero en mi imaginación, tengo tal visión de este enfoque que no puedo superarlo. Parece que, con el tiempo, podría poner en marcha un mecanismo de auto-mejora del sistema. Si hago un núcleo lógico y hago que genere aleatoriamente diferentes mecanismos. Entonces, sólo hay que seleccionar y elegir los adecuados. Luego, molerlos un poco... Gracias al núcleo, se pueden hacer cosas increíbles.


Lo siento, Peter :) pero es más fácil, o más bien más cómodo, hacerlo con clases.

 
Dmitiry Ananiev:
Suena como: Yo tengo un Cruzak y mi mujer un Smart. El Cruzak es una cosa. Por eso conduzco el Smart para hacer la compra durante el día y tomar una cerveza por la noche. Porque es más fácil de aparcar, no consume mucha gasolina, no necesita muchas reparaciones.

Ingenioso. Pero para mí, la verdadera ventaja ahora mismo es la lentitud de MT4. Hasta que termine de desarrollarlo. Sólo puedo ver más claramente cuando es lento... No es broma.

Entonces no lo necesitaré, joder).

 
Dmitiry Ananiev:

Mira los pedidos de los autónomos. Rara vez se puede realizar un pedido en un día. Se invierte más tiempo en acordar los términos de referencia, responder a las preguntas del cliente, meter las narices y aceptar/entregar el trabajo.

...
El estilo procesal hace que todo quede claro. ¿Adivina cuándo cambiaré completamente a OOP?

Otro ejemplo: tienes una foto y hay que ponerle un título. ¿Utilizar un simple Paint o Photoshop con un centenar de plugins? Para cuando descargue Photoshop, habré hecho todo en Paint por quinta vez y me olvidaré de esta tarea.

Si no estuvieras escribiendo código desechable - entonces el uso de OOP estaría realmente justificado. Por ejemplo, yo utilizo la OOP porque me resulta demasiado caro detectar errores en los productos ya lanzados.
 
Nikolai Semko:

Lo siento, Pyotr :) pero es más fácil, o más bien más cómodo, hacerlo con clases.

Te lo dije, "a cada uno lo suyo"). Soy creativo, así que se me ocurren esas ideas). ¿Qué hay de malo en eso?

 

¿Cómo se explica que muchos corredores llamen popular a la plataforma MQL4, pero no apliquen este epíteto a MQL5?

Obviamente, la diferencia está en la POO, que es mucho más difícil de dominar y, como consecuencia, en la depuración y el soporte del código escrito.

Para los programadores profesionales este requisito no es crítico, al contrario, en realidad se benefician del "cuanto más complicado, mejor" por muchas razones, ya que a los programadores se les suele pagar por horas, y con un código complejo simplemente se puede ganar más por horas. También hace más difícil que otros programadores descifren y entiendan el código, lo que aumenta la dependencia del empleador de ese programador, etc.

También es obvio que para el comercio, donde el pago o el tiempo propio suele ser por proyecto y no por hora, esta regla no funciona.

 
Vasiliy Sokolov:
Si no estuvieras escribiendo código único, entonces la POO estaría realmente justificada. Por ejemplo, yo utilizo la OOP porque me resulta demasiado caro detectar errores en los productos ya lanzados.

Estoy totalmente de acuerdo. Esta es la principal ventaja de la POO.

 
Andrei:

..

Obviamente, toda la diferencia está en la POO, que es mucho más difícil de dominar y, como consecuencia, en la depuración y el soporte del código escrito.

Para los programadores profesionales este requisito no es crítico, al contrario, les resulta más rentable "cuanto más complejo mejor" por muchas razones, ya que normalmente a los programadores se les paga por horas y se puede ganar más por horas en código complejo. Además, dificulta que otros programadores descifren y entiendan el código, lo que aumenta la dependencia del empresario de este programador, etc.

...

Estás muy equivocado. El empresario no es el idiota que usted trata de pintar. Nadie pagará más, especialmente por un código enredado. Todo el mundo quiere ahorrar dinero: poner en marcha un proyecto rápidamente, gastar el mínimo de horas de trabajo y, al mismo tiempo, conseguir un sistema que funcione y que no requiera reescrituras y modificaciones. Por eso exigen conocer este mismo OOP.
 
Andrei:

¿Cómo se explica que muchos corredores llamen popular a la plataforma MQL4, pero no apliquen este epíteto a MQL5?

Obviamente, la diferencia está en la POO, que es mucho más difícil de dominar y, como consecuencia, en la depuración y el mantenimiento del código escrito.


Pero en MQL5 también se puede programar en estilo procedimental. Esto no es C#. Pero la plataforma tiene muchas ventajas que no tiene MT4. ¿No significan nada estas ventajas?