Форум: "Прочее";
Текущий архив: 2014.09.07;
Скачать: [xml.tar.bz2];
ВнизRTTI Найти похожие ветки
← →
Kerk © (2014-02-01 13:12) [0]Попробовал специально для DevilDevil попробовать убрать из проекта RTTI и посмотреть что станет с размером EXE.
Эффект достигнут вставкой в dpr-файл этих директив перед секцией uses:{$WEAKLINKRTTI ON}
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
Пустой проект с пустой формой, VCL, Delphi XE5:С RTTI - 2 104 320 байт
Без RTTI - 1 721 344 байт
Пустой проект с пустой формой, FireMonkey HD, desktop, Delphi XE5:С RTTI - 5 052 928 байт
Без RTTI - 4 239 360 байт
Речь конечно о релизных сборках. Можно еще больше заморочиться и пересобрать с этими директивами и саму VCL/RTL/FM, но тут уж я пас.
И напоследок то же самое попробовал со своей WordLines (самый большой FireMonkey-проект, что есть под рукой):С RTTI - 8 434 176 байт
Без RTTI - 7 120 896 байт
Ну вот как-то так.
← →
Дмитрий СС (2014-02-01 13:17) [1]Что ж там может быть у тебя на целый мегабайт.
← →
DVM © (2014-02-01 13:25) [2]А в андроиде, если разрабатывать стандартными средствами (java) минимальный пустой проект 4 кб.
← →
Kerk © (2014-02-01 13:27) [3]А вот при соборке той же WordLines под андроид почему-то разницы почти никакой.
С RTTI:so: 29 073 420 байт
apk: 9 385 739 байт
Без RTTI:so: 29 057 036 байт
apk: 9 380 963 байт
Вот такие дела.
> Дмитрий СС (01.02.14 13:17) [1]
>
> Что ж там может быть у тебя на целый мегабайт.
Информация о типах, видимо.
Барри Келли году так в 2010м писал на stackoverflow, что размер данных RTTI уменьшить возможно, но многое придется переделывать. Видимо, воз и ныне там, к тому же сам Барри уже в EMBT не работает.
Ну вообще мегабайт - это ерунда. Я боялся, что на самом деле все хуже. Мне же тут нарассказывали ужасов про RTTI :)
← →
Kerk © (2014-02-01 13:29) [4]
> DVM © (01.02.14 13:25) [2]
>
> А в андроиде, если разрабатывать стандартными средствами
> (java) минимальный пустой проект 4 кб.
Java-машину к этим 4м кб прибавь :)
Помню лет 10 назад нередко встречались люди, которые для уменьшения размера exe компилили проект с рантайм пакетами, а потом удивлялись, почему программа на других компьютерах не работает :)
← →
DVM © (2014-02-01 13:33) [5]
> Kerk © (01.02.14 13:29) [4]
> Java-машину к этим 4м кб прибавь :)
Ну она же там в любом случае есть. Кстати, там не Java машина. Там совсем другой байт код и она не стековая как Java, а регистровая.
Еще мне интересно, сколько будет занимать проект, созданный на с# и потом собранный с помощью Xamarin под Android. Вот там да, к проекту реально цепляется еще Mono под андроид.
← →
Kerk © (2014-02-01 13:37) [6]
> Еще мне интересно, сколько будет занимать проект, созданный
> на с# и потом собранный с помощью Xamarin под Android. Вот
> там да, к проекту реально цепляется еще Mono под андроид.
Вот приложение на xamarin: https://play.google.com/store/apps/details?id=com.coinkeeper
>> Размер 10M
Что-то сопоставимое с Delphi, в общем.
← →
antonn © (2014-02-01 13:43) [7]
> А в андроиде, если разрабатывать стандартными средствами
> (java) минимальный пустой проект 4 кб.
в эклипсе с пустой активити около 150кб (по крайней мере android-8)
← →
DVM © (2014-02-01 13:44) [8]
> Kerk © (01.02.14 13:37) [6]
> >> Размер 10M
>
> Что-то сопоставимое с Delphi, в общем.
Причем 10 - это наверняка размер архива APK, при распаковке больше будет.
Да, получается сопоставимо. Я думаю размер приложения на Delphi под андроид будет не сильно расти при добавлении функционала.
← →
DVM © (2014-02-01 13:46) [9]
> antonn © (01.02.14 13:43) [7]
>
> > А в андроиде, если разрабатывать стандартными средствами
>
> > (java) минимальный пустой проект 4 кб.
>
> в эклипсе с пустой активити около 150кб
То в эклипсе. Можно руками и меньше.
http://habrahabr.ru/post/210584/
← →
Kerk © (2014-02-01 13:46) [10]
> Причем 10 - это наверняка размер архива APK
Да, конечно. Это apk.
← →
antonn © (2014-02-01 13:49) [11]
> DVM © (01.02.14 13:46) [9]
>
>
> > antonn © (01.02.14 13:43) [7]
> >
> > > А в андроиде, если разрабатывать стандартными средствами
> >
> > > (java) минимальный пустой проект 4 кб.
> >
> > в эклипсе с пустой активити около 150кб
>
> То в эклипсе. Можно руками и меньше.
> http://habrahabr.ru/post/210584/
вероятно лишь за счет того, что эклипс сразу пихает разные иконки для разных разрешений? в остальном результат же один и тот же
← →
DVM © (2014-02-01 13:50) [12]
> antonn © (01.02.14 13:49) [11]
> вероятно лишь за счет того, что эклипс сразу пихает разные
> иконки для разных разрешений?
я не разбирался, вероятно да, из за ресурсов.
← →
DevilDevil © (2014-02-01 14:57) [13]Попробовал ради Kerk-а скомпилировать пустой проект на Delphi7 (с RTTI)
Debug:
412кб
Release:
359кб
Напомните нам обоим, сколько весит пустой KOL&MCK проект :)
← →
Eraser © (2014-02-01 15:19) [14]
> Kerk © (01.02.14 13:12)
> Пустой проект с пустой формой, VCL, Delphi XE5:
> С RTTI - 2 104 320 байт
> Без RTTI - 1 721 344 байт
>
> Пустой проект с пустой формой, FireMonkey HD, desktop, Delphi
> XE5:
> С RTTI - 5 052 928 байт
> Без RTTI - 4 239 360 байт
попробуй зазиповать каждый из этих вариантов, интересно, что выйдет )
← →
Eraser © (2014-02-01 15:25) [15]
> DevilDevil © (01.02.14 14:57) [13]
а сколько у тебя весит apk под андроид, написанное на Дефли 7? )
← →
DevilDevil © (2014-02-01 15:31) [16]> а сколько у тебя весит apk под андроид, написанное на Дефли 7? )
Delphi 7 настолько умён, что не только сжимает *.apk под андроид до 0 байт, но и делает его мегаскрытым, дабы исключить человеческий фактор ручной модификации этого файла :)
← →
NoUser © (2014-02-01 15:43) [17]
> > Что ж там может быть у тебя на целый мегабайт.
> Информация о типах, видимо.
> Ну вообще мегабайт - это ерунда. ...
!!!
← →
DVM © (2014-02-01 17:32) [18]
> DevilDevil © (01.02.14 14:57) [13]
> Попробовал ради Kerk-а скомпилировать пустой проект на Delphi7
> (с RTTI)
> Debug:
> 412кб
>
> Release:
> 359кб
если SysUtils выкинуть то и без KOL будет килобайт 30. Только нафига все это? На дворе 2014 год, а не 95.
← →
DevilDevil © (2014-02-01 18:19) [19]> DVM © (01.02.14 17:32) [18]
Ну я вообще не понимаю, зачем эта ветка :)
И тем более причём тут я :)
← →
Kerk © (2014-02-01 20:54) [20]
> Ну я вообще не понимаю, зачем эта ветка :)
> И тем более причём тут я :)
Это я чтоль спрашивал какими директивами можно отключить RTTI и рассказывал какую экономию это даст? Ну ок. Я что-то даже не удивляюсь.
← →
Пит (2014-02-01 21:25) [21]Kerk, ты точно также очень неохотно признаешь свою неправоту, предпочитая просто промолчать обычно. Так что чего тут, люди так часто поступают ;)
Но в данном вопросе ты дьявола заборол, бесспорно )
← →
Пит (2014-02-01 21:26) [22]ну и в принципе спасибо за исследование, интересно было прочитать.
← →
Алекс1980 (2014-02-01 21:40) [23]Опять началась гонка за уменьшение ехе-файлов... :) Счас начнут пакеры советовать ;)
← →
Inovet © (2014-02-01 21:45) [24]> [23] Алекс1980 (01.02.14 21:40)
> Счас начнут пакеры советовать ;)
Советую. Люди пишите на ассемблере всё целиком. Будет размер маленький и скорость (выполнения) большая (это если ума хватит).
← →
DevilDevil © (2014-02-01 21:50) [25]> Kerk © (01.02.14 20:54) [20]
> Это я чтоль спрашивал какими директивами можно отключить
> RTTI и рассказывал какую экономию это даст? Ну ок. Я что-
> то даже не удивляюсь.
Ты рассуждаешь так, будто тебе удалось отключить RTTI. Иначе говоря "вернуть опции RTTI как в прошлых версиях".
Тебе этого не удалось
Что ты хотел доказать?
Что в новых версиях Delphi глупая политика RTTI?
Ты это доказал
Скажу больше, я поражён, что тебе удалось скинуть 1Мб.
Но на Delphi 7 я скинул значительно больше :)
← →
DVM © (2014-02-01 22:44) [26]
> DevilDevil © (01.02.14 21:50) [25]
> Но на Delphi 7 я скинул значительно больше :)
переходи на Delphi 2. Delphi 1 не советую, т.к это уж совсем будет экстрим, да и не заработают приложения в современных ОС, а вот Delphi 2 другое дело.
← →
DevilDevil © (2014-02-01 22:59) [27]> DVM © (01.02.14 22:44) [26]
Логика не понятно
Как такое решение может повлиять на изменение политик RTTI и качество компилятора в новых версиях Delphi?
← →
DVM © (2014-02-01 23:03) [28]
> DevilDevil © (01.02.14 22:59) [27]
> Логика не понятно
Та нет тут логики :) Меньше версия Delphi - меньше размер исполняемого файла - вот и вся логика.
← →
DevilDevil © (2014-02-01 23:14) [29]Удалено модератором
← →
Ega23 © (2014-02-01 23:15) [30]
> Опять началась гонка за уменьшение ехе-файлов... :) Счас
> начнут пакеры советовать ;)
А чё, для планшетной индустрии сейчас в целом актуально.
← →
DVM © (2014-02-01 23:28) [31]
> DevilDevil © (01.02.14 23:14) [29]
> Есть вещи важнее, чем занимаемое место на диске
Самая важная сейчас вещь - скорость разработки. Кто первый встал - того и тапки. Как работает его программа - не важно, он потом доработает, но он первый.
>
> А чё, для планшетной индустрии сейчас в целом актуально.
>
у меня ща в планшете памяти больше чем во всем моем городе, когда я свой первый компьютер покупал :)
← →
DevilDevil © (2014-02-01 23:43) [32]> DVM © (01.02.14 23:28) [31]
> Самая важная сейчас вещь - скорость разработки. Кто первый
> встал - того и тапки. Как работает его программа - не важно,
> он потом доработает, но он первый.
Почти полностью поддерживаю
Это важно, но желательно ещё чтобы программа работала хорошо, а то, при сравнении с продуктами конкурентов, "твой" может остаться не у дел
← →
Ega23 © (2014-02-01 23:51) [33]
> а то, при сравнении с продуктами конкурентов, "твой" может
> остаться не у дел
Знаю я одну систему, которая "унутре" представляет из себя просто адовъ говнокод, который уже лет 8 переписывается кусками. Но, поскольку, на момент старта она была единственной и безальтернативной, а работала в целом стабильно. несмотря на говнокод, то сейчас ею оснащены почти все (а может уже и все) российские АЭС, а также индийская, китайская и иранская.
← →
DevilDevil © (2014-02-01 23:53) [34]> Ega23 © (01.02.14 23:51) [33]
Звучит как будто это контраргумент :)
А по факту нет :)
← →
картман © (2014-02-01 23:56) [35]
> Но, поскольку, на момент старта она была единственной и
> безальтернативной
интересно, почему?
← →
Ega23 © (2014-02-02 00:07) [36]
> Звучит как будто это контраргумент :)
> А по факту нет :)
По факту - это то самое "кто первый встал, того и тапки".
> интересно, почему?
А она работала. А вот альтернативы - пока ещё нет. Да, она была написана с использованием какого-то адского скриптового языка, на котором конечные автоматы надо было расписывать. И основной метод написания был копипаста огромных портянок и мучительные вылавливания багов. Но она - работала.
А вот альтернативы, написанные на серьёзных языках и даже ассемблере и занимавшие по 834 Кб на диске - только разрабатывались.
Такие дела.
← →
Пит (2014-02-02 00:24) [37]
> Скажу больше, я поражён, что тебе удалось скинуть 1Мб.
я лично больше поражен, как Kerk"у удалось скинуть 20кг ;)
← →
DevilDevil © (2014-02-02 00:44) [38]> Пит (02.02.14 00:24) [37]
Питание и физические упражнения :)
Я сбросил 20ку за месяца 4, может 5
← →
картман © (2014-02-02 00:54) [39]
> Ega23 © (02.02.14 00:07) [36]
> А она работала. А вот альтернативы - пока ещё нет....
Но она - работала.
> А вот альтернативы, написанные на серьёзных языках и даже
> ассемблере и занимавшие по 834 Кб на диске - только разрабатывались.
вот я и спрашиваю: почему криво написанная была и работала, а правильных даже не было?
← →
Ega23 © (2014-02-02 01:02) [40]
> вот я и спрашиваю: почему криво написанная была и работала,
> а правильных даже не было?
Это уже другой вопрос, никак не связанный с программированием.
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2014.09.07;
Скачать: [xml.tar.bz2];
Память: 0.56 MB
Время: 0.004 c