Текущий архив: 2006.10.15;
Скачать: CL | DM;
ВнизМинимальный размер программы Найти похожие ветки
← →
ZiTrAX (2006-09-24 21:46) [0]Какой самый минимальный размер проги можно получить в Delphi7 (имеется ввиду пустая прога вида
Programm r;
)?
begin
end.
И можно ли сделать так, чтобы компилятор не использывал по умолчанию модуль System (какая-то директива или что-нибудь в этом роде)?
← →
Virgo_Style © (2006-09-24 21:49) [1]0 байт, если не сохранять и не компилировать. Функциональность при этом ничуть не пострадает ;-)
← →
ZiTrAX (2006-09-24 22:02) [2]
> 0 байт, если не сохранять и не компилировать. Функциональность
> при этом ничуть не пострадает ;-)
Очень смешно lol.
Поставлю вопрос по другому:
можно ли на Delphi написать программу размером в 5кб, не используя exe-пакеры?
← →
Весь в делах (2006-09-24 22:05) [3]нет
← →
SergP © (2006-09-24 22:10) [4]> можно ли на Delphi написать программу размером в 5кб, не
> используя exe-пакеры?
5кб наверное не получится, но 8 кб без сжатия получается без проблем.
← →
Kolan © (2006-09-24 22:15) [5]У Delphi цель - не размер, а скорость разработки.
← →
Gydvin © (2006-09-24 22:22) [6]
> но 8 кб без сжатия получается без пробле
У меня меньше 13,5 не получается
← →
Ketmar © (2006-09-24 22:27) [7]а зачем? возможно, конечно, но -- зачем?
← →
SergP © (2006-09-24 22:33) [8]> [7] Ketmar © (24.09.06 22:27)
> а зачем? возможно, конечно, но -- зачем?
Ну зачем - понятно...
Зачем лишнее пожирание места?
Я не говорю что цель получить 5 кб и т.п., но все же 400 кб для пустой формы - это многовато. К тому же если учесть то что не меняя скорости разработки:
> [5] Kolan © (24.09.06 22:15)
> У Delphi цель - не размер, а скорость разработки.
можно ведь достичь значительного уменьшения размера (например KOL). Почему об этом Борланд не позаботился с самого начала?
← →
Gydvin © (2006-09-24 22:33) [9]автор вирь хочет имхо
← →
SergP © (2006-09-24 22:47) [10]> [6] Gydvin © (24.09.06 22:22)
>
> > но 8 кб без сжатия получается без пробле
>
> У меня меньше 13,5 не получается
D6
program Project2;
{$APPTYPE CONSOLE}
begin
{ TODO -oUser -cConsole Main : Insert code here }
end.
ровно 8 кб.
← →
Ketmar © (2006-09-24 22:48) [11]>[8] SergP(c) 24-Sep-2006, 22:33
>можно ведь достичь значительного уменьшения
>размера (например KOL). Почему об этом Борланд не
>позаботился с самого начала?
"например KOL" лично мне очень неудобен (при всём моём уважении к Владимиру). я уж лучше на чистом API тогда...
а Borland заботились в том числе об универсальности. 400 кил -- это мелочь, учитывая, что VCL способен управляться с огромными проектами.
надо маленькое -- есть альтернативы. тот же asm. или использовать пакеты.
>[9] Gydvin(c) 24-Sep-2006, 22:33
>автор вирь хочет имхо
вряд ли. в принципе, я вот хотел себе индикатор "оставшегося инета". сделал на VCL. ужаснулся, и переписал на API. %-)
← →
SergP © (2006-09-24 22:52) [12]> [11] Ketmar © (24.09.06 22:48)
> >[8] SergP(c) 24-Sep-2006, 22:33
> >можно ведь достичь значительного уменьшения
> >размера (например KOL). Почему об этом Борланд не
> >позаботился с самого начала?
> "например KOL" лично мне очень неудобен (при всём моём уважении
> к Владимиру). я уж лучше на чистом API тогда...
> а Borland заботились в том числе об универсальности. 400
> кил -- это мелочь, учитывая, что VCL способен управляться
> с огромными проектами.
> надо маленькое -- есть альтернативы. тот же asm. или использовать
> пакеты.
Я сам знаю что КОЛ неудобен. Но ИМХО это потому что Борланд о такой возможности первоначально не задумался. Если бы об этом подумали с самого начала и сделали, то ИМХО не было бы разницы в удобстве.
← →
Ketmar © (2006-09-24 22:57) [13]>[12] SergP(c) 24-Sep-2006, 22:52
>Если бы об этом подумали с самого
>начала и сделали, то ИМХО не было бы разницы в
>удобстве.
ну и как ты себе это видишь? что, по-твоему, надо менять? опиши, стало интересно.
← →
SergP © (2006-09-24 23:12) [14]> ну и как ты себе это видишь? что, по-твоему, надо менять?
> опиши, стало интересно.
Компилятор менять надо... Чтобы не включал в exe неиспользуемые куски кода.
Хотя ИМХО на данном этапе это несущественно. Существенно это было раньше, когда была нехватка ресурсов, и скорее всего будет в будущем по той же причине...
← →
Ketmar © (2006-09-24 23:14) [15]>[14] SergP(c) 24-Sep-2006, 23:12
>Компилятор менять надо... Чтобы не включал в exe
>неиспользуемые куски кода.
ты будешь смеяться -- но и так не включает.
← →
Kolan © (2006-09-24 23:14) [16]Как всегда разговор не о чем...
← →
Ketmar © (2006-09-24 23:15) [17]>[16] Kolan(c) 24-Sep-2006, 23:14
>Как всегда разговор не о чем...
ещё как о чём. автор спросил -- ему ответили, что можно. правда, не включать system никак не получится, но это уже частности.
← →
Kolan © (2006-09-24 23:16) [18]
> ещё как о чём.
Каждый раз одно и тоже:
> но все же 400 кб для пустой формы - это многовато.
не нравится переходи на асм.
← →
SergP © (2006-09-24 23:22) [19]> [15] Ketmar © (24.09.06 23:14)
> >[14] SergP(c) 24-Sep-2006, 23:12
> >Компилятор менять надо... Чтобы не включал в exe
> >неиспользуемые куски кода.
> ты будешь смеяться -- но и так не включает.
я смеяться не буду.
Лучше приведу пример:
1.
program Project2;
{$APPTYPE CONSOLE}
begin
{ TODO -oUser -cConsole Main : Insert code here }
end.
2.
program Project2;
{$APPTYPE CONSOLE}
uses SysUtils;
begin
{ TODO -oUser -cConsole Main : Insert code here }
end.
Во втором коде из модуля SysUtils ничего не используется, тем не менее размер exe офигенно увеличился...
← →
SergP © (2006-09-24 23:29) [20]> [18] Kolan © (24.09.06 23:16)
>
> > ещё как о чём.
>
> Каждый раз одно и тоже:
>
> > но все же 400 кб для пустой формы - это многовато.
>
>
> не нравится переходи на асм.
Речь идет не о том нравится или нет... Нравится конечно, так как альтернативы нет. Просто хотелось бы сказать что считать что 400 кб для пустой формы - это дань удобству - неправильно, я не говорю о минимальных размерах которые можно было бы достичь в АСМе, но тем не менее с теми же удобствами можно было сделать чтобы размер exe был процентов на 70-80 меньше.
← →
Ketmar © (2006-09-24 23:38) [21]>[19] SergP(c) 24-Sep-2006, 23:22
>Во втором коде из модуля SysUtils ничего не
>используется
да? вот ведь... совсем-совсем ничего? а если подумать? а если посмотреть на секции initialization и finalization? что, по-прежнему "ничего"? иногда лучше сначала подумать и проверить, а потом писать.
← →
Eraser © (2006-09-24 23:40) [22]> [19] SergP © (24.09.06 23:22)
тем не менее, если убрать uses SysUtils; данная программа будет успешно работать, соответственно виноват не боланд, а кривые руки программиста, разработавшего данную программу.
> Я сам знаю что КОЛ неудобен. Но ИМХО это потому что Борланд
> о такой возможности первоначально не задумался. Если бы
> об этом подумали с самого начала и сделали, то ИМХО не было
> бы разницы в удобстве.
в борланде все сделали правильно. а для разработки программ, не трубющих, или почти не трубующих, UI - используйте либо консоль, либо WinAPI.
а проекты, написанные с пом. KOL и т.п. утилит обречены на провал по одной простой причине - их почти не возможно расширять, особенно человеку не знакомому с этими инструментами, да и на .net перевести проблемотично.
В общем, кому нужны маленькие exe - .NET в руки )
← →
Ketmar © (2006-09-24 23:40) [23]>[20] SergP(c) 24-Sep-2006, 23:29
>было бы достичь в АСМе, но тем не менее с теми же
>удобствами можно было сделать чтобы размер exe
>был процентов на 70-80 меньше.
да? покажи, как. а лучше -- напиши компилятор Object Pascal, который делает это лучше. и не надо говорить "долго", "сложно", "не умею". если "можно" -- то знаешь, как. если напишешь -- вполне можно будет продать. дерзай. сам куплю, если такое появится.
← →
Ketmar © (2006-09-24 23:41) [24]>[22] Eraser(c) 24-Sep-2006, 23:40
>В общем, кому нужны маленькие exe - .NET в руки )
зачем же? компиляция "с пакетами" даёт то же самое. только вот качать меньше, нежели в случае .NET framework. %-)
← →
Германн © (2006-09-24 23:47) [25]
> но все же 400 кб для пустой формы - это многовато.
Дурь. Дельфи не предназначена для разработки "пустых" программ. А вот если программа большая по коду, тогда разница в размере не так уж сильно превышает указанные выше 400, зато время на её создание уйдёт не слишком много по сравнению с WinAPI-шной.
← →
SergP © (2006-09-25 00:02) [26]> да? вот ведь... совсем-совсем ничего? а если подумать? а
> если посмотреть на секции initialization и finalization?
> что, по-прежнему "ничего"? иногда лучше сначала подумать
> и проверить, а потом писать.
Ну вот... Вы сами сказали что включаются секции initialization и finalization. А зачем они мне нужны?
ну вот пример без initialization и finalization:
program Project2;
{$APPTYPE CONSOLE}
uses
Unit1 in "Unit1.pas";
begin
a1;
{ TODO -oUser -cConsole Main : Insert code here }
end.
------------------------------------
unit Unit1;
interface
procedure a1;
implementation
procedure a1;
const
k: array[1..10] of string=("aaaaaaaaaaaaa","ssssssssss",
"aaaaaaaaaaaaa","ssssssssss","aaaaaaaaaaaaa","ssssssssss",
"aaaaaaaaaaaaa","ssssssssss","aaaaaaaaaaaaa","ssssssssss");
begin
//
end;
end.
независимо от того использую я или нет процедуру a1, размер exe 14 c мелочью кб вместо 8 для пустого проекта...
> да? покажи, как. а лучше -- напиши компилятор Object Pascal,
> который делает это лучше. и не надо говорить "долго", "сложно",
> "не умею". если "можно" -- то знаешь, как. если напишешь
> -- вполне можно будет продать. дерзай. сам куплю, если такое
> появится.
Как я понял - это у Вас самый главный аргумент. Типа если я не могу написать лучше, то мне нужно сидеть и не п... вобщем не рассуждать...
← →
Anatoly Podgoretsky © (2006-09-25 00:08) [27]
> но все же 400 кб для пустой формы - это многовато.
Делай не пустую.
← →
Германн © (2006-09-25 00:08) [28]
> ну вот пример без initialization и finalization:
>
> program Project2;
>
> {$APPTYPE CONSOLE}
>
> uses
> Unit1 in "Unit1.pas";
>
> begin
> a1;
> { TODO -oUser -cConsole Main : Insert code here }
> end.
>
> ------------------------------------
>
> unit Unit1;
>
> interface
> procedure a1;
>
> implementation
>
> procedure a1;
> const
> k: array[1..10] of string=("aaaaaaaaaaaaa","ssssssssss",
>
> "aaaaaaaaaaaaa","ssssssssss","aaaaaaaaaaaaa","ssssssssss",
>
> "aaaaaaaaaaaaa","ssssssssss","aaaaaaaaaaaaa","ssssssssss");
>
> begin
> //
> end;
>
> end.
>
>
>
> независимо от того использую я или нет процедуру a1, размер
> exe 14 c мелочью кб вместо 8 для пустого проекта...
Дурь (продолжение).
← →
Vovan#1 (2006-09-25 00:13) [29]
program Small;
begin
end.
17 kb на Turbo Delphi.
Где хвалёное Палладином линкование?
← →
Ketmar © (2006-09-25 00:13) [30]>[26] SergP(c) 25-Sep-2006, 00:02
>Ну вот... Вы сами сказали что включаются секции
>initialization и finalization. А зачем они мне
>нужны?
не нужны -- не использовать SysUtils. если он используется -- значит, нужны. может, всё-таки, лучше жевать?
>Как я понял - это у Вас самый главный аргумент.
>Типа если я не могу написать лучше, то мне нужно
>сидеть и не п... вобщем не рассуждать...
нет. не самый главный. это аргумент только для тех, кто, пардон, ерунду городит.
← →
Ketmar © (2006-09-25 00:14) [31]>[29] Vovan#1 25-Sep-2006, 00:13
>17 kb на Turbo Delphi.
>Где хвалёное Палладином линкование?
советую заглянуть в Sys*.pas, и удивиться, сколько там кода включается. не нравится -- можно порезать эти модули. но лучше не надо.
← →
SergP © (2006-09-25 00:14) [32]> [25] Германн © (24.09.06 23:47)
>
> > но все же 400 кб для пустой формы - это многовато.
>
> Дурь. Дельфи не предназначена для разработки "пустых" программ.
> А вот если программа большая по коду, тогда разница в размере
> не так уж сильно превышает указанные выше 400, зато время
> на её создание уйдёт не слишком много по сравнению с WinAPI-
> шной.
Я не говорю о VCL vs WinAPI. Тут и так все понятно...
Как я понял, все здесь считают что невозможно было создать Delphi так чтобы она создавала exe более экономично без потери удобства?
← →
Vovan#1 (2006-09-25 00:17) [33]>советую заглянуть в Sys*.pas, и удивиться, сколько там кода включается. не нравится -- можно порезать эти модули. но лучше не надо.
Линкование где? Где смарт-технолоджис???
← →
Германн © (2006-09-25 00:20) [34]
> Как я понял, все здесь считают что невозможно было создать
> Delphi так чтобы она создавала exe более экономично без
> потери удобства?
>
В обцем и целом - да.
← →
Ketmar © (2006-09-25 00:22) [35]>[33] Vovan#1 25-Sep-2006, 00:17
метла, метла. только она спасёт ОРД. купить в ближайшем хозмагазине, и занятся полезной деятельностью.
← →
SergP © (2006-09-25 00:22) [36]> не нужны -- не использовать SysUtils. если он используется
> -- значит, нужны. может, всё-таки, лучше жевать?
Ну допустим он мне нужен. Допустим я из него буду использовать какую-нить одну ф-цию или про-дуру, или даже тип который описан в этом модуле и для чего не требуются секции initialization и finalization. Т.е. модуль мне нужен, но из него я использую мелочь, а компилятор навключает мне в exe все что нужно и не нужно...
← →
Ketmar © (2006-09-25 00:26) [37]>[36] SergP(c) 25-Sep-2006, 00:22
>Ну допустим он мне нужен. Допустим я из него буду
>использовать какую-нить одну ф-цию или про-дуру,
достань и оформи отдельным модулем. ребята из борланда резонно предполагают, что если используешь -- то тебе нужен подобный сервис. не нужен -- достань всё, что надо.
← →
SergP © (2006-09-25 00:29) [38]> [34] Германн © (25.09.06 00:20)
>
> > Как я понял, все здесь считают что невозможно было создать
>
> > Delphi так чтобы она создавала exe более экономично без
>
> > потери удобства?
> >
>
> В обцем и целом - да.
Ну вот это то чего я хотел услышать. Следовательно мне здесь никого не переспорить (возможно даже что потому что я дурак и ничего не понимаю). Постараюсь воздержаться от ответов в этой ветке.
← →
Ketmar © (2006-09-25 00:31) [39]>[38] SergP(c) 25-Sep-2006, 00:29
>Ну вот это то чего я хотел услышать.
утверждение, что ты неправ? этого можно было проще добиться. и не тратить наше и своё время на разъяснения очевидного. %-)
← →
Плохиш © (2006-09-25 00:38) [40]
> SergP © (25.09.06 00:14) [32]
> Как я понял, все здесь считают что невозможно было создать
> Delphi так чтобы она создавала exe более экономично без
> потери удобства?
Вообще-то, не считают, даже и не думают на эту тему, а работают, создают проекты. Только переодически прибегают всякие идиоты вырвавшиеся из детского сада. Не тебе с куриными мозгами обсуждать правильно ли создаёт продукты борланд или любая др. фирма. Или у тебя есть, что предъявить из созданного тобой?
Страницы: 1 2 3 вся ветка
Текущий архив: 2006.10.15;
Скачать: CL | DM;
Память: 0.57 MB
Время: 0.041 c