¿Cuáles son las características esenciales de todas las aplicaciones web?

Una aplicación web es casi siempre (aunque no siempre) un tipo de diseño conocido como MVC o Model View Controller. Eso significa que una aplicación web tendrá:

  1. Un modelo (esto normalmente también se conoce como la capa de datos, y a menudo son tablas en una base de datos relacional)
  2. Una vista (también conocida como front-end, o capa de presentación), que consta de HTML, JavaScript y, en general, cosas que el servidor sabe cómo compilar / generar y el navegador sabe cómo representar / interpretar
  3. Un controlador (también conocido como lógica empresarial, o capa empresarial), que toma información basada en el enrutamiento para realizar alguna acción utilizando los modelos con el fin de obtener una vista para renderizar con un conjunto de información dado.

Las aplicaciones web tienden a compartir un conjunto de características funcionales comunes, como usuarios, contenido, etc. También tienden a compartir un conjunto de características comunes no funcionales, como seguridad, accesibilidad, mantenibilidad, etc.