а что с форумом случилось? - страница 6

 
Yuriy Asaulenko:

Это означает только, что вам достаточно инструментов, которые предоставляет MT-MQL. Ну, и хорошо.

Я ж спросил, а каких инструментов не хватает ?

 
Georgiy Merts:

Я ж спросил, а каких инструментов не хватает ?

ООП. Его и не хватает.

В MQL у вас есть некоторая часть инструментов, естественно их можно перенести в С++ и пр. Но сама концепция ООП МТ не поддерживается. МТ - замкнутая экосистема. Применение ООП как концепции в МТ невозможно.

 
Yuriy Asaulenko:

MQL концепцию ООП поддерживает в оч. ограниченном виде, в основном, только в части некоторых инструментов. МТ-MQL замкнутая, самодостаточная (по мнению разработчиков) конструкция (экосистема - по выражению разработчиков). Обсуждение или применение концепции ООП в рамках МТ-MQL абсолютно бесперспективно. А в рамках - классы-наследование-и пр. неинтересно.


А вы-то представляете что такое программирование ?  Что-то сомневаюсь.  :)

 
Petros Shatakhtsyan:


А вы-то представляете что такое программирование ?  Что-то сомневаюсь.  :)

Не представляю.

 
Без Интерфейсов как в Java нет полноценного ООП в этом MQL5. Есть только некая пародия...
 
Georgiy Merts:

Не, ну выгоду-то можно и поиметь, скажем, что-то писать, комментируя свои действия, показывая свои коды через Shared Projects, а желающие - пусть дополняют.  У меня сомнение лишь в том, что эти самые желающие будут.

Не понял, в чем тут выгода. Обучение за деньги? Эта тема давно сдохла, никто не желает платить. А мне зарплату никто уже 8.5 лет не платит, в свободном полете )) 

 
Roffild:
Без Интерфейсов как в Java нет полноценного ООП в этом MQL5. Есть только некая пародия...
//--- базовый интерфейс для описания животных 
interface IAnimal 
  { 
//--- методы интерфейса по умолчанию имеют public-доступ 
   void Sound();  // звук, который издает животное 
  }; 
//+------------------------------------------------------------------+ 
//|  класс CCat наследуется от интерфейса IAnimal                    | 
//+------------------------------------------------------------------+ 
class CCat : public IAnimal 
  { 
public: 
                     CCat() { Print("Cat was born"); } 
                    ~CCat() { Print("Cat is dead");  } 
   //--- реализуем метод Sound интерфейса IAnimal 
   void Sound(){ Print("meou"); } 
  }; 
//+------------------------------------------------------------------+ 
//|  класс CDog наследуется от интерфейса IAnimal                    | 
//+------------------------------------------------------------------+ 
class CDog : public IAnimal 
  { 
public: 
                     CDog() { Print("Dog was born"); } 
                    ~CDog() { Print("Dog is dead");  } 
   //--- реализуем метод Sound интерфейса IAnimal 
   void Sound(){ Print("guaf"); } 
  }; 
//+------------------------------------------------------------------+ 
//| Script program start function                                    | 
//+------------------------------------------------------------------+ 
void OnStart() 
  { 
//--- массив указателей на объекты типа IAnimal 
   IAnimal *animals[2]; 
//--- породим потомков IAnimal и сохраним указатели на них в массив     
   animals[0]=new CCat; 
   animals[1]=new CDog; 
//--- вызовем метод Sound() базового интерфейса IAnimal для каждого потомка   
   for(int i=0;i<ArraySize(animals);++i) 
      animals[i].Sound(); 
//--- удалим объекты 
   for(int i=0;i<ArraySize(animals);++i) 
      delete animals[i]; 
//--- результат выполнения 
/* 
   Cat was born 
   Dog was born 
   meou 
   guaf 
   Cat is dead 
   Dog is dead 
*/ 
  }
 
Alexey Volchanskiy:

Не понял, в чем тут выгода. Обучение за деньги? Эта тема давно сдохла, никто не желает платить. А мне зарплату никто уже 8.5 лет не платит, в свободном полете )) 

Ну, вы даете. Обучение... Какое обучение? Все эти классы-наследования и пр. изложены на 20 стр какого-нибудь "С++ для чайников". Кто в состоянии прочитать - тот и сам научится, кто не в состоянии - никакое обучение не поможет. И это давно и задолго до нас хорошо известно. 

Обучение редко приносит плоды кому–либо, кроме тех, кто предрасположен к нему, но им оно почти не нужно. (с) Д. Гиббонс
 
Yuriy Asaulenko:

ООП. Его и не хватает.

В MQL у вас есть некоторая часть инструментов, естественно их можно перенести в С++ и пр. Но сама концепция ООП МТ не поддерживается. МТ - замкнутая экосистема. Применение ООП как концепции в МТ невозможно.

что-то странное ты говоришь, причем абсолютно без подтверждения

 
Alexey Volchanskiy:

что-то странное ты говоришь, причем абсолютно без подтверждения

Если считаете, что классы-наследование и их применение это и есть ООП, тогда действительно говорю странное. Да, применение классов удобно, но это еще не ООП, а только один из инструментов.

ЗЫ Помните как называлась одна из первых версий С++? Си с классами - про ООП вообще ни слова.))