OOP vs procedural programming - page 28

 
Реter Konow:
It's just one element out of more than 30. Moreover, it's one of the smallest. But, amazingly, I read it like an open book. I have no trouble explaining what it represents. Another strange thing is that such elements are created very fast, by copying other similar elements and making some corrections. It looks scary, but in fact it's very easy.

Well, it proves once again that with your excellent memory - you don't have to bother with creating a class system, and with encapsulation. Indeed, everything can be accessed globally, and without any function overloading with polymorphism.

The object, in my opinion, is really very complex.

 
Реter Konow:
This is just one item out of over 30. Moreover, one of the smallest. But the amazing thing is - I read it like an open book. I have no trouble explaining what it represents. Another strange thing is that such elements are created very fast, by copying other similar elements and making some corrections. It looks scary, but in fact it's very easy.

Lots of different things... It must be necessary, and appropriate to the objectives... And what are the aims and objectives?

It would be interesting to see some screenshots of the charts, as it looks in its final form.

 
George Merts:

Well, it proves once again that with your excellent memory - you don't have to bother with creating a class system, and with encapsulation. Indeed, everything can be accessed globally, and without any function overloading with polymorphism.

The object, in my opinion, is really very complex.

I won't argue. Perhaps when trying to prove something I forget that my judgement is subjective. Hence, your choice of approach is more reasonable to you than mine, and mine is more reasonable to me than yours.

The subject is over for me.

Back to work, good luck to all.

 
Олег avtomat:

Lots of different things... It must be necessary, and appropriate to the objectives... And what are the aims and objectives?

It would be interesting to see some screenshots of the charts, as it looks in its final form.

It's not hard to see.
 

No offence please, but this is some kind of surrealist celebration.

The ability to control 10 boxes of matches for a micro house is contrasted with building skyscrapers.

That's how the self-sustaining and self-promoting claims about MQL4 being easier and MQL5 being completely, utterly difficult are born in the forums. Professional developers simply do not enter such discussions.

 
Реter Konow:
It's not hard to see.

Demonstrate it.

 
Renat Fatkhullin:

No offence please, but this is some kind of surrealist celebration.

The ability to control 10 boxes of matches for a micro house is contrasted with building skyscrapers.

That's how the self-sustaining and self-promoting statements about MQL4 being easier and MQL5 being completely, utterly difficult are born in the forums. Professional developers simply do not enter such discussions.


I completely agree with you there.

The usability and readability of the given example code from the outside for another developer or for yourself, but after a while equals 0.

 
Renat Fatkhullin:

No offence please, but this is some kind of surrealist celebration.

The ability to control 10 boxes of matches for a micro house is contrasted with building skyscrapers.

That's how the self-sustaining and self-promoting claims about MQL4 being easier and MQL5 being completely, utterly difficult are born in the forums. Professional developers simply do not enter such discussions.

I personally understand that my approach may seem surreal. Of course, this is not a professional development in the classical sense, it's more like free creativity. At first glance, the provided example looks awful, but that is approximately how program codes looked to us at the beginning of our programming studies. The difficulty of learning and working with this approach is just as dependent on mastering it as in the case of OOP. It's difficult to estimate its performance on the example of one person. If the team worked then it would be possible to draw conclusions. So far I am alone.
 

In essence, the opponents of OOP are right in their basic premise:

  1. Formal knowledge of OOP provides no advantage in software development.
  2. OOP by itself does not solve any of the problems of a complex system.
  3. Complexity does not disappear when OOP is applied, it is simply transferred from one place in the program to another.

OOP can be compared to nunchakus - it's a deadly weapon in the hands of a master but a person who picks it up for the first time is more likely to be injured himself than use it as intended. The reasoning of the opponents is quite clear: PLO is really a harmful tool for them, so why try to teach them this self-mutilation?

One is reminded of the movie Kill Bill, where Uma Thurman was beaten with her bare hands by a sensei, even though she was carrying a samurai sword:


 
Renat Fatkhullin:

No offence please, but this is some kind of surrealist celebration.

The ability to control 10 boxes of matches for a micro house is contrasted with building skyscrapers.

That's how the forums produce self-sustaining and self-referential statements about MQL4 being easier, and MQL5 being totally, utterly difficult. Professional developers simply do not enter such discussions.

Take a look at freelance orders. Rarely a single order cannot be implemented in a day. More time is spent on agreeing to the TOR, answering the customer's questions, turning them upside down and accepting/delivering the work. Of course, it is nice to be able to write the same Tetris in MQL5. But this language is designed for something else.
The Expert Advisor Wizard based on ready-made strategies is an example of using OOP. I tried to do it once and I understood it. But now I don't remember how it all works.
The procedural style describes everything clearly. Guess when I will switch completely to OOP ?

Another example: you have a picture that needs a caption on it. Will you use simple Paint or will you load Photoshop with a hundred plugins? By the time you load Photoshop, I'll have done everything in Paint for the 5th time and forgotten about this task.



Reason: