Перейти к содержанию
Fire Monkey от А до Я
  • 0

Почему с каждой новой версией, размер изготавливаемого продукта становится все больше и больше?


d7d1cd

Вопрос

Привет всем. Установил XE7, открыл в нем свой проект и сделал Release версию исполняемого файла. Его размер стал 7,78 Мб. В XE6 из этого же проекта получался файл размером 7,08 Мб. Скажите, почему с каждой новой версией, размер изготавливаемого продукта становится все больше и больше?

Ссылка на комментарий

Рекомендуемые сообщения

  • 0
  • Модераторы

Думаю, это связано с появлением новых функций и новых компонентов в библиотеке. Т.к. FireMonkey кроссплатформенная либа, то и размер увеличивается на всех платформах, ведь приходится таскать всю либу с проектом.

 

Вот ещё хорошая тема: Можно ли уменьшить размер приложения для андроида?

 

 

Если вам так важны килобайты, то вот совет:

Если вы используете картинки в приложении, то перед использованием прогоните их через оптимизатор «без потерь». Скорее всего, вы будете очень удивлены новому размеру (весу) картинок.

 

Для примера:

Я открыл стандартный стиль «Android Light», вытащил все картинки и оптимизировал.

Вес до оптимизации: 552 КБ

Вес после оптимизации: 366 КБ

Визуально изменений вроде не видно.

Результаты (кстати говоря, картинка ниже, была оптимизирована :), вес до - 71,3 КБ, вес после - 48,5 КБ):

post-19-0-28844500-1410188142_thumb.png

 

Хотел было написать статью про оптимизацию, но пока не знаю, что ещё можно оптимизировать...

Ссылка на комментарий
  • 0

Не сжатые картинки это одно. Объясните пожалуйста, почему пустая форма в Builder 5.0 скомпилированная в Release конфигурации, весила около 400 кБ, и та же форма в XE7 весит уже 6,58 Мб. Я понимаю, что в последней версии системы намного больше библиотек. Они что, все включаются в исполняемый файл?

P.S. У меня есть программа (один exe файл), написанная не знаю в какой системе, которая состоит из стандартного окна Windows со стандартными полями ввода и подписями. Программа выводит в поля хендл, имя класса и другую информацию об объекте, который в данный момент находится под указателем мыши. Программа весит 28 Кб. Работает даже в Windows 8.1. А писали ее минимум на С.

Ссылка на комментарий
  • 0

Уважаемый "d7d1cd"!

Вы пытаетесь "сравнивать сладкое с мягким"...

И на Delphi и на CBuilder в RAD Studio можно создать подобное приложение, которое будет объемом в несколько десятков килобайт...

А оно Вам надо?

И это принципиальный вопрос!

Если вы хотите написать элементарное приложение, в смысле GUI, - пишите все "ручками". И тогда у Вас получится минимальный объем.

Ведь ясно, что в исполняемый файл Delphi или CBuilder, по умолчанию включены библиотеки например RTTI. Именно они весят больше всего. (при желании - Вы их можете отключить! и тогда объем бинарника уменьшится! Но тогда Вам придется отказаться от многих весьма удобных механизмов...)

Если вы создаете приложение с формами, разрабатываемыми в DesignTime, а не "ручками" в RealTime, то и это несет с собой много библиотек.

Меня вот, например, как программиста, более чем устравивает объем получаемых бинарников, компилируемых RAD Studio.

И все дело в том, что чем больше программа по функционалу и содержимому, то тем меньше становится ее объем по отношению к аналогам созданным в других средах и языках. И, наконец, наступает тот момент, когда сравнение по объему полученного "бинарника" идет уже в обратную сторону...

 

А при современных объемах доступной оперативной памяти, я бы на Вашем месте, переживал не за объем бинарника, а за объем "пожираемой" им памяти.

Ссылка на комментарий
  • 0

То, что я сравниваю сладкое с мягким, я сам в какой то степени понимаю. Спасибо за ответ. Можно еще Вас попросить подробнее написать про библиотеки RTTI, как их отключить, чем это грозит и от каких удобных механизмов мне придется отказаться.

Ссылка на комментарий
  • 0

Это не так просто описать "в двух словах". У меня, к сожалению, нет столько времени)

Просто погуглите. В инете весьма много информации об этом. Например "delphi xe disable RTTI".

Думаю, может кто-нибудь из наших гуру Вам подскажет где посмотреть более детально, или ссылки на статьи об этом даст.

 

P.S. Тот же гугл по "RTTI" выдаст Вам море информации о том, что это такое и "с чем его едят"..

Изменено пользователем AlexG
Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...