Bien, comprendamos la construcción de sitios web a través de una analogía. Sin embargo, a pesar de los detalles de la pregunta, me estoy acercando a esta pregunta de la manera en que lo haría un principiante, por lo que estoy exponiendo toda la idea del proceso de diseño web que he adquirido de mi experiencia ciertamente limitada.
Bueno, piensa en un sitio web como decir una casa. Lo primero que tiene la casa es una estructura. Tiene una puerta de entrada (¿quizás la pantalla de carga?), Una sala de estar (la página de inicio), una cocina, un dormitorio y tal vez algunas habitaciones más con diferentes propósitos (estas son las muchas páginas web diferentes que tal vez enlazan desde su página de inicio) o de una página del mismo). En cada habitación, tiene cosas diferentes: un ventilador, una luz de tubo, algunos interruptores, mesas, camas, todos son parte de la estructura. Esta estructura está construida usando HTML (la última versión recomendada es HTML 5). Y no importa qué o si tiene la intención de construir algo encima, esta estructura siempre debe estar allí. Es el archivo principal (.html) que un navegador web representa o entiende. Todo lo demás se vincula con esto.
Lo siguiente que probablemente desee es que la casa se vea bien: pintar las habitaciones, decorar la puerta de entrada, etc. En una página web esto se hace usando CSS (el último es CSS 3, aunque los códigos de estilo de la versión 2 probablemente todavía se usan ampliamente).
- ¿Cómo sabré qué sitio web está utilizando qué idioma en el back-end?
- ¿Cómo pasa un desarrollador front-end a un ingeniero back-end?
- ¿Se deben manejar las solicitudes HTTP fusionadas en el front-end o el back-end?
- ¿Qué necesita saber para el desarrollo web de back-end?
- Si el front-end de mi aplicación web es síncrono, ¿ayuda tener un back-end de microservicios asíncronos?
Esto crea una página web básica que también es estéticamente agradable pero que no es realmente dinámica. Las acciones serán limitadas. Entonces, tiene una casa con un interruptor que probablemente también esté coloreado en su color favorito, pero realmente no puede hacer nada. Para que sea funcional, necesita Javascript (JS o ECMAScript; la última versión es la versión 6, pero en realidad es muy nueva y habrá muchos códigos antiguos por algún tiempo). Ahora, JS es el único lenguaje de secuencias de comandos que entiende un navegador, pero a diferentes personas les gusta hablar en diferentes idiomas, por lo que tiene marcos como jQuery , Prototype, Ext, etc. (de los cuales el más popular es jQuery).
También ha combinado marcos CSS y JS como Bootstrap, Foundation, W3CSS, etc. que proporcionan algunos elementos de alto nivel integrados, por lo que el desarrollo web es más rápido y también estos marcos son muy útiles para garantizar un diseño receptivo de su sitio (lo que significa que la página será se ven geniales y proporcionan la mayor funcionalidad de formas fácilmente accesibles para dispositivos de diferentes tamaños de pantalla).
Esto resume bastante bien el Front End del desarrollo web, por lo que ahora tiene una casa que se ve bien y es funcional … pero bueno, ¿por qué solo tengo un canal en mi televisor?
Para obtener más canales o para consultar las últimas ofertas “recomendadas para usted” en un sitio web de comercio electrónico, necesita que el servidor tome alguna medida en función de su interacción actual con el sitio web. Entonces, hay algo de programación involucrada allí con el servidor y ahora hay varias alternativas para hacerlo: PHP , ASP, node.js, Ruby On Rails, Python, JSP y probablemente algunos más, de los cuales PHP es tradicionalmente el más utilizado. – WordPress y Facebook se crean con eso. Ruby on Rails es relativamente nuevo, aunque se han construido / reconstruido varios sitios web populares como Twitter, Github, Goodreads, etc. Quora está construido con Python.
También necesita una base de datos en la mayoría de las aplicaciones, por ejemplo, para almacenar la lista de canales a los que se ha suscrito. Los lenguajes comunes utilizados para este propósito son MySQL , MariaDB, Oracle Database.
En los últimos tiempos (aunque no demasiado reciente), una tendencia (que es para el bien de los usuarios) es la de obtener más datos del servidor sin actualizar toda la página web (sí, tradicionalmente así es como normalmente se cargan los datos nuevos), que es decir, puede ver un nuevo canal en su televisor sin reemplazar todo el conjunto. Una de las formas de hacerlo es usando AJAX. Así es como los sitios como Facebook, Quora, etc. logran mostrarle continuamente más y más contenido a medida que se desplaza hacia abajo como un aluvión interminable de contenidos.
Y eso es más o menos sobre los conceptos básicos del desarrollo de back end , supongo. Después de haber pasado por todos estos idiomas, estará listo para desarrollar aplicaciones web complicadas y lidiar con los matices de las cosas.
Algunos buenos lugares para comenzar a aprender son:
Tutoriales web en línea de W3Schools (mi lugar para comenzar a aprender cualquiera de los idiomas anteriores)
Introducción al curso en línea HTML y CSS | Udacity (de aquí es de donde obtuve la analogía de la casa, aunque la extendí para el Backend)
Desbordamiento de pila (para todas sus dudas relacionadas con la programación)
Gracias por leer. Si te gustó, considera votarlo.