Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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
1-1092739496
CAMCOH
2004-08-17 14:44
2004.09.05
Canvas. Помогите разобратся.


8-1087475591
mr. Lamer
2004-06-17 16:33
2004.09.05
Качественное сжатие


3-1092225110
Barcebel
2004-08-11 15:51
2004.09.05
Извлечение данных посредством ADODataSet


14-1092661715
nasty
2004-08-16 17:08
2004.09.05
hypertext applications


3-1092027517
46_55_41_44
2004-08-09 08:58
2004.09.05
Как сбросить AutoIncrement?