Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

Оптимизация кода

Страницы: Пред. 1 2
Оптимизация кода
Цитата
motorway11 пишет:
У меня, кстати, в одном скрипте идет около 100 вызовов функции замены строки, так как там надо заменять разные комбинации символов типа *(, +(, -( на что-то другое.

А Регекспы нельзя использовать? smile;)
Наверно, можно, но я в них не силен. Только если кого-нибудь попросить написать. Там просто около 10 случаев if, и в каждом из них нужно выполнять какие-то замены. Тоже получится крепкий орешек smile:D
Accende lumen sensibus, infude ainorem corbidus!
Цитата
motorway11 пишет:
Но все-таки из этого можно извлечь умную мысль - сперва надо оптимизировать только наиболее критичные участки кода. И измерить, что же дает "затык" в производительности

Это верно, лучшее враг хорошего. ©Народная мудрость
http://rpdn.ru/forum/22/26/171/#message171
Поддерживаю слова Артёма Кулинича и не заморачиваюсь с оптимизацией.

Для работы со строками использую набор модулей AcedStrings из AcedUtils.

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

Использую CnPack для улучшения среды Delphi.

Получается, я оптимизирую только удобство работы, а не сам код.
Если вычислений не слишком много (если это не какая-нибудь научная программа, где использован очень сложный матметод), то ИМХО лучше создавать программы с уклоном в читабельность кода и объем занимаемой памяти.
Если программа вообще расчитана на рядового пользователя, то именно ОП является решающим критерием на мой взгляд.
Особенно это чувствуется, когда понаоткроют много-много окон, а пользуются ими на 15%.
Тут уже скорость вычислений не так принципиальна, а вот системные требования очень важны.
Вопрос решен http://rpdn.ru/forum/22/26/171/#message171
Изменено: Евгений Ульяров - 17.10.2010 11:01:31 (опечатка)
c:\linux\bin
c:\linux\etc\X11\xorg.conf
d:\home\user
Страшный сон линуксоида.
Страницы: Пред. 1 2
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)