Текущий архив: 2004.09.05;
Скачать: CL | DM;
Вниз
Убить System.pas Найти похожие ветки
← →
RustiK (2004-08-17 11:41) [40]Спасибо за разъяснительный ответ.
Как я и говорил что я ошибся в названии файла. Мне нужно избавиться от SysUtils.pas. Возможно ли вообще от него избавиться или урезать или заменить?
← →
Sandman25 © (2004-08-17 11:42) [41]Возможно
← →
Anatoly Podgoretsky © (2004-08-17 11:42) [42]Не использовать.
← →
RustiK (2004-08-17 11:44) [43]А как?
Если можно в кратце расскажите.
← →
Sandman25 © (2004-08-17 11:46) [44]Убрать из uses.
Все, на что компилятор будет ругаться, копировать из SysUtils.Pas в RustikSysUtils.pas
← →
Рамиль © (2004-08-17 11:46) [45]не писать
uses SysUtils;
← →
Digitman © (2004-08-17 11:46) [46]
> RustiK (17.08.04 11:44) [43]
> А как?
убери его из USES
убери также косвенные ссылки на ф-ции из этого модуля в иных используемых тобой модулях
и будет тебе столь долгожданное счастье
← →
Юрий Зотов © (2004-08-17 11:47) [47]> RustiK (17.08.04 11:41) [40]
Просто не используйте его и не включайте в Uses. Очень многие функции в SysUtils являются просто удобными оболочками вокруг функций API - значит, вместо них можно напрямую использовать их "первоисточники".
Но 200 Кб Вы на этом тоже не сэкономите. Максимум экономии, которая здесь может получиться - примерно 40 Кб.
← →
RustiK (2004-08-17 11:48) [48]А таких модулей туча, которые коссвенно ссылаются. Как мне их всех перебить? Или удалить все из SysUtils, а потом втсавлять нужные куски кода?
← →
Iconka © (2004-08-17 11:49) [49]И флейм начался с новой силой....
← →
Думкин © (2004-08-17 11:51) [50]> [48] RustiK (17.08.04 11:48)
Вот для писания на АПИ подключаем Windows. Я отключил его и сделал свой uWin. Все что надо - перетащил. И стоило оно того? Нет.
Только для забавы, как песчанный замок на море. Лучше сразу из кирпича(покупного). ИМХО.
← →
Sandman25 © (2004-08-17 11:52) [51]RustiK
Ну да. Избавляетесь от всех ссылок, тем самым переписывая полбиблиотеки Delphi.
← →
Рамиль © (2004-08-17 11:54) [52]Слушай, "пустой" exe с SysUtils занимает около 40 кб, без - 13 кб, следовательно разница в 27 кб, все остальное не компилится, оно тебе надо?
← →
Digitman © (2004-08-17 11:58) [53]ну прямо-таки какое-то садо-мазо)
← →
Digitman © (2004-08-17 12:02) [54]РустиК, вероятно, хочит засандалить по всему Интернету свой супер-пупер спамо-виро-трояно-хрензнаетчтоделающий-исполняемый файл размером в 4кб ... а мож умудрится и меньше ... если изуродует из РЕ-заголовок до неузнаваемости)
← →
Anatoly Podgoretsky © (2004-08-17 12:10) [55]RustiK (17.08.04 11:48) [48]
Хочешь кататься, давай и саночки вози.
← →
AlexZ (2004-08-17 12:13) [56]Я всё не стал читать, но скажу своё мнение :)
System.pas подключает компилер автоматически, т.к. его используют другие модули. У Вас же присутствует в проекте,.. ну... скажем Windows.pas, Messages.pas.
Дальше, вижу, речь идёт о SysUtils:
Пустой проект:
Program Not;
begin
end;
весит 10 Кб минимум, SysUtils добавит Кб так... 30. Делфи - не лучший выбор для компактного и быстрого кода.
40 Кб - это очень много, согласен.
>>Кто-то на этом форуме кричал, кто не помню, что отказываясь от system.pas можно сэкономить ~200 кило.
Если Вы вспомнили именно тот случай... Это был я. И я говорил я про Classes.pas. Добавлял он Кб 60. В итоге я всё сделал без него, добавив +1Кб.
← →
Мастер © (2004-08-17 12:17) [57]>AlexZ (17.08.04 12:13) [56]
Делфи - не лучший выбор для компактного и быстрого кода.
За эти слова отвечаешь?
Приведи сравнительную таблицу по скорости работы программ, компилированных другими компиляторами.
← →
Digitman © (2004-08-17 12:18) [58]
> Делфи - не лучший выбор для .. быстрого кода
никто не заставляет использовать якобы "тормозную" VCL ... а если VCL таки не используется, то никакие претензии по "быстроте кода" не могут иметь сколь-либо серьезные основания
← →
Anatoly Podgoretsky © (2004-08-17 12:25) [59]AlexZ (17.08.04 12:13) [56]
Эта, в танцевальное училище не поступать.
← →
AlexZ (2004-08-17 12:46) [60]>>За эти слова отвечаешь?
Да.
И тут дело даже не в вцл. Сам компилятор делает код насыщеным коллами (call). И я убедился, когда делал програмку на делфе (только c модулями Windows & Messages - чистые Апи.) и позже на Асме. Впрочем, это и не удивительно.
Anatoly Podgoretsky © (17.08.04 12:25) [59]
Немного не понял ответа.
← →
Digitman © (2004-08-17 12:49) [61]
> AlexZ (17.08.04 12:46) [60]
> Сам компилятор делает код насыщеным
> коллами (call)
ты на in-line-функции что ли намекаешь, которых якобы нет в делфи ?
← →
AlexZ (2004-08-17 12:51) [62]Ну если только инлайн ассемблер использовать - тогда скорость будет. Под словом "скорость" я имел ввиду скорость работы приложения, а не затраченное время на его изготовление ;)
← →
Digitman © (2004-08-17 12:59) [63]
> Под словом "скорость" я имел ввиду скорость работы приложения,
> а не затраченное время на его изготовление
понятно что лошадь, но только с рогами !)
но, с другой стороны, Делфи "заточена" именно под быструю разработку бизнес-приложений, а это и есть по сути минимальное "затраченное время на его изготовление"
> если только инлайн ассемблер использовать - тогда скорость
> будет
на современных процессорах с конв.архитектурой и блоком предсказания ветвлений разница между колами с непоср.адресацией (а их - подавляющее большинство) и аналогичными по конечному алгоритму инлайн-вставками настолько эфемерна, что рассматривать ее всерьез вряд ли стоит
← →
AlexZ (2004-08-17 13:18) [64]Digitman © (17.08.04 12:49) [61]
Вы опередили мой следующий ответ. Я когда его потил, вашего ответе не видел.
----
Вообще, бесполезно о чём-то спорить. Т.к. есть, были и будут три основных языка - Паскаль, С и Асм. Я лишь сказал человеку, который воюет за каждый Кб, что в Делфе он этого не получит.
Скорость: только Асм вставки. Ведь самому можно сделать такое, чего в любом Unit"е нету. Т.е. заточить свою реализацию. Ну а про компилер уже не буду говорить. Кто писал на Асм, тот поймёт.
Всё. Ато спорить можно бесконца. В этой теме мой последний пост.
← →
Skyle © (2004-08-17 13:20) [65]
> Паскаль, С и Асм
Сейчас возможно кого-то будут пинать...
Возможно ногами.... :)
← →
Kerk © (2004-08-17 13:37) [66]перекомпиляция System.pas - это отдельный геморрой, ибо он сам на себя неявно ссылается.. :)
← →
Aleksandr. (2004-08-17 13:49) [67]RustiK :
Я в свое время, не будучи умным, тоже озадачился программками с маленьким размером - у любого начавшего с Паскаля, такой зуд имеется. Пару дней я убил на переделку модуля classes - точнее, создания двух своих модулей из classes и contnrs - в один я вынес свой TList, а во второй - TStream (у меня много прикладных программок, работающих консольно и юзающих только листы и потоки). Ниче получилось, приятно, красиво, быстро. А потом скомпилял, и обнаружил, что выиграл что-то около 40 килограмм размера экзешника. А для упаковки upx-пакером вообще ноль без палочки. Классы свои я, конечно, оставил, но понял на будущее, что игра свеч не стоит, а для визуальных программок так лучше KOL"a ничего и не придумаешь. А вообще - переходи на Делфи .Net. Я с ней уже два месяца контачу - экзешники выглядят офигительно - 5-6 кг против 500-600 в Д7! (только вот без MS FrameWork хрен ты запустишь такую программу).
← →
Anatoly Podgoretsky © (2004-08-17 14:13) [68]Aleksandr. (17.08.04 13:49) [67]
5-6 это потому что ты умеешь писать, а у других в несколько мегабайт.
Страницы: 1 2 вся ветка
Текущий архив: 2004.09.05;
Скачать: CL | DM;
Память: 0.6 MB
Время: 0.059 c