Предложение для удобства использования MetaEditor - страница 6

 
Комбинатор:
)) ну то что вы хамить умеете я уже понял, а вот обоснования вашей точки зрения или опровержения моей я так и не увидел.

Белинский точно не стал бы так выражаться в публичном месте. Так что претензии не принимаются.

И никакого оправдания "блевотному рефлексу" ваши отссылки к авторитетам не могут дать.

 
Alexey Viktorov:

Это код репликтоида.

Я говорил о пробелах после запятой разделяющей параметры и знаки

Это читается лучше

чем это


Так я привел пример от противного ))

Вот пример моего кода, прям из живого

    void SetThresholds(double &thresholdOpen[], double &thresholdClose[])
    {
        int signalIdx = 0;  ///////////////// !!!!!!!!!!!!!!!! пока задано жестко
        CSignalFilter *signal = (CSignalFilter*)m_SignalArr.At(signalIdx);
        if (CheckPointer(signal) != POINTER_INVALID)
        {
            signal.SetThresholds(thresholdOpen, thresholdClose);
        }
    }

***

 

Уже отмечал в прошлые разы, повторю для новой публики.

Объективно существуют стандарты де-факто для стилей. Сейчас (и последние лет 10) их только 2 основных для языков с синтаксисом а-ля C++/Java. Эти стили озвучил Комбинатор. Они используются в подавляющем большинстве компаний софтовой индустрии. Они себя зарекомендовали, они обкатаны и обсосаны со всех сторон, они логичны, понятны и привычны подавляющему большинству профессиональных кодеров.

Пытаться от себя продвинуть что-то другое, без преимуществ и только с изъянами - это бесперпективняк. Не признавать эти изъяны - не более чем упрямство. Они объективны. Понятно, что сама MQ привыкла и подсела на этот стиль, но это всего лишь еще один баг. Так иногда в софте отказываются исправлять заведомые баги, ссылаясь на то, что мол уже есть куча сторонних продуктов, которые завязались на это ошибочное поведение. На самом деле во всех таких случаях следует искать решение, позволяющее сохранить старое поведение для обратной совместимости, но внести исправления с помощью так называемого "protocol upgrade" или fork-а. В контексте стилей есть такое простое решение - настриваемый стилизатор. Его можно был уже сделать сотню раз.

В стиле MQ проблемы кстати касаются не только расстановки скобок, но и стиля комментариев - они по определению не могут преобладать над кодом, что сейчас наблюдается в стиле MQ.

 
Alexey Volchanskiy:

Так я привел пример от противного ))

Вот пример моего кода, прям из живого

***

Тогда о чём умничал?

 
Stanislav Korotky:

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Вот это стиль! :)

Sergey Kravchuk, 2009.11.24 11:27


Вот кусочек кода из MACD Sample.mq5 по-ихнему и по-моему:

