Si ha estado programando en un lenguaje durante algunos años pero se da cuenta de que ha perdido conceptos básicos, ¿cómo da un paso atrás y aprende lo que ha perdido?

Me enseñé PHP y luego C #, trabajé durante 6 años en 2 empresas como programador y luego decidí; Necesitaba estudiar.

Probablemente como tú, y definitivamente como mis compañeros en ese momento, fui al estudio pensando que ya sabía casi todo lo que necesitaba saber sobre programación, y si encontraba algo que no sabía, sería fácil de aprender porque Me encantó la programación y me enseñé cosas nuevas todo el tiempo, así que realmente, si tuviera que estudiar, solo sería por el aumento de sueldo que recibiría.

Me equivoqué, la mayor parte del primer año y una buena parte del segundo año fue fácil, pero fue el primer año el que más me enseñó. La POO adecuada, los patrones y prácticas de diseño, los algoritmos … mirar hacia atrás en mi antiguo código es difícil.

Es una decisión importante que tomar, pero si tu objetivo es hacer una carrera fuera de la programación, también es una decisión fácil de tomar, serás un programador completamente diferente cuando termines.

Así que estudiar fue mi solución, realmente no puedo recomendar ningún libro, pero Diseño y Patrones Orientados a Objetos: Cay S. Horstmann: 9780471744870: Amazon.com: Los libros fueron uno de los mejores libros que encontré para aprender diseño de POO. tenerlo en mi estantería a pesar de que da ejemplos en Java, se puede aplicar a cualquier lenguaje OO.

Los libros son buenos para un aprendizaje más profundo del que obtienes al probar cosas tú mismo o tutoriales. Cuando ya conoces grandes porciones, puedes hacer algo realmente rápido “sí, sí, sí” leyendo al principio con un ocasional “sí, sí, sí … espera, ¿qué?” momento.

Usted debe obtener un trabajo de la entrevista. Este libro es genial “Programación de entrevistas expuestas: Secretos para conseguir su próximo trabajo”.
pd: deberías aprender más cosas rompiendo la entrevista. Sabrás el nivel de nivel que has dominado.

Nunca es tarde para volver, revisar y corregir sus fundamentos. También trate de ser proactivo y ofrezca poca pasión en la codificación de Java del día a día. Continúe visitando los sitios que tienen preguntas de la entrevista de Java, no para las preguntas, sino para obtener todo lo que es relevante y no está al tanto. Únase a algunos grupos de Java en Linkedin y Quora. Siga algunos blogs de programación. Haga una rutina para revisarlos regularmente. Te ayudará seguro. Buena suerte.

Le sugeriría que guarde un libro fácil de Java junto con usted mientras está programando y que se refiera a todo tipo de conceptos que está utilizando en el libro. No solo mejorará sus conceptos existentes, sino que también mejorará sus habilidades.

No estoy seguro de si esto califica como avanzado, pero creo que el curso OOP de Stanford hace un buen trabajo con Java. Trabajar a través de las notas allí podría ayudar:

Programación orientada a objetos