Puedes hacer pruebas con packages.
Aquí tienes un artículos que explica (o lo intenta) las diferentes opciones entre DLL's y BPL's. Y entre carga estática y dinámica.
También tienes ejemplos sencilos.
https://neftali.clubdelphi.com/dlls-...es-en-runtime/
Como dije al final una BPL y similar a una DLL, pero si vas a utilizarla desde delphi tiene ventajas, ya que puedes utilizar RTTI
Aunque ya es un poco antiguo, aquí tienes otro artículo que habla de cómo trabajar con BPLs de forma dinámica, implementando un sistema de Plugins (carga dinámica de packages).
https://neftali.clubdelphi.com/siste...elphi-parte-2/