ruby-on-rails - official - ruby on rails que es
¿Qué es exactamente un framework web? (3)
Un marco de aplicación web es un marco de software que está diseñado para soportar el desarrollo de sitios web dinámicos, aplicaciones web y servicios web. El marco apunta a aliviar la sobrecarga asociada con las actividades comunes realizadas en el desarrollo web.
Tomado de this página.
¿Es un framework web, como Django y Ruby on Rails, simplemente una forma de mostrar código que podría escribirse normalmente en http? O se usa para más cosas del lado del servidor, como el almacenamiento de datos. ¿Se utiliza como front-end o back-end para sitios web?
Hablemos por un momento sobre cosas que no son un marco web.
En el nivel más básico de la web tienes una página web. Normalmente es una página tonta con texto, tal vez un video incrustado o algunas imágenes. No le importa (o al menos idealmente no debería) importarle de dónde viene el material que muestra. No necesita scripts, bases de datos, etc. para tener una página web estática. Herramientas típicas utilizadas: HTML, CSS, Javascript.
Luego tiene sistemas de administración de contenido (CMS) como, por ejemplo, Wordpress. Agregan un poco más de funcionalidad a su sitio, pero en realidad todo lo que hacen es proporcionarle una forma de administrar su colección de páginas web: crearlas sobre la marcha, etc. Puede usarlas tal como son e interactuar con los CMS a través de la administración. páginas que proporcionan. Puede ampliar algunos de ellos (por ejemplo, Wordpress tiene una arquitectura de complementos), pero por lo general no le preocupa cómo funcionan o su API específica.
Y luego tienes frameworks web. Te permiten hacer todo lo demás de manera estructurada. No es necesario tener un marco para crear un sitio basado en bases de datos, pero puede ayudar. Los marcos te compran mucha conveniencia a través de la convención. Por ejemplo, si desea agregar una nueva sección a su sitio, puede crear un "módulo", subirlo a una ubicación conocida, tal vez actualizar un archivo de configuración, y más o menos conectarse a su sitio.
El marco es lo que puede ocuparse de los detalles de su base de datos o extraer datos de otros servicios (o proporcionar datos a través de un servicio). Puede construir páginas para usted automáticamente basándose en una plantilla. Puede ocuparse de "prettificar" sus enlaces a través del enrutamiento de URL. Puede ayudarlo a asegurarse de que ninguno de los enlaces de su sitio se rompa, al descubrir dinámicamente dónde se encuentran las páginas en lugar de los enlaces de codificación manual. Le permiten separar sus preocupaciones de back-end (lógica de negocios, acceso a datos, autenticación, etc.) de sus vistas, lo que le permite actualizar fácilmente el diseño de su página si lo desea.
Para abordar específicamente sus preguntas ...
Los frameworks web generan páginas HTML servidas a través de HTTP. No hay magia particular aquí. A menudo, puede escribir las mismas páginas, pero los marcos le permiten, por ejemplo, definir una plantilla y mostrar una página diferente según sus necesidades sin su participación manual directa.
Los frameworks web no almacenan datos. Pueden acceder o proporcionarlo, pero ellos mismos no son una base de datos de ningún tipo. Los frameworks web viven en el lado del servidor y sirven páginas para el cliente y procesan la entrada del cliente.
Los marcos como Django y Rails se usan en el back-end. Hay otros marcos como jQuery que se pueden usar para crear scripts de actividades del lado del cliente, pero no son marcos web en el mismo sentido. Por lo general, cuando alguien dice "marco web", se refiere al lado del servidor.
Espero que esto ayude.
Un marco web es un entorno de programación que lo ayuda a crear sitios web y servicios. Por lo general, se centran en los problemas del servidor, como la conectividad de la base de datos, el enrutamiento de URL, la implementación del protocolo HTTP, la generación de HTML, el manejo de formularios, etc. Algunos también ayudarán con las preocupaciones del lado del cliente, como ayudar a que su código Javascript funcione sin problemas con el código del lado del servidor.