Обсуждение статьи "Стать хорошим программистом (Часть 1): избавляемся от пяти привычек, чтобы лучше программировать на MQL5" - страница 2
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Интересно...
Интересно...
Стать хорошим программистом (часть 1): избавляемся от пяти привычек, чтобы лучше программировать на MQL5
Это фриланс, заказчики чаще всего вообще не понимают в коде, а отзывы плохие не за качество кода. Написал, прибыль программа не дала, вот и отзыв.
всем (и автору статьи тем более) к прочтению обязательно : 97 Things Every Programmer Should Know
Вариант работающий быстрее и на мой взгляд понятнее:
1. Ошибка в инициализации цикла от количества необходимо отнимать 1, когда делаем обратный перебор.
2. Если не смогли получить позицию по индексу из библиотечной функции нужно выходить из цикла с ошибкой и дальше уже если нужно обработать или повторить функцию заново, иначе есть риск получить недостоверное количество, а вы все таки с финансами работаем, а иногда в позиции бывают большие суммы, а такая мелочь может привести к убытку.
3. Сначала надо проверять переменные bool, далее перечисления ENUM и только после проверять int, double, string, если проверка не удалась то сразу переходить к следующему элементу цикла.
Если делать операции сравнения через &&, то программа будет в обязательном порядке делать проверку каждого условия.
4. Название для функции тоже важно, лучше выглядит PositionsByType, это кажется мелочью, но когда вы заходите использовать эту функцию вам не нужно переходить к библиотеке и ее оглавлению, а достаточно начать вводить стандартное наименование Positions, а у вас будет несколько вариантов вызова PositionsTotal, PositionsByType....
5. Необходимо соблюдать ширину кода, чтобы не использовать горизонтальное пролистывание, так как это сильно снижает читаемость и скорость разработки.
По поводу этого вы ошибаетесь:
Да, Вы меня верно поправили, проверка будет до первого false, главное, чтобы мелкие типы данных были вначале.
В случае если условия состоят из функций, то первой должна стоять самая мелкая и до большой с точки зрения потребляемых ресурсов, но не нарушая логики программы...
Этот прием использую во всех своих проектах, прирост в скорости заметный для тестера в режиме оптимизации.
Это фриланс, заказчики чаще всего вообще не понимают в коде, а отзывы плохие не за качество кода. Написал, прибыль программа не дала, вот и отзыв.