2010-04-13 1 views
1

Есть ли какие-либо ресурсы, как создавать приложения для Windows, особенно для того, как создавать dll для завершения вызовов api или аналогичных?Какова наилучшая практика для включения функций в dll для приложений Windows Desktop?

Похоже, что люди не компилируют весь проект в единый exe для выпуска, а что лучше всего подходит для архитектования компонентов приложения Windows на основе шаблона MVC?

Является ли dll для совместного использования общей api между различными приложениями (файл .exe)?

Есть ли какие-либо ресурсы или хорошая книга по этой теме?

Я ценю, если кто-то может пролить свет.

+0

любые предложения? – zsong

+0

Так как это вопрос с несколькими точками, сделайте его общей вики. –

ответ

2

Вы можете прочитать общие обзоры библиотек динамической компоновки (DLL) на MSDN или Wikipedia или на других сайтах в Интернете. Некоторые важные применения/преимущества динамических библиотек включают в себя:

  • Совместное использование общей функциональности между различными приложениями/модулями без дублирования кода
  • Разоблачение API для других приложений или программистов через программный интерфейс
  • Рассекая код приложения в меньшие куски для возможного повышения производительности при загрузке/времени выполнения (например, ленивая загрузка редко используемых модулей)
  • Увеличение детализации патчей/пакетов обновлений и т. д.
  • Предоставление связующего звена ИНГ механизм conecting приложения с API, которые он использует, улучшая возможности для кросса-совместимости версий и отдельных реализаций в API набор

Наилучший подход для факторинговых бинарных модулей приложения, в значительной степени зависит, в зависимости от конкретной ситуации , Иногда вы можете начать с размещения всего кода приложения в том же двоичном формате и, со временем, определения часто используемых битов и перемещения их в библиотеки DLL. В других ситуациях может быть более четко видно, как разрезать и нарезать приложение в несколько библиотек.