¿Cuáles son las partes esenciales de una pila moderna de desarrollo web?

Las pilas web simples y modernas generalmente se crean de la siguiente manera:

  • Bases de datos : las bases de datos se utilizan para almacenar datos de forma permanente o temporal para su aplicación. Puede elegir una base de datos relacional, una base de datos de documentos, una base de datos de árbol, una base de datos de valores clave, etc. Todo se reduce al tipo de datos que necesita almacenar y al tipo de operaciones que necesita realizar en los datos.
    Casi siempre tendrá una base de datos, y es bastante común usar más de un tipo de base de datos en un proyecto para diferentes tipos de datos.
  • Backend : necesitará un código de backend para servir sus archivos y datos. Esto se puede basar en varios lenguajes: Python, Ruby, PHP, C #, Java, JavaScript y varios marcos que generalmente proporcionan algunas funcionalidades y bibliotecas comunes, como: Django, Rails, Symfony, Zend, CakePHP, IgnitePHP, Play Framework, Node.js, etc. Además, puede encontrar bibliotecas que realizan tareas comunes en casi cualquier idioma.
    En el pasado, casi toda la lógica y funcionalidad del sitio web se implementaba en el backend. Sin embargo, se requiere que las aplicaciones web modernas sean muy rápidas y receptivas, y generalmente ofrecen una gran cantidad de funcionalidad en el lado del cliente, sin actualizar la página. Por lo tanto, algunas aplicaciones web más nuevas se apoyan en el backend y gruesas en la interfaz.
  • Frontend : casi siempre basado en una combinación de HTML, JavaScript y CSS. Comúnmente, HTML generalmente define el contenido de la página, JavaScript define la funcionalidad y CSS define de manera óptima el estilo, el diseño y el diseño. Existen varios motores de plantillas HTML y CSS, ya sea en el lado del cliente (el navegador) o en el servidor lado (el backend). Es principalmente una cuestión de gusto personal. También hay muchas bibliotecas para JavaScript. jQuery le permite manipular la página fácilmente, el subrayado permite operaciones comunes. Hay bibliotecas para casi cualquier cosa. Backbone.js y Ember.js permiten algún tipo de marco para ayudar a mantener su código más organizado.

Hoy en día, puede mezclar casi cualquier backend con cualquier base de datos común, y puede usar cualquier biblioteca o marco que desee en la interfaz, independientemente del backend y la base de datos.
En pocas palabras, esta es mi recomendación:

  1. Elija una base de datos basada en el tipo de datos que necesita almacenar y el tipo de operaciones que necesita realizar (tabla, documentos, árboles, pares, etc.).
  2. Elija un idioma de back-end con el que esté más familiarizado y lo haga feliz. Realmente no importa. Una vez que elija un idioma, se prefiere usar un marco para evitar el código repetitivo y mantener las cosas más seguras y estructuradas. Nuevamente, es una cuestión de sus necesidades y preferencias personales.
  3. Construya la interfaz utilizando HTML, JavaScript y CSS. Manipular el HTML usando JavaScript es engorroso, por lo que te recomiendo que uses una biblioteca como jQuery, Zepto o similar para hacerlo. Si cree que tendrá varios miles de líneas de código JS, considere usar un marco MVC como Angular.js, Backbone.js o Ember.js. Si su sitio es HTML o CSS pesado, considere usar un motor de plantillas HTML o un lenguaje como SASS / LESS.
  4. Según las bases de datos y el backend que haya elegido, descubra cuál es el mejor lugar para alojar su aplicación. Varias opciones comunes son Heroku, Amazon EC2, Rackspace Cloud, Google AppEngine y EngineYard

Espero que esto responda a su pregunta.

Aquí hay una placa frontal que tiene todo lo que necesita para arrancar la aplicación de su navegador. Se basa en una buena combinación de marcos y bibliotecas js modernos como AngularJS, Bower, Gulp, Jade, Sass (con mapas de origen), browserSync.

vhpoet / frontend-boilerplate

More Interesting

Cómo enviar datos de un controlador a otro controlador en AngularJS

¿Es posible usar Redis como caché de resultados de la base de datos?

¿Cuáles son los mejores recursos (libros, clases, otros) que los cofundadores no técnicos pueden usar para ponerse al día sobre cuestiones tecnológicas relacionadas con las nuevas empresas web?

¿Cuál es la diferencia entre Angular y React?

En la planificación de la capacidad de infraestructura para las operaciones web, ¿qué son las pruebas de resistencia y por qué es importante?

¿Cuál es la mejor empresa de desarrollo de ASP.NET en Canadá?

¿Dónde puedo aprender en línea teoría de la informática para el desarrollo web moderno?

¿Puede alguien decirme qué tipo de empresa de desarrollo web en Singapur es mejor para su servicio?

Odesk: ¿cuán generalizados están los softwares de autotipos y autoclicks?

¿Cuál es la forma más fácil / rápida de aprender HTML, CSS, Javascript y PHP en línea?

Cómo saber qué hará hacer clic en cierta cosa en una página web mirando 'inspeccionar elemento'

Cómo abordar el problema de los derechos de autor si tengo la intención de iniciar un sitio web para mezclas de DJ

¿Cuál es la mejor manera de aprender los conceptos básicos de SEO para un sitio creado en WordPress?

¿Cuáles son algunas buenas herramientas o servicios de prueba de software de 'grabación y reproducción' que son especialmente buenos para la prueba funcional de la interfaz de usuario?

¿Cuál es la mejor manera de diseñar una página web para un principiante?