OOP vs procedural programming - page 43

 
Реter Konow:
I agree, intellisense is a very handy thing, but how much of an argument is it? Does intellisense depend on OOP? Wouldn't it work without OOP? As far as I am concerned, a list of all similar function names appears as soon as you start typing on the keyboard. Always.

Try then to take a couple of functions, put them in a wrapper, then plug it into a file and see if intelligence works or not. I'm honestly too lazy to try it all. But even if it will give out the end of the function, you need to enter the beginning of its name, that is, the function name must again be remembered. there is no such thing with the class, write the variable name and after the point the whole list of available functions will pop up.

p.s. it's not like i'm trying to persuade you to use oop, i'm just sitting on the forum right now, seeing what's interesting and i can troll around for a while :)

 
Alexey Oreshkin:

Try then to take a couple of functions, put them in a wrapper, then connect it to the file and see if intelligences will work or not. I'm honestly too lazy to try it all. But even if it will give out the end of the function, for this you must enter the beginning of its name, that is, the function name must again be remembered. This is not the case with the class, write the variable name and after the point the whole list of available functions pops up.

p.s. i'm not trying to persuade you to use oop, i'm just sitting on the forum right now, seeing what's interesting and i can poke around for a while :)

If the function call is in one file and the function itself is in another file and these two files do not have a common connection, then by typing the name in the file with the call, intelligence will not display the name of the function whose definition is in another file not connected to it.
 
Реter Konow:

Sounds like a real argument. But it doesn't make much sense to me. I hardly ever use static variables in functions. It may be important to someone.


We can take a function defining a new bar with a static variable inside which stores the time of the bar. We should try to use this function for more than 1 time within the same candle. All the times except the first one won't work.

 
Alexey Oreshkin:

You can take a function that defines a new bar, where there is a static variable inside that stores the time of the bar. And try to call this function more than 1 time during one candle. All times except for the first one will not work.

Why won't it work?
 
Реter Konow:
Why won't it work?

because the static variable will already be updated. the function will work, but it won't say that a new candle has arrived.

By the way, it is not possible to write java, c#, etc. without an oop.
similarly, 99% of all worthwhile job offers are closed without EoP
You cannot write your own connector to exchanger, or even to ours through plaza2 without AoP.

 
Alexey Oreshkin:

The function will work, but it will not tell you that a new candle has arrived.

By the way, it is impossible to write in java, c#, etc. without oop.
99% of all offers of work as a programmer are closed without OOP.
It is not possible to write any connector to the exchange, even to ours through plaza2.

If a function with a static variable is always called from the same place, the variable will always store its value. In cross calls, the values are not stored.

In such situations, I simply declare a global variable instead of a static one. It's a simple solution.


The second argument is substantial but irrelevant to the development process. You may write it in other languages as well.

I don't know about the connector. Can't you write it in C++ with the procedural approach?

 
Реter Konow:

If a function with a static variable is always called from the same place, the variable will always store its value. In cross-calls, the values are not stored.

In these situations, I simply declare a global variable instead of a static variable. A simple solution. - This is already bad, and secondly, you also have to create these global variables as many times as you call the function in different places.

ReTeg Konow:

The second argument is important, but it has nothing to do with development. You may write in other languages as well.

Who cares which languages to write in. OOP is everywhere.



Konow tag:

I don't know about the connector. Can't one write it in C++ with the procedural approach?


You can write it in any language, but to understand documentation, API, etc., you must be familiar with OOP. By the way, I don't know much about plaza, but if I want to connect to IB in america, how to understand all examples which they give without understanding about OOP?

 
Alexey Oreshkin:


To write in any language, but to understand documentation, API, etc. it is necessary to be familiar with OOP. By the way, you don't know much about plaza, but if you want to connect to IB on america, how to understand all examples, which they give, without understanding of OOP?

It is necessary to know OOP. To use it only when it is really necessary. Not to complicate the life for nothing. Imho.
 
Реter Konow:

....

In such situations, I simply declare a global variable instead of a static one. A simple solution.

...


The example with the static variable was cited as a way of avoiding global variables. But you are asking to return to the Stone Age.

The more independent tasks you can divide the general problem into, the easier it is to solve it, and you suggest going back and lumping everything into one pile. After all, you don't have the imagination to come up with variable names.

 
Renat Fatkhullin:

For the sake of glee - R is written in an absolutely disgusting "all in one garbage can with no differentiation of access" mode. An old-school approach from twenty years ago with no areas of visibility, protection or multisession. I write as if I were the only one. Yes, the project was born under one person by unprofessional developers. It must be rewritten from scratch. At least once.

I had an idea to make a normal interface in R from MQL5, but after digging deeper into it I immediately decided not to integrate it. The system is categorically unable to protect data and sessions.


Renat, one question:

Are these "amateurs" from Consortium R massively implementing R in their commercial products aware of how "disgusting" it is. You'd better give them some light. Otherwise they would be devastated.

You are good at surprising people.

Sorry for being off-topic, I couldn't get past it.

Good luck