Помогите! - страница 6

 
На ишака навесили вьюк весом 40 кг, потом заметили, что забыли флягу весом в 1кг, подумаешь, на 1 кг., больше на 1 кг. меньше - не проблема, повесили и флягу. Таким образом навешивая на ишака по грузу в один килограмм (такая совсем незначительная фигня для ишака) его можно нагрузить грузом бесконечного размера. 
 
Andrey Khatimlianskii:

Я думаю, что "об этом" тут говорили только вы, Дима )

Люди обсуждали рабочий код, в котором if - самая быстрая часть.

 

Почти мгновенно работает switch, можно использовать его для универсального советника. Только я смысла не вижу.. 

Началось все отсюда

Лучше не свич, а ООП полиморфизм.

 
Dmitry Fedoseev:
На ишака навесили вьюк весом 40 кг, потом заметили, что забыли флягу весом в 1кг, подумаешь, на 1 кг., больше на 1 кг. меньше - не проблема, повесили и флягу. Таким образом навешивая на ишака по грузу в один килограмм (такая совсем незначительная фигня для ишака) его можно нагрузить грузом бесконечного размера. 

Незачот.

На ишака вешают пустые фляги весом 20 грамм. И ему действительно пофиг.

Тяжело ему от воды, которую туда наливают (тяжелых функций). 

 

Dmitry Fedoseev:

Началось все отсюда

Лучше не свич, а ООП полиморфизм.

Вот конкретно в том примере можно хоть 10 ифов вставить, и на скорость работы (также как на скорость тестирования и оптимизации) это никак не повлияет (<1% замедление).

Потому что в соседней функции будет перебор ордеров или хотя бы запрос ОрдерсТотал, а в другой - проверка времени с учетом сдвига по GMT. 

 
Andrey Khatimlianskii:

... 

Вот конкретно в том примере можно хоть 10 ифов вставить, и на скорость работы (также как на скорость тестирования и оптимизации) это никак не повлияет (<1% замедление).

Потому что в соседней функции будет перебор ордеров или хотя бы запрос ОрдерсТотал, а в другой - проверка времени с учетом сдвига по GMT. 

В том месте вставить, в другом вставить, еще в одном и т.д... и ишак взлетит.

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

Вы мне тут все так все объясняете, как будто я не видел ни одного советника, не что бы написать хоть одного. Даже оказывается не умею правильно написать условие if.

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

 
Dmitry Fedoseev:

Не, ну не надо было самому начинать умничать:

 Мы же просто подхватили! ;)

 
Снижает и поэтому незачем пихать if туда где можно без него обойтись.
 

Да перестаньте уже. Самая быстрая прога это один OnTick(); и всё.

Всё что содержит больше кода - то будет медленней. И если необходимо думать о скорости, то уж точно не о if.

if может быть критичен в коде OpenCL, где создаёт разветвление логики, что приводит к рассинхронизации потоков. Но опять же, тормозит здесь не сам по себе if, а то, что потоки работают с разной скоростью из за разной логики. И даже в этом случае нужно стремится не сокращать количество if-ов, а "единообразить" операции в блоках if и else, пример:

вместо

if(a>0.0)
  a = b;

нужно использовать

if(a>0.0)
  a = b;
else
  a = a;

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

 
Dmitry Fedoseev:

В том месте вставить, в другом вставить, еще в одном и т.д... и ишак взлетит.

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

Вы мне тут все так все объясняете, как будто я не видел ни одного советника, не что бы написать хоть одного. Даже оказывается не умею правильно написать условие if.

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

До абсурда можно довести не только программу. Что вы собственно и делаете.

Если как вы говорите умеете, то наверно должны понимать принцип роботы if оператора. Или нет?

И не надо сравнивать if оператор с ишаком, ишак в мозгу сидит и ахинею пишет. Разбавляя, свою не компетентность if-ами.

 
Да впихивайте впихивайте вы свои любимые ифы куда угодно
 
Joo Zepper:

вместо

нужно использовать


А почем не наоборот?