Sé C y C ++, y he estado haciendo codificación desde 2011, pero no tengo confianza en ello y creo que mi codificación no es buena. Este verano quiero aprender Java. ¿Debo aprenderlo o no, y cómo puedo mejorar mi pensamiento lógico y velocidad de codificación?

Gracias por A2A …

Convertirse en un buen programador es solo el proceso de encontrar soluciones, practicarlas y obtenerlas de forma natural.

Desarrollar razonamiento lógico.

1) Aprender Algoritmos y Matemáticas Discretas
2) Comience a encontrar varias soluciones alternativas para el mismo problema.
3) Resuelva los rompecabezas de lógica y comience a calcular el número que formará su proceso de pensamiento
4) Prepárese y participe en la codificación competitiva como SPOJ, TopCoder, etc.

Algunos cursos pueden ser de utilidad para ti.

  • En coursera
    • Introducción a la lógica
    • Algoritmos I y Algoritmos II
    • Piensa otra vez: cómo razonar y discutir
  • En Udacity
    • Algoritmos

Ahora, con respecto a Java, mi opinión personal es que primero domina C / C ++ cualquiera de su elección, ya que le dará confianza y siempre es mejor tener un dominio en un idioma que solo el de muchos.

PD: Puedes elegir Java como tu lenguaje sobre C / C ++ y comenzar de nuevo, pero Java te permite ser un poco más descuidado cuando codificas debido a toda la ayuda que recibes de los errores de tiempo de ejecución, las excelentes herramientas y las excelentes bibliotecas que tienes.

Es un pensamiento común para todos los creadores. solo sigue actualizando los conocimientos sobre su idioma favorito. Para mejorar su pensamiento lógico, siga probando simulacros y practíquese en su idioma (favorito). Mi opinión es que no elija java, es mejor ir con lenguajes con prefijo C y C porque el programa java requiere más memoria, el programa java puede ejecutarse a la misma velocidad que el programa creado con lenguajes con prefijo C o C, pero requiere 80% más de memoria .

¿Debo aprenderlo o no, y cómo puedo mejorar mi pensamiento lógico y velocidad de codificación?


Mi respuesta no es. Si no tienes la habilidad de pensar lógicamente, aprender un lenguaje similar * no te ayudará. Leer / escribir sobre algoritmos o trabajar en razonamiento es más útil.
* Lo sé, la gente va a decir que C ++ y JAVA son la diferencia. ¿Pero cuanto? ¿Tan diferente como C ++ y Coq / Haskell / Scheme / Perl?

¿Debo aprenderlo o no, y cómo puedo mejorar mi pensamiento lógico y velocidad de codificación?


Mi respuesta es: no. Si no tienes la habilidad de pensar lógicamente, aprender un lenguaje similar * no te ayudará. Leer / escribir sobre algoritmos o trabajar en razonamiento es más útil.
* Lo sé, la gente va a decir que C ++ y JAVA son la diferencia. ¿Pero cuanto? ¿Tan diferente como C ++ y Coq / Haskell / Scheme / Perl / Prolog? Si quieres aprender más lenguaje, no aprendas algo similar. Como dice Alan Perlis, no vale la pena conocer un lenguaje que no afecta la forma en que piensas acerca de la programación”. Si quieres aprender un lenguaje de programación diferente, no aprendas algo similar.

Recomendaría ver algunos buenos videos que tratan con la programación.

SICP y Knuths conferencias en particular.

Solo se mejora la codificación codificando más. Únase a cualquiera de los sitios de concurso de códigos como HackerRank, CodeChef o TopCoder y practique.

Topcoder es el mejor, puedes leer el análisis de los problemas, puedes ver otras soluciones y practicar problemas reales en la sala de práctica. C #, C ++, Java, todos pueden ser utilizados.

Si está frustrado por C ++, mejor cambie a C # en lugar de a Java. Java es una trampa para los principiantes.

Prueba harvard cs50 curso