• De programación. Se trata del conjunto de herramientas que permiten
desarrollar programas informáticos. Son por así decirlo, la carrocería de un automóvil. Ejemplos son los editores de texto o los compiladores de código. La importancia del software de programación radica en que hace posible el desarrollo de aplicaciones, por lo que su función es elemental para el desarrollo de la informática y los diferentes programas.
Ventajas del software de programación:
• Posibilita la lectura secuencial de los programas, favoreciendo así su
comprensión. • Reduce significativamente los errores debido a efectos secundarios no deseados. • Debido a que el código es más fácil de entender (en comparación con el código que no usa estructuras de control de flujo), los errores suelen ser más fáciles de encontrar y corregir.
Desventajas:
• No permite modelar los conceptos del dominio del problema directamente,
por lo que la transformación del dominio del problema al dominio de la solución es necesaria y requiere un mayor esfuerzo de compresión. • La separación entre datos (variables) y rutinas (procedimientos y funciones) lleva a la necesidad de utilizar variables globales, lo que hace que las capacidades de encapsulamiento propuestas por el paradigma sean limitadas.
Algunos ejemplos son MySQL, Oracle, PostgreSQL y Microsoft SQL
Server.
• De aplicación. Acapara las herramientas que posibilitan una actividad o
una acción de forma digital. Siguiendo con el símil, en este caso serían las ruedas y pedales del coche. La funcionalidad del software de aplicación se refiere a su capacidad para desempeñarse y funcionar de acuerdo con las especificaciones del diseño. • En términos simples, deben funcionar correctamente, es decir, realizar todas las actividades para las que fueron diseñados.Para ello, debe tener una apariencia, componentes y servicios claros. Ejemplos son los videojuegos o el software de ofimática.
• De sistemas. Consiste en la correcta relación que se establece entre
usuario y software, siendo la cara más visible del proceso de experiencia. Aquí podemos confirmar finalmente, que se trataría del volante y el motor. Ejemplo son los sistemas operativos o los servidores. Tiene como función ejecutar las tareas básicas que permiten comunicarse con el hardware, así como alojar otros programas.