El camino es realmente muy largo y no es un truco particular o algo así para convertirse en un desarrollador web.
Supongo que eres nuevo en todo, pero si tienes algo de experiencia en programación, entonces también estará bien. Todo lo que necesitas es dedicación hacia tu objetivo. Permítanme elborar el procedimiento de manera gradual.
1. Aprenda los conceptos básicos de HTML y cree un portafolio simple propio.
2. Aprenda CSS y agregue un poco de estilo a su cartera.
3. Aprenda CSS3 e intente incluir alguna animación en él.
4. Aprenda los conceptos básicos de JavaScript, como la manipulación de DOM, e intente agregar algunas validaciones o intente controlar la animación que ya ha hecho con CSS3.
5. Aprenda y aplique API HTML5 como almacenamiento local, mapas, audio, geolocalización, etc. y necesitará algunos conocimientos de JavaScript, por eso le pedí que hiciera lo mismo.
6. Hasta ahora hemos terminado con un sitio de cartera muy básico con estilo, animaciones, API de ubicación, etc. Ahora aprenda sobre el control de versiones, como ‘git’ y envíe su código a un repositorio. Este podría ser el primer paso también. Depende de tu prioridad.
Ahora te darás cuenta de que has escrito muchas líneas y el sitio todavía no se ve muy bien, ¿no? Ahora hagamos algunas cosas perezosas y aprendamos algunos marcos.
7. Aprenda Bootstrap / Material / Foundation / Sementics e intente reemplazar los componentes con ellos. Te sugiero que vayas por Bootstrap.
8. Aprenda un marco CSS como SASS / LESS / SCSS. Le sugiero que elija SCSS, ya que es muy fácil de leer y comprender.
9. Aprenda acerca de jQuery e intente actualizar sus controles de animación usando también aprenda AJAX e intente hacer alguna solicitud asíncrona también. Pero espera, ¿es suficiente? Solo esta cantidad de JavaScript es suficiente para el desarrollo web.
NO.
Empuje su código a github y ahora tiene una cartera bastante atractiva.
Ahora aquí viene la mejor parte de tu vida como desarrollador web. Elegir sabiamente.
- Aprenda JavaScript orientado a objetos sin ES6 y domine los conceptos de prototipos, aplique, llame, enlace, esto, ámbitos, cierres, etc. e intente reflejar lo que aprendió en su cartera.
- Una vez que se sienta cómodo, aprenda ES6 e intente comprender cuándo usarlo, y actualice sus códigos sabiamente.
- Aprender mecanografiado. Si. Como desarrollador, confiar solo en JavaScript no ayudará. La mecanografía le ayuda a agregar tipos a su código JS existente y hace que sea mucho más fácil depurar y escalar.
- Ahora elija entre Angular / React / Vue.
- Angular es creado y respaldado por Google y es un marco MVC completo que puede usar para crear una aplicación web, una aplicación móvil que use iónicos, etc. pero es difícil de seguir como principiante.
- React es creado y respaldado por Facebook, y es una biblioteca de vista de Javascript. Utiliza el concepto de JSX y necesitará muchas bibliotecas de terceros como Redux, Flux, etc. para diferentes tareas, puede crear aplicaciones nativas usando React Native y React VR también es una tecnología emocionante que proporciona el equipo de reacción.
- Vue es uno de los nuevos marcos en el mercado, pero ya ha tenido un gran impacto en el negocio, y está dando un buen desafío tanto a Angular como a React y también tiene una buena comunidad. Elija React o Vue en mi consejo, pero trate de usarlos con Typecript. Actualice su código, agregue un formulario de comentarios, una pantalla de inicio de sesión, un perfil personal y una pantalla de blog a su cartera.
Ahora ha terminado con la parte de la interfaz. Pasemos al backend. Como necesitará algo para almacenar / validar los datos que envía desde el extremo del cliente. Tratarlos del lado del cliente no será la mejor idea. Hay muchas tecnologías disponibles para el backend. Te lo explicaré uno por uno. Pero antes de todo esto, aprenda sobre SOAP y REST (solo una lectura)
- Python: si no tiene experiencia en programación, Python será el más fácil de aprender y trabajar.
- Frasco: si desea crear una aplicación web rápida y de tamaño pequeño, elija un matraz.
- Django: si quieres crear aplicaciones web complejas. Proporciona estructura MVC. No es exactamente MVC, pero lo llamamos MVT, es muy fácil de configurar y aprender también.
- Tornado: si quieres lidiar con asíncrono, entonces ve por tornado.
Java: si ha realizado alguna codificación en sus días de escuela en Java, siga este camino para el desarrollo web de Java.
- Aprenda Servlet y JSP a fondo.
- Aprende a trabajar con Maven y Gradle.
- Aprenda ORM Hibernate.
- Aprende el Spring Framework.
- Aprenda Jersy, necesitará muchos de ellos especialmente para la depuración mientras trabaja con REST-API.
- Vaya por Spring Boot, o el marco de Grails funciona mejor con Groovy. Ve a jugar si tienes algo de experiencia con scala.
PHP: es un lenguaje realmente bueno en sí mismo. Y brinde un gran soporte para crear aplicaciones web complejas. Facebook usa PHP (Hack) para este propósito. Laravel, CakePhp, Codeigneiter son algunos de los muy poderosos Framework proporcionados por php.
Ruby: no soy un gran admirador de ruby, pero hay muchas buenas empresas que todavía prefieren ruby para el desarrollo de backend. Aprende Rails o Cinnatra como marco.
JavaScript: ok, ahora aquí está el punto. Supongo que podría tener mucha experiencia en JavaScript en el pasado mientras desarrollaba el front-end. Entonces, ¿por qué debería aprender un nuevo idioma si pertenece a esta categoría? Entonces JavaScript también lo ayudará con el backend. Aprenda Nodejs para esta tarea. Puede usar Express, Sails, Loopback, Hapi, etc. como marco. Pero intente usarlo con Typecript.
Recomiendo encarecidamente que elija Javascript o Java para este propósito.
Ahora actualice su cartera y proporcione un soporte de back-end para almacenar su contraseña de inicio de sesión y otros datos de su aplicación web. Pero espera. ¿Dónde deberías guardarlo?
Para este propósito necesitará una base de datos. Básicamente, hay dos tipos de bases de datos:
- SQL: es una estructura basada en tablas para almacenar sus datos. MySQL, Oracle, Postgres son algunos de los RDBMS más famosos del mercado.
- NoSQL: te recomiendo que trabajes con una base de datos NoSQL como Mongodb si trabajas con REST.
Aprenda a trabajar con sus API y agregue una conexión entre la base de datos y su back-end.
Hasta ahora creo que tendrás una aplicación web que funcione. Con múltiples módulos.
Aprenda sobre TCP / IP y otros protocolos de Internet y simplemente acostúmbrese a las redes. Los necesitará mucho una vez que comience a construir aplicaciones web complejas.
Aprenda sobre conceptos de seguridad cibernética como cifrado, hash, tokens, ssh, etc. y haga que su aplicación web sea segura. Conozca las pautas de seguridad proporcionadas por muchas grandes industrias. Aprende sobre los patrones de diseño. Trabaja mucho con las API.
Ahora su sitio seguro y de trabajo está listo para la implementación.
Aprenda sobre computación en la nube.
Hay muchos proveedores que le brindan una plataforma gratuita para alojar su sitio.
Aprenda a trabajar con Heroku, Amazon, Azure, Google Cloud Platform, etc.
Aprende sobre Docker y Kubernetes. Y aloja tu sitio.
Enhorabuena, ahora que ha aprendido mucho, ahora puede crear sus propias aplicaciones y contribuir al código abierto también, agregar estas habilidades a su currículum, adjuntar un enlace a su cartera y comenzar a solicitar puestos de trabajo.
Por favor, siga estas pocas instrucciones. Te salvará de muchas prácticas sucias. Debería haberlos mencionado al principio …
1- No sigas a w3schools.com para referencia como principiante. Sí, lo digo en serio. ¡Sigue los documentos! Cada tecnología proporciona buena documentación para referencia. Úselo, también intente conectarse en múltiples foros de chat y canales para discusiones durante su fase de aprendizaje.
2- Aprende haciendo, no memorizando. Inicialmente estarás bien con este último. Pero es casi imposible memorizar todas y cada una de las API y bibliotecas si no ha trabajado con ellas.
3- No pidas ayuda a tus compañeros sin intentarlo al menos tres veces. Intenta depurar lo que está mal en tu trabajo. Si aún no puede obtener el resultado esperado. Google está ahí para ti. También te ayudará con algunos recursos adicionales que también te ayudarán a mejorar tu habilidad.
4- No te unas a ningún campo de entrenamiento o instituto para un curso en particular. Es 2018 tenemos todos los recursos disponibles en internet. La razón por la que dije que no para los bootcamps en línea es porque su conocimiento sobre el dominio particular estará restringido.
5. Use Linux.
6. Acostúmbrate a escribir blogs técnicos.
7. Esté activo en el desbordamiento de pila para responder a otros.
8. Intente comprender e implementar el desarrollo basado en pruebas (TDD). Escribir casos de prueba mejora sus habilidades de desarrollo y también reduce la posibilidad de errores y faltan casos límite.
Gracias.