Styler5                                  -|- Мой стиль
-------                                  -|- ---------
bool CSampleExpert::LongModified()       -|- bool CSampleExpert::LongModified()
  {                                      -|- {  
   bool res=false;                       -|-   bool res = false;
//--- check for trailing stop            -|-   //--- check for trailing stop
   if(InpTrailingStop>0)                 -|-   if (InpTrailingStop > 0)
     {                                   -|-   { 
      if(m_symbol.Bid()-m_position.Price -|-     if (m_symbol.Bid() - m_position.Pric
        {                                -|-     {
         if(m_position.StopLoss()<m_symb -|-       if (m_position.StopLoss() < m_symb
           {                             -|-       {
            double sl=m_symbol.Bid()-m_a -|-         double sl = m_symbol.Bid() - m_a
            double tp=m_position.TakePro -|-         double tp = m_position.TakeProfi
            //--- modify position        -|-         //--- modify position
            if(m_trade.PositionModify(Sy -|-         if (m_trade.PositionModify(Symbo
               printf("Long position by  -|-           printf("Long position by %s to
            else                         -|-         else
              {                          -|-         {
               printf("Error modifying p -|-           printf("Error modifying positi
               printf("Modify parameters -|-           printf("Modify parameters : SL
              }                          -|-         }
            //--- modified and must exit -|-         //--- modified and must exit fro
            res=true;                    -|-         res = true;
           }                             -|-       }
        }                                -|-     }
     }                                   -|-   } 
//---                                    -|-   //---
   return(res);                          -|-   return(res);
  }                                      -|- }

Нигде не учился стилю, но вариант справа "Мой стиль", как будто я сам написал. Слева - по какой-то причине гораздо тяжелее читать. Не уверен, что дело в привычке.


Vladimir Karputov:
форум, кодобаза должны наполняться кодом в едином оформлении.

Ни в коем случае! Было время, когда требовали для публикации изменить стиль названия методов/полей. Например, вместо this.i, писать this.m_i. Такие же требования по названиям классов - чтобы начинались с буквы Си. Хорошо, что здравый смысл победил и больше такие требования не выдвигались.

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Предложение для удобства использования MetaEditor

Комбинатор, 2017.09.28 15:00

Я использую стиль Олмана.

void f()
{
   // some code
   if (condition)
   {
      // some code
   }
}

или на крайняк K&R

void f() {
   // some code
   if (condition) {
      // some code
   }
}

Эти два стиля с огромным перевесом лидируют над остальными. У обоих четко читается вложенность кода. Видно чему принадлежит блок, никаких проблем с форматированием.

у вас стиль недоGNU, недостатки я озвучил выше. У GNU хотя бы отступ от фигурных и до фигурных одинаковый.

Оказывается, я всегда использовал стиль Олмана! K&R - раздражает почему-то, хоть видел, что топ-кодеры олимпиадники этот стиль очень любят.

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Предложение для удобства использования MetaEditor

Комбинатор, 2017.09.28 15:15

Раз уж пошла такая пьянка, другая неудобная вещь в МЕ это регистрозависимый автокомплит.

Во всех нормальных редакторах он регистронезависимый и это конкретно облегчает жизнь.

Полностью согласен.
 
Rashid Umarov:

Можете относиться ко мне как вам угодно. Я не стодолларовая купюра, чтобы всем нравиться.

Главное что я озвучил мнение которое было услышано и возможно будет даже принято во внимание.

 
Stanislav Korotky:

Уже отмечал в прошлые разы, повторю для новой публики.

Объективно существуют стандарты де-факто для стилей. Сейчас (и последние лет 10) их только 2 основных для языков с синтаксисом а-ля C++/Java. Эти стили озвучил Комбинатор. Они используются в подавляющем большинстве компаний софтовой индустрии. Они себя зарекомендовали, они обкатаны и обсосаны со всех сторон, они логичны, понятны и привычны подавляющему большинству профессиональных кодеров.

Пытаться от себя продвинуть что-то другое, без преимуществ и только с изъянами - это бесперпективняк. Не признавать эти изъяны - не более чем упрямство. Они объективны. Понятно, что сама MQ привыкла и подсела на этот стиль, но это всего лишь еще один баг. Так иногда в софте отказываются исправлять заведомые баги, ссылаясь на то, что мол уже есть куча сторонних продуктов, которые завязались на это ошибочное поведение. На самом деле во всех таких случаях следует искать решение, позволяющее сохранить старое поведение для обратной совместимости, но внести исправления с помощью так называемого "protocol upgrade" или fork-а. В контексте стилей есть такое простое решение - настриваемый стилизатор. Его можно был уже сделать сотню раз.

В стиле MQ проблемы кстати касаются не только расстановки скобок, но и стиля комментариев - они по определению не могут преобладать над кодом, что сейчас наблюдается в стиле MQ.


Дополню про комменты - попробуйте обработать их любыми системами для создания автодококументации, вас будет ждать разочарование. 

 
Alexey Viktorov:

Тогда о чём умничал?


бр-р-р-р, я привел пример кода_без_пробелов_и_запятых  

подчеркивания убрать

 
Alexey Volchanskiy:

бр-р-р-р, я привел пример кода_без_пробелов_и_запятых  

подчеркивания убрать

комутыпровёлпримеркодабезпробелов?отчеготыпадсталом?
 
Rashid Umarov:

Вы же позволяете себе "блевать".

Рош, в чем проблема с рвотными позывами? У меня тоже стиль MQ их вызывает, и что — сказав это, я кому-то нахамлю?

Форматируйте кодобазу как вашей душе угодно, это можно вообще на автомате делать при загрузке кода, не напрягая кодера. Я как сейчас помню: пишу код, стилизую под MQ, сохраняю под новым именем и загружаю на проверку. Потом отменяю стилизацию и пишу дальше. Ну не бред ли?

Нет ресурсов на настраиваемый стилизатор — понятно. Никто же не подгоняет.
Но зачем брать крест, и идти всем рассказывать, что ваша вера — самая правильная (абсолютно без аргументов!)???

Причина обращения: