La arquitectura de componentes

KDE incluye una arquitectura de componentes llamada KParts que permite introducir unas aplicaciones dentro de otras o introducir solamente funcionalidades nuevas en una aplicaci�n (los llamados Plugins).

KParts es por tanto la tecnolog�a que permite que aplicaciones como Konqueror puedan usar una componente del editor de textos Kate para leer ficheros dentro del propio navegador, o usar una componente de KPresenter para ver una presentaci�n sin necesidad de abrir KPresenter. Igualmente, KParts se usa para implementar los Plugins de Konqueror que a�aden nuevas funcionalidades como por ejemplo, una entrada en el men� en el que se puede elegir a qu� idioma queremos traducir (usando BableFish) la p�gina que estamos viendo en ese momento, un plugin que lee por el altavoz la p�gina actual (completamente o parcialmente) o un plugin que muestra la estructura interna de una p�gina web en forma de arbol DOM (Document Object Model).

KParts adem�s se usa en KOffice para introducir unos documentos dentro de otros de forma que se pueda tener por ejemplo una hoja de c�lculo dentro de un documento de texto. Esto se hace introduciendo una componente de KSpread dentro de la propia componente de KWord. Al usar KParts no s�lo se introduce un programa dentro de otro, sino que todo el interfaz de usuario (men�s y barras de herramientas por ejemplo) cambia para reflejar esta ampliaci�n de funcionalidades de la forma m�s correcta posible. Esto permite que el usuario encuentre por ejemplo un men� de ordenar columna por orden alfab�tico (que s�lo deber�a estar disponible para la hoja de c�lculo) en los men�s de KWord siempre y cuando se est� editando una hoja de c�lculo que haya sido insertada en un documento de KWord.

Desarrollar nuevas componentes es muy f�cil gracias al dise�o de KParts, de hecho, convertir una aplicaci�n ya existente en una componente que pueda ser usada por ejemplo por Konqueror (para visualizar un tipo de archivos) no suele llevarse m�s de unas horas (o una tarde en el peor de los casos).