Hola,
En primer lugar, felicidades por tratar de pensar en el crecimiento incremental para usted. Abordaremos esta pregunta con un punto de vista diferente. Presentaré algunas preguntas y posibles respuestas que pueden llevarlo a encontrar las direcciones correctas adecuadas y apropiadas para usted. Tengo mi mayor experiencia en desarrollo en PHP, por lo que mis recursos estarían acostumbrados a PHP. Pero intentaré enumerar los recursos más generales posibles.
Si quieres crecer técnicamente, hazte las siguientes preguntas:
- Estaba viendo a algunas personas en el código de YouTube, los temas de WordPress y todos sus archivos .PHP tenían HTML. ¿Por qué no usan .HTML para el tipo de archivo?
- Mi departamento en mi universidad aún no tiene un sitio web, así que hice un borrador en WordPress solo por diversión. Ahora puede ser compatible. ¿Cuál es mi papel ahora?
- ¿Qué puntos debo tener en cuenta al diseñar un sitio web receptivo?
- Quiero ser desarrollador de Full Stack WEB algún día. Quiero centrarme mucho en JavaScript, Node.js y MEAN Stack, ¿es una buena inversión de tiempo?
- Decidí que quiero aprender PHP. ¿Para qué se usa PHP exactamente en el desarrollo web front-end?
1. ¿Puedo diseñar aplicaciones orientadas a objetos adecuadas?
– OOD es lo básico para el diseño de software. No solo lo ayudará a diseñar aplicaciones adecuadas, sino que también lo ayudará a mejorar su conocimiento y enfoque conceptual. Como desarrollador de PHP durante los últimos 3 años, supongo que ha estado en contacto con muchos marcos. Pero analice usted mismo si ha realizado aplicaciones basadas en el diseño adecuado. Si no es así, comprenda la arquitectura subyacente de los marcos populares como Laravel, Symfony, etc. Lea Patrones de diseño: Gang of Four, un libro definitivo que lo guiará a través del viaje para comprender los patrones de diseño. Lea, aplique y practique OOD. Te ayudará a tener una experiencia. A veces, tienes ganas de dejar de fumar y simplemente lo dejas pasar. Pero quédese e invierta tiempo. Eventualmente, saldrás como un hombre mejor. Comprenda los principios de SOLID e intente aplicarlos. Una vez que domine OOD, puede cambiar a cualquier lenguaje orientado a objetos, ya que los conceptos seguirán siendo los mismos; solo cambiará la sintaxis. Entonces, hagas lo que hagas, maestro OOD. Algunos recursos que me ayudaron
– La OOP en PHP
– Conceptos orientados a objetos
– Convertirse en un profesional de PHP: el eslabón perdido
Además, no tengas miedo de leer mucho código. Leer el código de otras personas puede enseñarle mucho sobre cómo hacer bien las cosas en la práctica. ¿Quizás uno de los paquetes en la Liga PHP? La liga de paquetes extraordinarios
Puedo recomendar algunos libros generales como “Head First Design Patterns” o “Patterns of Enterprise Application Architecture”. La “refactorización” de Fowler también es una gran lectura. Desearía haber leído el Programador pragmático antes en mi carrera, es otro libro realmente bueno. Más adelante, Domain Driven Design es un clásico por una razón. Desearía tener mejores consejos aquí, pero en última instancia, la experiencia es el mejor maestro. Leer el código fuente es otra gran técnica.
2. ¿Entiendo los algoritmos e intento hacer uno para superar los problemas lógicos diarios en el desarrollo?
Esta es la segunda parte más importante para el desarrollo técnico. Créame, se siente fuera del mundo cuando genera una lógica para resolver algún problema y funciona de manera eficiente. Pero, hay mucho trabajo duro detrás de esto. Hay una creencia primaria de que la lógica está en mente y proviene del don del intelecto. Lo creo, pero con el enfoque adecuado y el trabajo duro podemos mejorarlo. Estudie tantos algoritmos como pueda. Luego comience a resolver problemas relacionados con ellos en HackerRank, HackerEarth | Ayudamos a los desarrolladores a encontrar excelentes trabajos, USA Computing Olympiad, topcoder.
El enfoque general que prefiero al estudiar algoritmos es:
a. Comprender el enunciado del problema (el más importante)
si. Intenta crear un algoritmo tuyo para resolver el enunciado del problema
do. Ahora, lee la solución y comprende dónde te equivocaste
re. Analice su enfoque y comprenda los errores en el enfoque que está utilizando para la lógica.
mi. Repita los pasos anteriores para siempre 😛
Los algoritmos son divertidos de aprender y le dan a nuestro cerebro mucho ejercicio. Forman la base de su lógica. No te desmotives. Solo intenta, intenta y prueba. Te tomarás tu tiempo. Pero, si practicas, intentas y analizas superarás 🙂
3. ¿Estoy tratando de aprender todos los idiomas?
No te enfocas en un idioma, te enfocas en el contexto. Cada idioma es, por defecto, uno de los mejores en un contexto dado.
Por ejemplo:
- Te interesa el procesamiento de datos. Desea encontrar patrones, analizar números y descubrir cosas que otras personas se perdieron al comparar cantidades de datos absolutamente brutales. Te enfocarás en uno de los idiomas que fue diseñado específicamente para eso, algo como The R Project for Statistical Computing o Scala.
- Desea crear sitios web, de arriba a abajo. Desea saber qué se necesita para poner en marcha un proyecto y desea poder hacerlo todo usted mismo. Te enfocarás en algo como PHP, JavaScript, HTML, CSS.
- Desea ser un experto en todos los oficios y necesita un lenguaje que no solo pueda aplicar a todos los contextos, sino que pueda hacerlo fácilmente e incluso transferir conocimientos a otros sin mucha dificultad: elegirá Python o Dart.
- Desea crear imágenes maravillosas con código. Te interesan los fractales, 3D, ecualizadores, espectáculos de luces. Irás a Procesar, o quizás juegues con JavaScript y WebGL, quizás busques algo elegante como ThreeJS.
- Desea crear juegos basados en el navegador: utilizará ThreeJS, HTML5, CSS y / o Dart.
- Desea crear juegos de computadora de escritorio instalables. Usarás C ++ o Java.
- Desea crear aplicaciones móviles. Utilizará HTML5 + CSS + JavaScript para todas las plataformas, o desarrollará aplicaciones nativas en Objective C para dispositivos Apple y Java para Android.
Y así sucesivamente … hay más contextos, pero entiendes lo esencial. En mi caso, me gusta poder presentar una idea RÁPIDO. Me gusta el hecho de que puedo pasar de cero a un producto completo y completamente probado en una semana. Es por eso que elegí los lenguajes web: HTML, CSS, JS, PHP, Dart. Su caso puede diferir.
No intentes atraparlos a todos: ser un maestro de unos pocos es mejor que ser un gato de todos los oficios. Una vez que encuentre su contexto, encontrará su idioma.
4. ¿Debo encontrar un mentor? POR QUÉ ?
SÍ.
Porque, un mentor puede guiarte adecuadamente al núcleo. Un mentor le dará un camino por el que pasar y siempre lo guiará. Obtendrá una dirección sobre qué evitar y por qué. Facilitará su proceso de aprendizaje y también lo sujetará con su experiencia. Nunca subestimes el poder de un compañero.
5. ¿Te gusta?
Intenta divertirte. Pasé por una fase en la que intenté aprender todo lo que pude lo más rápido que pude y fue productivo, pero también me estresó mucho, por lo que recomendaría un poco de equilibrio. Si no sonríe cuando lee un libro o algún código por la noche, quizás intente un enfoque diferente. 🙂
6. ¿Me conecto con mis compañeros u otros profesionales en todo el mundo?
Este es el aspecto más descuidado pero importante. Conéctese con sus desarrolladores pares. Comparta su trabajo, discuta enfoques y asista a conferencias a nivel mundial. Esto no solo lo ayudará a conectarse con otros pares, sino que también lo ayudará a comprender los enfoques seguidos en varios lugares. Y descanse, todo es experimentar, comprender todos los enfoques y elegir lo que más le convenga. Contribuya al código abierto, ya que lo ayudará a aprender a contribuir a la comunidad de desarrolladores.
Algunos otros consejos que creo que deberían considerarse:
1. No te estreses en el aprendizaje. Comprenda la razón por la que está haciendo algo, analice y luego actúe
2. Recuerde siempre: “El propósito de la vida es una vida de propósito”
3. Conceptos, desarrollo y lógica es un arte. Si no disfruta de la creatividad mientras aprende o implementa, ¿por qué lo hace? Solo deja que llegue el momento y disfrútalo.
4. Conéctese con otros pares en todo el mundo. Discutir ideas. compartir problemas y reunirse para disfrutar. Como dijo Chetan Bhagat: “No hables en serio, sé sincero”
Espero que esto ayude y les deseo la mejor de las suertes en el futuro. Puede ser una carrera difícil pero también excelente. 🙂