Para crear el objeto generamos una clase y dentro de esta sus propiedades y métodos y esto se hace mediante texto con una “ortografía” concreta dependiendo del lenguaje utilizado. Si estamos desarrollando una aplicación de Windows con .NET utilizaríamos por ejemplo como lenguaje C# (csharp) o Visual basic y con la ortografía concreta de cada lenguaje generaríamos esa clase; posteriormente necesitaríamos de un programa compilador para convertir esta clase en una aplicación ejecutable de window.
Una librería DLL es una clase y no es un programa ejecutable tipo window, tiene funcionalidades y características concretas.
Vamos a poner un ejemplo práctico, creamos una aplicación tipo ventana en la que vamos a incluir una caja de texto donde poder escribir y un botón y cada vez que pulsemos, aparecerá un mensaje de alerta con el texto de la caja.
Normalmente Visual Studio hace muchas cosas por nosotros, pero vamos a entender que no. Entonces, para crear la ventana de window generamos una nueva clase la cual HEREDARÁ de la clase form para que tenga todas las funcionalidades de un formulario tipo window, titulo, botones de cerrar, minimizar, maximizar, ajustable, etc. La clase form es un OBJETO al instanciarla. Dentro de ese nuevo form que hemos creado añadimos la caja de texto y el botón (en un futuro ya veremos cómo hacerlo) y tanto la caja de texto donde escribimos y el botón son OBJETOS, son clases también con sus propiedades, métodos y eventos que al instanciarlas, se convierten en objetos, estos, llamados controles, heredan funcionalidades comunes de la clase CONTROL que también es un OBJETO y la clase control hereda de otra Component y así de ese modo mediante la herencia de clases le añadimos el legado de otros desarrolladores que generaron esas clases.
Las clases son plantillas para crear OBJETOS y al agregar un control tipo botón al formulario como contenedor estamos instanciando una clase que será un OBJETO o una clase botón y la estamos añadiendo en esta contenida.
En definitiva, en programación todo es un OBJETO.
Nota: Todos los lenguajes de programación están orientado a objetos, JAVA por ejemplo es un lenguaje tipo POO, C++ o C#. Todo lo que explique irá orientado a .NET y como lenguajes C# o VB.NET.
Saludos «der Waki»