My approach. The core is the engine. - page 134

 
Реter Konow:

Quite right. The OOP is a wrapper. It helps someone to think and organise their thoughts. Like tram rails help trams run on the streets. I'm in an "off-road" car.))

Sorry, you're riding a donkey. Backwards and forwards.
 
Реter Konow:

Quite right. The OOP is a wrapper. It helps someone to think and organise their thoughts. Like tram rails help trams run on the streets. I'm driving an "off-road car".))

Yep, clearly observe this SUV in the form of the 21st column of the table.

 
Nikolai Semko:
Peter, you wouldn't be worth the price if it were not for your protesting behavior towards studying modern technologies that millions of programmers have suffered from.
You program like a Chinese (May the Chinese forgive me). A programmer who worked for many years in an American firm that employed a lot of Indians and Chinese people told me very accurately about the Chinese: "... they don't program, they bullshit. They don't program, they bullshit. No one understands how they did it in such a short time, but it works, even though it puffs, whistles and vibrates with the feeling that it's about to fall apart...".

Nikolai, let's talk substantively. Take, for example, CCanvas class that I dealt with before. So, I took it and removed all its functions. Made them independent of the class wrapper. How is it worse now? It became easier to work with them. I made an animation using these functions. Before that, I hardly ever saw any animations with this class.

So why this wrapper?

You're drawing on a canvas too. You could just call a specific function and draw. But no. You wrap and wrap and wrap. So explain to me, why?

 
Реter Konow:

Nikolay, let's talk about the subject. Take CCanvas class, for example, which I have already dealt with. So, I took out all functions from it. Made them independent from the class wrapper. How is it worse now? It became easier to work with them. I made an animation using these functions. Before that, I hardly ever saw any animations with this class.

So why this wrapper?

You're drawing on a canvas too. You could just call a specific function and draw. But no. You wrap and wrap and wrap. So explain - why?

 
Реter Konow:

This is actually what happens to the table when you insert the names of other elements into it.

GROUP,"Orders table", IS_TABLE,  

__,     T_HEADER, "#",W,20,_,H,30, C_HEADER, "Order",     C_HEADER, "Opening Time",W,90, C_HEADER, "Type", W,90,  C_HEADER, "Volume", W,90,  C_HEADER, "Symbol", W,90, 
                               C_HEADER, "Price",       W,90,    
                               C_HEADER, "Comission",   W,90, C_HEADER, "Swap", W,90,  C_HEADER, "PnL",    W,90,  C_HEADER, "Close",  W,40,

__,     R_HEADER,"1", CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A,     
__,     R_HEADER,"2",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"3",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"4",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"5",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"6",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"7",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"8",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"9",CELL, A,   C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"10",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"11",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"12",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"13",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"14",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"15",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"16",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"17",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"18",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"19",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"20",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
__,     R_HEADER,"21",CELL, A,  C_LIST, A,  H_SLIDER, A,   CHECKBOX, A,  P_BAR, A,   S_EDIT, A, CELL, A, R_BUTTON, A, CELL, A,  I_BUTTON, A, 
 
END_GROUP,
//------------------------------------

Peter, this code is inside your engine, as I understand it?

What prevents you from making this array dynamic, so that you can add new rows to the table as needed without any restrictions?

 
Vasiliy Sokolov:

Peter, is this code inside your engine?

What prevents you from making this array dynamic, so you can add new rows to the table as needed without any restrictions?

No. It's external code, which is written for the constructor. That reproduces the table. Then I click the button and all the connection files and the boot kernel for the engine are printed. Then everything works.

 
Реter Konow:

No. This is external code written for the constructor. That reproduces the table. Then I press the button and all the connection files and the boot kernel for the engine are printed. Then everything works.

There's another problem there. The limitation of kernel elements and parameters. I know what the solution should be. Just haven't had time to do it yet.

 
You can also understand San Sanych - that he is against the PLO. He is, what, probably 70 or more years old - it's hard to change your mindset. But here? What is the problem? Not just resisting, but also clowning around.
 
Vasiliy Sokolov:


Vasily, is your table working?

 
Реter Konow:

Vasiliy, is your table working?

I haven't checked it yet.