Modelos de Desarrollo: El Modelo Catedral vs el Modelo Bazar

Modelos de Desarrollo: El Modelo Catedral vs el Modelo Bazar

¿Qué modelos de desarrollo existen?

Existen dos modelos de desarrollo principales definidos en el libro “The Catedral and The Bazar”, escrito por Eric S. Raymond, y basado en sus observaciones mientras trabajó en comunidades de desarrollo OpenSource.

¿Cuáles son las características del Modelo Catedral (Cathedral Model)?

  • Es el mas restrictivo.
  • El código no se libera hasta que cada pieza del software se liberado al público.
  • Las actualizaciones que existan entre una versión y otra solo están disponibles para quienes desarrollan el producto.
  • Cada desarrollador es responsable de una parte del desarrollo del código.

¿Cuáles son las características del Modelo Bazaar (Bazaar Model)?

  • El código esta siempre disponible para actualización.
  • El kernel de Linux o GitHub son ejemplos de este modelo.

No se requiere ser un programador para pasar el test LPI. Se requiere sin embargo entender la diferencia entre los tipos de lenguajes de programación y poder instalar las diferentes dependencias para cada uno de ellos.

¿Qué tipos de lenguajes existen?

Podemos englobar a los lenguajes de programación en dos grupos:

  • Lenguajes Compilados
  • Lenguajes Interpretados

¿Qué características tienen los lenguajes compilados?

  • Utilizan utilerias como gcc para crear una versión compilada que pueda ser interpretada directamente por el SO.
  • Al no requerir que se interpreten son muy veloces.
  • Si se hace un cambio, hay que volver a recompilar el código.
  • Se debe compilar una versión para cada SO, ya que estos leen la información binaria (unos y ceros) de formas diferentes.

¿Cuáles son algunos ejemplos de lenguajes compilados?

  • C
  • C++

¿Qué características tienen los lenguajes interpretados?

  • Utilizan un interprete que lee el código y lo convierte en una aplicación que pueda interpretar el SO.
  • Se puede escribir el código fuente una vez, y este podrá ejecutarse en cualquier equipo que posea el interprete.

¿Cuáles son algunos ejemplos de lenguajes interpretados?

  • Python
  • Java
  • Perl
  • PHP

¿Cuáles son las características del lenguaje ensamblador?

  • El procesador puede leer las instrucciones directamente.
  • Las aplicaciones son extremadamente rápidas.
  • Se requieren habilidades de programación muy avanzadas.
  • El lenguaje es sumamente complicado de entender.
  • El código solo funciona en los procesadores/maquinas para los cuales se programe.