Амбициозные идеи !!! - страница 6

 
TheXpert:

Ты мыслишь категориями амебы :) .

"We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%" (с) Дональд Кнут

Раз четвертый уже на этом форуме цитирую.

Цитировать и копипастить ума много не надо, даже обезъяну этому можно попытаться обучить. :)

А вот объяснить свою мысль осмысленно - это сложнее и уже претендует на уровень гомосапиенса.

Ну так как, хотите попытаться свою мысль изложить осмысленно или пока еще уровень развития не тот? :)

 
HIDDEN:

Уже пару лет меня периодически мучает идея реализации мультивалютного тестера стратегий.

Видел несколько реализаций, читал идеи, даже смотрел MT5.

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

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

Рекомендую еще раз попробовать MetaTrader 5 в 64 битной версии:

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

Оптимизация кода требует от программиста минимального понимания того насколько будет тот или иной фрагмент кода ресурсоемкой в плане производимых элементарных операций (сложение, умножение, обращение к памяти, вычисление адреса и т.п). Без этого никакая оптимизация в принципе невозможна и никакой даже самый лучший компилятор против такого горе-программиста будет бессилен. Вроде вещь очевидная, но вижу что и это для многих может оказаться большой новостью. :)



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

Вы зациклились на мнимой эффективности Вашей простой адресации, примеров, которых я приводил и основы написания эффективного кода   - Вы не в состоянии прочитать и понять, давайте из области 2х2:

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

1. написать ф-цию для умножения 2-х двухмерных матриц

2. написать ф-цию для умножения 3-х мерных матриц

3. а можете универсальную ф-цию - X * Y? 

4. а можете найти обратную матрицу? 

- обычный программист пишет ф-цию которая умножит массив X[2] [2] * Y[2][2]

- с Вашей "логикой" - пишем обалденно быстрый код который будет состоять из массива X[4] и Y[4]  и ф-цию для умножения X[4] * Y[4] и обязательно ф-цию преобразования глупых входных/выходных данных в виде двухмерного массива в правильные данные - одномерный массив, и садимся  за изучение матричной алгебры с написанием эквивалентных преобразований для одномерных матриц

- первый программист начинает добавлять универсальность в свою ф-цию, что Вы будете делать даже не представляю (тяжеленько будет с карандашом проверить умножение двадцатимерных матриц переведенных в одномерный массив), ну и наконец появляется программист с ООП, который задает базовый класс - матрица и оформляет метод умножение матриц;

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

вот если сумеете осознать во что превратится код при обычном программировании, при ООП, ну и при Ваших "светлых идеях" (Ваш код лавинообразно вырастет в объемах уже со второй задачи и ни о какой эффективности уже и речи не идет) - поймете, что такое эффективно программировать, ах, да совсем забыл - ошибочки по работе с матрицами тож нужно контролировать - нужно еще немного поработать )))))))))))))))

то с чем Вы пытаетесь спорить - уже пройдено многолетним опытом программистов всего мира, поверьте, что никакой Бил Гейтс не сможет заставить программировать на ООП если это не эффективно, все зависит от перспектив развития проекта - если проект будет расширяться - без ООП будет утеряно время и будет написан обширный код без гибкости и универсальности

 
Andrei01:

Ну нужно путать и смешивать в гремучую смесь разные вещи. :)

Одно это источник информации который объективен, а другое - это приемник, который субъективен ибо не всегда способен воспринять всю информацию, а только её часть.

ничего подобного. Информация имеет смысл только в приложении к конкретному источнику и приемнику. Какой-то "абсолютной" информации для нас не может быть, т.к. потрогав или измерив ее, мы тут же становимся субъективным приемником. Отсюда следует, что доказать или опровергнуть наличие объективной информации в каком-то источнике принципиально невозможно - это все равно что спорить о наличии/отсутствии бога.

Да и само понятие информации, вообще говоря, возникает только тогда, когда выбран как источник, так и приемник.

 
alsu:

ничего подобного. Информация имеет смысл только в приложении к конкретному источнику и приемнику. Какой-то "абсолютной" информации для нас не может быть, т.к. потрогав или измерив ее, мы тут же становимся субъективным приемником.

Ну дык разумеется что всегда есть какой-то источник информации. По другому информацию рассматривать бессмысленно.

Информация без источника существовать просто не может. :) Ну а если есть объективный источник информации то и информация из него будет объективная сама по себе. Приемник же информации будет всегда субективен, но может приблизится к объективности с бесконечной точностью если воспримет всю информацию без искажения.

 
IgorM:

