Уже отмечал в прошлые разы, повторю для новой публики.
Объективно существуют стандарты де-факто для стилей. Сейчас (и последние лет 10) их только 2 основных для языков с синтаксисом а-ля C++/Java. Эти стили озвучил Комбинатор. Они используются в подавляющем большинстве компаний софтовой индустрии. Они себя зарекомендовали, они обкатаны и обсосаны со всех сторон, они логичны, понятны и привычны подавляющему большинству профессиональных кодеров.
Пытаться от себя продвинуть что-то другое, без преимуществ и только с изъянами - это бесперпективняк. Не признавать эти изъяны - не более чем упрямство. Они объективны. Понятно, что сама MQ привыкла и подсела на этот стиль, но это всего лишь еще один баг. Так иногда в софте отказываются исправлять заведомые баги, ссылаясь на то, что мол уже есть куча сторонних продуктов, которые завязались на это ошибочное поведение. На самом деле во всех таких случаях следует искать решение, позволяющее сохранить старое поведение для обратной совместимости, но внести исправления с помощью так называемого "protocol upgrade" или fork-а. В контексте стилей есть такое простое решение - настриваемый стилизатор. Его можно был уже сделать сотню раз.
В стиле MQ проблемы кстати касаются не только расстановки скобок, но и стиля комментариев - они по определению не могут преобладать над кодом, что сейчас наблюдается в стиле MQ.
Вот кусочек кода из MACD Sample.mq5 по-ихнему и по-моему:
Styler5 -|-Мой стиль--------|----------bool CSampleExpert::LongModified()-|-bool CSampleExpert::LongModified(){-|-{bool res=false;-|-bool res =false;//--- check for trailing stop -|- //--- check for trailing stopif(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 positionif(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. Такие же требования по названиям классов - чтобы начинались с буквы Си. Хорошо, что здравый смысл победил и больше такие требования не выдвигались.
void f()
{
// some codeif (condition)
{
// some code
}
}
или на крайняк K&R
void f() {
// some codeif (condition) {
// some code
}
}
Эти два стиля с огромным перевесом лидируют над остальными. У обоих четко читается вложенность кода. Видно чему принадлежит блок, никаких проблем с форматированием.
у вас стиль недоGNU, недостатки я озвучил выше. У GNU хотя бы отступ от фигурных и до фигурных одинаковый.
Оказывается, я всегда использовал стиль Олмана! K&R - раздражает почему-то, хоть видел, что топ-кодеры олимпиадники этот стиль очень любят.
Уже отмечал в прошлые разы, повторю для новой публики.
Объективно существуют стандарты де-факто для стилей. Сейчас (и последние лет 10) их только 2 основных для языков с синтаксисом а-ля C++/Java. Эти стили озвучил Комбинатор. Они используются в подавляющем большинстве компаний софтовой индустрии. Они себя зарекомендовали, они обкатаны и обсосаны со всех сторон, они логичны, понятны и привычны подавляющему большинству профессиональных кодеров.
Пытаться от себя продвинуть что-то другое, без преимуществ и только с изъянами - это бесперпективняк. Не признавать эти изъяны - не более чем упрямство. Они объективны. Понятно, что сама MQ привыкла и подсела на этот стиль, но это всего лишь еще один баг. Так иногда в софте отказываются исправлять заведомые баги, ссылаясь на то, что мол уже есть куча сторонних продуктов, которые завязались на это ошибочное поведение. На самом деле во всех таких случаях следует искать решение, позволяющее сохранить старое поведение для обратной совместимости, но внести исправления с помощью так называемого "protocol upgrade" или fork-а. В контексте стилей есть такое простое решение - настриваемый стилизатор. Его можно был уже сделать сотню раз.
В стиле MQ проблемы кстати касаются не только расстановки скобок, но и стиля комментариев - они по определению не могут преобладать над кодом, что сейчас наблюдается в стиле MQ.
Дополню про комменты - попробуйте обработать их любыми системами для создания автодококументации, вас будет ждать разочарование.
Рош, в чем проблема с рвотными позывами? У меня тоже стиль MQ их вызывает, и что — сказав это, я кому-то нахамлю?
Форматируйте кодобазу как вашей душе угодно, это можно вообще на автомате делать при загрузке кода, не напрягая кодера. Я как сейчас помню: пишу код, стилизую под MQ, сохраняю под новым именем и загружаю на проверку. Потом отменяю стилизацию и пишу дальше. Ну не бред ли?
Нет ресурсов на настраиваемый стилизатор — понятно. Никто же не подгоняет. Но зачем брать крест, и идти всем рассказывать, что ваша вера — самая правильная (абсолютно без аргументов!)???
)) ну то что вы хамить умеете я уже понял, а вот обоснования вашей точки зрения или опровержения моей я так и не увидел.
Белинский точно не стал бы так выражаться в публичном месте. Так что претензии не принимаются.
И никакого оправдания "блевотному рефлексу" ваши отссылки к авторитетам не могут дать.
Это код репликтоида.
Я говорил о пробелах после запятой разделяющей параметры и знаки
Это читается лучше
чем это
Так я привел пример от противного ))
Вот пример моего кода, прям из живого
***
Уже отмечал в прошлые разы, повторю для новой публики.
Объективно существуют стандарты де-факто для стилей. Сейчас (и последние лет 10) их только 2 основных для языков с синтаксисом а-ля C++/Java. Эти стили озвучил Комбинатор. Они используются в подавляющем большинстве компаний софтовой индустрии. Они себя зарекомендовали, они обкатаны и обсосаны со всех сторон, они логичны, понятны и привычны подавляющему большинству профессиональных кодеров.
Пытаться от себя продвинуть что-то другое, без преимуществ и только с изъянами - это бесперпективняк. Не признавать эти изъяны - не более чем упрямство. Они объективны. Понятно, что сама MQ привыкла и подсела на этот стиль, но это всего лишь еще один баг. Так иногда в софте отказываются исправлять заведомые баги, ссылаясь на то, что мол уже есть куча сторонних продуктов, которые завязались на это ошибочное поведение. На самом деле во всех таких случаях следует искать решение, позволяющее сохранить старое поведение для обратной совместимости, но внести исправления с помощью так называемого "protocol upgrade" или fork-а. В контексте стилей есть такое простое решение - настриваемый стилизатор. Его можно был уже сделать сотню раз.
В стиле MQ проблемы кстати касаются не только расстановки скобок, но и стиля комментариев - они по определению не могут преобладать над кодом, что сейчас наблюдается в стиле MQ.
Так я привел пример от противного ))
Вот пример моего кода, прям из живого
***
Тогда о чём умничал?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Вот это стиль! :)
Sergey Kravchuk, 2009.11.24 11:27
Вот кусочек кода из MACD Sample.mq5 по-ихнему и по-моему:
Нигде не учился стилю, но вариант справа "Мой стиль", как будто я сам написал. Слева - по какой-то причине гораздо тяжелее читать. Не уверен, что дело в привычке.
форум, кодобаза должны наполняться кодом в едином оформлении.
Ни в коем случае! Было время, когда требовали для публикации изменить стиль названия методов/полей. Например, вместо this.i, писать this.m_i. Такие же требования по названиям классов - чтобы начинались с буквы Си. Хорошо, что здравый смысл победил и больше такие требования не выдвигались.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Предложение для удобства использования MetaEditor
Комбинатор, 2017.09.28 15:00
Я использую стиль Олмана.
или на крайняк K&R
Эти два стиля с огромным перевесом лидируют над остальными. У обоих четко читается вложенность кода. Видно чему принадлежит блок, никаких проблем с форматированием.
у вас стиль недоGNU, недостатки я озвучил выше. У GNU хотя бы отступ от фигурных и до фигурных одинаковый.
Оказывается, я всегда использовал стиль Олмана! K&R - раздражает почему-то, хоть видел, что топ-кодеры олимпиадники этот стиль очень любят.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Предложение для удобства использования MetaEditor
Комбинатор, 2017.09.28 15:15
Раз уж пошла такая пьянка, другая неудобная вещь в МЕ это регистрозависимый автокомплит.
Во всех нормальных редакторах он регистронезависимый и это конкретно облегчает жизнь.
Можете относиться ко мне как вам угодно. Я не стодолларовая купюра, чтобы всем нравиться.
Главное что я озвучил мнение которое было услышано и возможно будет даже принято во внимание.
Уже отмечал в прошлые разы, повторю для новой публики.
Объективно существуют стандарты де-факто для стилей. Сейчас (и последние лет 10) их только 2 основных для языков с синтаксисом а-ля C++/Java. Эти стили озвучил Комбинатор. Они используются в подавляющем большинстве компаний софтовой индустрии. Они себя зарекомендовали, они обкатаны и обсосаны со всех сторон, они логичны, понятны и привычны подавляющему большинству профессиональных кодеров.
Пытаться от себя продвинуть что-то другое, без преимуществ и только с изъянами - это бесперпективняк. Не признавать эти изъяны - не более чем упрямство. Они объективны. Понятно, что сама MQ привыкла и подсела на этот стиль, но это всего лишь еще один баг. Так иногда в софте отказываются исправлять заведомые баги, ссылаясь на то, что мол уже есть куча сторонних продуктов, которые завязались на это ошибочное поведение. На самом деле во всех таких случаях следует искать решение, позволяющее сохранить старое поведение для обратной совместимости, но внести исправления с помощью так называемого "protocol upgrade" или fork-а. В контексте стилей есть такое простое решение - настриваемый стилизатор. Его можно был уже сделать сотню раз.
В стиле MQ проблемы кстати касаются не только расстановки скобок, но и стиля комментариев - они по определению не могут преобладать над кодом, что сейчас наблюдается в стиле MQ.
Дополню про комменты - попробуйте обработать их любыми системами для создания автодококументации, вас будет ждать разочарование.
Тогда о чём умничал?
бр-р-р-р, я привел пример кода_без_пробелов_и_запятых
подчеркивания убрать
бр-р-р-р, я привел пример кода_без_пробелов_и_запятых
подчеркивания убрать
Вы же позволяете себе "блевать".
Рош, в чем проблема с рвотными позывами? У меня тоже стиль MQ их вызывает, и что — сказав это, я кому-то нахамлю?
Форматируйте кодобазу как вашей душе угодно, это можно вообще на автомате делать при загрузке кода, не напрягая кодера. Я как сейчас помню: пишу код, стилизую под MQ, сохраняю под новым именем и загружаю на проверку. Потом отменяю стилизацию и пишу дальше. Ну не бред ли?
Нет ресурсов на настраиваемый стилизатор — понятно. Никто же не подгоняет.
Но зачем брать крест, и идти всем рассказывать, что ваша вера — самая правильная (абсолютно без аргументов!)???