Déjame contarte acerca de las dos pilas de desarrollo web más populares y de código abierto.
LÁMPARA Y MEDIO:
LAMP significa L inux, A pache, M ySQL y P HP. Mientras MEAN significa M ongoDB, E xpressJS, A ngularJS y N ode.js.
- Quiero especializarme en lugar de ser un desarrollador de pila completa. ¿Cuáles son algunos nichos que debería mirar?
- Estoy atascado en lo básico del desarrollo web. ¿Cómo encuentran los desarrolladores ideas para su portafolio?
- Si escribo un programa para enviar muchos correos electrónicos, ¿se clasificará como spam?
- Tengo una lista de 50,000 URL de imágenes de productos. Necesito obtener las dimensiones (alto y ancho) para cada una de estas URL de imágenes en una hoja de cálculo ordenable. ¿Existen herramientas para los no programadores que harán esto?
- Quiero crear un sitio web donde publique blogs sobre mis proyectos personales. Además, deseo usar Python / Django. ¿Qué base de datos debo usar?
En la pila MEAN , el sistema operativo Linux se reemplaza con cualquier sistema operativo en el que Node.js pueda ejecutarse. Esto incluye MS Windows, Mac OS y Linux. El servidor web Apache se reemplaza con el Node.js. MySQL se reemplaza con MongoDB , que es una base de datos No-SQL. El lenguaje de programación del lado del servidor PHP se reemplaza con el ExpressJS , que básicamente proporciona una capa delgada de características sobre Node.js. Aquí hay un punto clave; ExpressJS y Node.js en combinación son herramientas para ejecutar JavaScript en el lado del servidor.
Como la pila LAMP se puede cambiar a una pila WAMP reemplazando Linux con Windows, el PHP se puede reemplazar con Python. MongoDB se puede usar con la pila LAMP en lugar de MySQL. Lo que estoy tratando de decir aquí es que podemos mezclar diferentes tecnologías y crear una nueva pila.
Entonces, si tiene un buen dominio sobre las tecnologías que mencionó en la pregunta, puede crear una aplicación de extremo a extremo utilizando Node (con express), Angular y Mysql. Sin embargo, siempre puede optar por MEAN ( aprenda Mongo, tiene poca curva de aprendizaje ), facilita la vida de los desarrolladores.