- с Вашей "логикой" - пишем обалденно быстрый код который будет состоять из массива X[4] и Y[4] и ф-цию для умножения X[4] * Y[4] и обязательно ф-цию преобразования глупых входных/выходных данных в виде двухмерного массива в правильные данные - одномерный массив, и садимся за изучение матричной алгебры с написанием эквивалентных преобразований для одномерных матриц

К сожалению Вы так и не поняли простую вещь которую я вам пытался донести, но вижу бесполезно ибо если сантехник (для примера) вдруг решил временно переквалифицироваться в программиста, то он всё равно так и остался сантехником и мыслит как сантехник у которого главное это длина проложенных труб на местности. :)

Критерий оптимальности программы это не длина кода, а количество операций для конкретной задачи. Если от Вас требуется умножать только двумерную матрицу, а Вы будете реализовывать гораздо более общие и никому ненужные случаи то разумеется что никто Вам за такую самодеятельность благодарность не объявит.

 
Andrei01: Приемник же информации будет всегда субективен, но может приблизится к объективности с бесконечной точностью если воспримет всю информацию без искажения.

Субъективность приемника не в том, что он неточно принимает то, что идет из источника, а в том, что этот входящий для него поток можно интерпретировать по-разному. Один и тот же поток битов может быть абсолютно разной информацией, понимаете?

Andrei01, извините, но я не понимаю, для чего Вы что-то пишете тут. Для роборейтинга, что ли? Ваши посты воспринимаются как некий флудошум, не содержащий полезного сигнала для этой ветки. Пожалуйста, фильтруйте исходящий поток: люди все же читают, а не роботы...

 
Mathemat:

1. Субъективность приемника не в том, что он неточно принимает то, что идет из источника, а в том, что этот входящий для него поток можно интерпретировать по-разному. Один и тот же поток битов может быть абсолютно разной информацией, понимаете?

Andrei01, извините, но я не понимаю, для чего Вы что-то пишете тут. Для роборейтинга, что ли? Ваши посты воспринимаются как некий флудошум, не содержащий полезного сигнала для этой ветки. Пожалуйста, фильтруйте исходящий поток - люди все же читают, а не роботы...

1. То что приемник интерпретирует информацию по-разному, в зависимости от любых своих причин, как раз и говорит о том что он субъективен.

2. Mathemat, к сожалению смысла во этой фразе мне уловить не удалось. Вы внесли в неё слишком много избыточного шума. :) Это кстати пример того, что и источник информации тоже может флудить то есть сознательно генерировать заведомо бессмысленную информацию. :)

 
Andrei01:

К сожалению Вы так и не поняли простую вещь которую я вам пытался донести, но вижу бесполезно ибо если сантехник (для примера) решил временно переквалифицироваться в программиста, то он всё равно так и остался сантехником и мыслит как сантехник у которого главное это длина проложенных труб на местности. :)

Критерий оптимальности программы это не длина кода, а количество операций для конкретной задачи. Если от Вас требуется умножать только двумерную матрицу, а Вы будете реализовывать гораздо более общие и никому ненужные случаи то разумеется что никто Вам за такую самодеятельность благодарность не объявит.


к сожалению, Вы мыслите только в части решения "задачи сходу и в лоб", а о будущих изменениях алгоритма функционирования программы Вы не задумываетесь

решение задачи с ходу - это узкоспециализированные задачи, они или решаются в течении 20-30 минут из-за простоты реализации, или эти задачи реализованы уже в более масштабных проектах

С-4 уже говорил, что алгоритмы торговли на основе MACD уходят в прошлое, не буду повторяться

ЗЫ: займитесь изучением хоть каких либо наработок по оптимизации кода, если у Вас это больной вопрос, вот люди наработали материал: http://www.realcoding.net/article/rubric/code_optim?page=6 

еще раз  прощаюсь в этом топике, не вижу необходимости повторяться, кто хотел понять что такое ООП и эффективное написание программ, думаю поймет или самостоятельно нагуглит

 
Andrei01: 1. То что приемник интерпретирует информацию по-разному, в зависимости от любых своих причин, как раз и говорит о том что он субъективен.

Опять не так. Интерпретация входящего потока - это задача того, кто стоит над приемником и задает условия Игры. Приемник железный, он перемалывает информацию по алгоритму, заданному для него Мастером Игры. В этом смысле он совершенно и строго объективен, ибо это тупая железка. А субъективен Мастер.

Вам известно, что информация может определяться по-разному, в зависимости от контекста решаемой задачи?

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