Dentro de la serie de palabras a tratar en este directorio Componente es quizás la más difícil definir puesto que no es que signifique diferente en cada uno de los dialectos abajo indicados si no que es difícil de definir incluso de forma seria, puesto que realmente tiene varios significados y lo peor es que en la misma conversación cada persona adapta el significado a lo que le interesa (modelo de..., tecnología, agrupación de código, objeto con interfaz público, unidad de software independiente...).
En abstracto yo lo considero simplemente cualquier artefacto software que dispone de API público y una implementación más o menos oculta y que puede ser desplegado de forma independiente.
Hablando de un "modelo de componentes" concreto, sería cualquier pieza desplegable por separado y que cumplen las normas y/o convenciones especificadas por ese "modelo de componentes" correspondiente (por ejemplo: ZeroC Ice, Corba, DCOM, etc....)
En los diversos dialectos lo que quiere decir es:
- Desarrollador con dos dedos de frente: Se corresponde con la definición dada en el párrafo anterior. Pero cuyo uso debe ser completamente determinado por la audiencia con la que hable puesto que como veremos cada uno entiende una cosa distinta. Si NO está dentro de un ámbito técnico muy concreto y con gente muy puesta en ese tema, debe EVITAR siempre su uso, puesto que en ningún caso la gente entenderá lo que él está intentando expresar.
- Desarrollador sin frente: Una librería, un trozo de código, un objeto, una cosa rara, un ejecutable.... vamos cualquier cosa, dependiendo de cuál haya sido su experiencia en el mundillo de la informática.
- Gestor proyectos informáticos: Es algo "Cool" que no se qué es, no se cómo usarlo, pero que está claro que no me puedo permitir el lujo de no usarlo (para algo todos los consultores indican en los powerpoints que es una pieza clave dentro de cualquier software).
- Consultor: Palabra comodín que vale para:
- Dar énfasis a cualquier frase.
- Juntarla en cualquier sitio con SOA y con Workflow, pudiendo usarla varias veces en la misma presentación simplemente intercambiando el orden.
- Sirve como relleno a cualquier "Caja", "Redondel" o "Nube" que todavía no tenga nombre dentro del PowerPoint que supuestamente define una arquitectura software.
Dentro de la jerga es una de las palabras que más se deben usar, puesto que no significa nada para nadie y además es tan ambigua que permite decir lo que quieras sin pillarte los dedos. Por otra parte tiene la ventaja de que siempre compila dentro del documento word o powerpoint correspondiente. - Comercial:
- Comercial Productos Informáticos: Es de lo mejor que hay, sobre todo si usas la tecnología "X" que yo te vendo, en ese caso, se prueban solos, se desarrollan solos no requieren formación para su uso y además se integran en un entorno SOA-Distributed-Integration-JMS-J2EE-ActiveX-DCOM que es que da gloria verlo.
Dependiendo del tipo de productos que venda un comercial (vendedor de humo), debe usar esta palabra u otras como SOA, un mínimo de dos veces por párrafo. - Comercial Recursos Humanos Informáticos: Supongo que componente será lo mismo que "recurso", luego supongo que será lo mismo que "(ser) humano", luego entiendo que simplemente es algo para vender.
- Comercial Productos Informáticos: Es de lo mejor que hay, sobre todo si usas la tecnología "X" que yo te vendo, en ese caso, se prueban solos, se desarrollan solos no requieren formación para su uso y además se integran en un entorno SOA-Distributed-Integration-JMS-J2EE-ActiveX-DCOM que es que da gloria verlo.
Bueno, ahora hablando un poco más en serio, no está demás que se eche un vistazo a
Component Based Software Engineering por lo menos para no cometer el error de confundir el software orientado a componentes, del software orientado a objetos y del software realizado con tecnología de objetos.
Hay que tener en cuenta las premisas definidas en
el comienzo de la serie