Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.12.2011, 00:58   #1
DrStrangeLove
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 56
По умолчанию библиотеки и размер исполняемого файла

Обычно считают, что код напрямую обращающийся к API ОС выполняется быстрее и размер executable файла меньше чем когда юзают через библиотеки.

Но почему так? Точнее, что добавляется "лишнего" в исполняемый файл при использовании библиотек?? Ведь в конце концов в этих библиотеках всё равно происходят вызовы API ОС..
DrStrangeLove вне форума Ответить с цитированием
Старый 25.12.2011, 02:56   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

про какие библиотеки речь?

если проект скомпилить с рантайм-библиотеками, так он станет в разы меньше, а не больше.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 25.12.2011, 03:08   #3
DrStrangeLove
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 56
По умолчанию

Ну, например, если в дельфи не использовать VCL формы и.т.д. , а описать GUI на чистом Win API - тогда exe станет в разы меньше..
Что "лишнее" в exeшнике при VCL??
DrStrangeLove вне форума Ответить с цитированием
Старый 25.12.2011, 03:40   #4
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

ну так вцл скрывает от разработчика 1000 мелочей, которые необходимы для взаимодействия с АПИ. Замахаешься же ручками всё это вызывать и регистрировать.

Свой довесок даёт поддержка чтения контролов из dfm, но зато мы имеем возможность визуально программировать.

Ну и не забываем про RTTI, при большом дереве классов (а в вцл оно большое), это тоже занимает какое-то место.

Кроме этого там почти ничего "лишнего" )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 25.12.2011, 04:03   #5
DrStrangeLove
Пользователь
 
Регистрация: 18.04.2010
Сообщений: 56
По умолчанию

Вот, если сравнить 2 бинарных исполняемых файла:

один, написанный при использовании чистого Win API
второй, написанный при использовании VCL

Функционал у них абсолютно одинаков..
Но что же дополнительного в более жирном exeшнике??
DrStrangeLove вне форума Ответить с цитированием
Старый 25.12.2011, 05:37   #6
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

Зашли на второй круг.

Давайте ещё сравним прогу, написанную на асме и на языке высокого уровня. И удивимся, что это она так разбухла.

По большому счёту можно и без Win API обойтись, зафигачим свой драйвер, зачем нам этот жырный API.

Да и винда, собственно, тоже не нужна, работали в ДОС 20 лет, никто не жаловался.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод имени файла(исполняемого)в cmd molan Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 24.03.2012 09:36
Предупреждение построения => ошибка запуска исполняемого файла Лунатик222 Visual C++ 1 09.10.2011 22:58
Что еще тащить с IBX, кроме исполняемого файла? AutoHare БД в Delphi 0 21.10.2010 21:22
Способы уменьшения исполняемого файла в Delphi 2010 STRELOK-2007 Общие вопросы Delphi 3 23.06.2010 12:23
Создание исполняемого EXE-файла Jean-Esther Помощь студентам 5 03.03.2009 21:52