Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Если ПО падает - значит это хреново написанное ПО, а не отсутствие исключений.
А Если ексепшинить, то заэксепшенить всю программу надо, чего уж тут, ведь мало ли чего случится то может. Заэксепшенить всю программу, распечатать код на А4 бумаге и положить в ящик стола - так надёжнее, ничего не случится ни с кодом ни с деньгами на счете...
Такого падучего ПО полно в Маркете. Я летом проводил исследования, был удивлен, сколько советников за сотни $ падают в тестере на 2-3-й день прогона.
Теперь про эксепшены. Вы пишете на чем-нибудь, кроме MQL? Вероятно нет, иначе не было бы написанного выше.
Вот живой недавний пример, правда на Матлабе, но не суть.
Надо было считать котировки в формате csv и преобразовать их в числовой формат Матлаб. Парсить надо строку в таком формате
Время парсится встроенной матлабовской функцией, аналог StringToTime в MQL, числа double аналогом StringToDouble.
И все было бы замечательно, но в файле по неизвестным причинам очень-очень редко встречаются мелкие бяки типа
По одной бяке на 5000 строк. Если проверять строку на бяки, скорость работы программы падает в 1000 раз. Если не проверять, падает программа на матлабовской функции преобразования. В данном случае выгодно завернуть код в try и в случае исключения просто пропустить строку. Понятен смысл?
И не надо важно повторять, что программа должна быть без ошибок, это и ежу понятно. Бывают ситуации, когда эксепшены выгоднее.
Хреново, что тут 98% кроме MQL ничего не знают и знать не хотят...
А отсутствуют исключения скорее не от отсутствия потребностей, а из-за сложности их реализации. В тех-же компиляторах C++ exception`ы перестали смертельно тормозить не так давно на моей памяти.
Отсутствие исключение не позволяет на полную использовать ОО и писать более компактный удобный код. К примеру foo().bar().baz() оно и сейчас возможно, но вытащить оттуда ошибку "сущий ад и израИль".
А отсутствуют исключения скорее не от отсутствия потребностей, а из-за сложности их реализации. В тех-же компиляторах C++ exception`ы перестали смертельно тормозить не так давно на моей памяти.
Я того же мнения. Тем более, тут по идее многозадачный ранттайм, как там откатывать стек вызовов в случае эксепшена... хз. Хотя для нас устройство рантайма тайна, но все равно, думаю, сложнее, чем в обычной программе.
Такого падучего ПО полно в Маркете. Я летом проводил исследования, был удивлен, сколько советников за сотни $ падают в тестере на 2-3-й день прогона.
Теперь про эксепшены. Вы пишете на чем-нибудь, кроме MQL? Вероятно нет, иначе не было бы написанного выше.
Вот живой недавний пример, правда на Матлабе, но не суть.
Надо было считать котировки в формате csv и преобразовать их в числовой формат Матлаб. Парсить надо строку в таком формате
Время парсится встроенной матлабовской функцией, аналог StringToTime в MQL, числа double аналогом StringToDouble.
И все было бы замечательно, но в файле по неизвестным причинам очень-очень редко встречаются мелкие бяки типа
По одной бяке на 5000 строк. Если проверять строку на бяки, скорость работы программы падает в 1000 раз. Если не проверять, падает программа на матлабовской функции преобразования. В данном случае выгодно завернуть код в try и в случае исключения просто пропустить строку. Понятен смысл?
И не надо важно повторять, что программа должна быть без ошибок, это и ежу понятно. Бывают ситуации, когда эксепшены выгоднее.
Хреново, что тут 98% кроме MQL ничего не знают и знать не хотят...
И не надо думать, что Вы выше 98% здешних в программировании. Так думать и тем более заявлять по меньшей мере нескромно, а по большей - глупо.
Битые данные использовать не проверяя? И Вы говорите, что разрабатываете софт для рынка? Хе хе....
Битые данные использовать не проверяя? И Вы говорите, что разрабатываете софт для рынка? Хе хе....
И не надо думать, что Вы выше 98% здешних в программировании. Так думать и тем более заявлять по меньшей мере нескромно, а по большей - глупо.
С дукаса данные, умненький вы наш. Написал же по русски - если проверять, скорость падает в 1000 раз.
Андрей, к сожалению, вы не компетентны в данном вопросе.
Полагаю, Вашей компетентности вполне хватит, что бы объяснить, как это можно сделать.
По моему мнению, тут все верно сказано (конечно битою строку лучше попробовать восстановить - но не суть важно):
Если проверять строку на бяки, скорость работы программы Матлаб падает в 1000 раз.
Если не проверять, падает программа на матлабовской функции преобразования.
В данном случае выгодно завернуть код в try и в случае исключения просто пропустить строку.
Понятен смысл?
И не надо важно повторять, что программа должна быть без ошибок, это и ежу понятно. Бывают ситуации, когда эксепшены выгоднее.