¿Necesita tener ciertas habilidades cognitivas para dominar la parte de metaprogramación de C ++ o alguien puede lograr una buena comprensión del mismo a través del trabajo duro?

Hola. Quiero hacerle una pregunta muy simple: “¿Cómo aprender un nuevo idioma (que usted habla, no que codifica)?” La respuesta más asumible sería escuchar a los demás, preguntarles el significado, preguntarles cómo pronunciarlos, y lo más importante, probándote a ti mismo. Lo mismo es con la programación. Lees, entiendes, preguntas a los demás y practicas .

En cuanto a las habilidades “cognitivas”, uno tiene que hacer un trabajo duro para lograr eso también. Entonces, si estás pensando que la programación requiere habilidades especiales, créate una persona especialmente capaz. Pocos momentos antes de ver su pregunta, visité Quora, y adivina qué, para aprender algo de estructura de datos. Entonces esta es la cosa. Crees, prosperas duro, lo dominas.

while (! (success = try ()));

Feliz codificación.

-H.

Estoy teniendo esta discusión abundante durante una serie de semanas con otro desarrollador. Él dice algo parecido a “una buena comprensión del diseño puede permitirle ver mal código de bueno, identificar buenos patrones sobre malos”, mientras que soy de la opinión de que una base sólida en matemáticas es fundamental para comprender algunos de los conceptos que trabajo. Me encanta el por qué y creo que conduce a una comprensión de la resolución de problemas. Me gusta la teoría de juegos, y creo que se presta a la programación.

Sin embargo, la respuesta corta es no. No necesita todo eso para comprender las estructuras más eruditas. Necesita tiempo, algo de tutoría, algunas herramientas y la capacidad de investigar y probar sensatamente.

Necesitas algún tipo de habilidad para practicar y traducir esa práctica en buenos hábitos y sería una buena idea si leyeras y escucharas todo y aprendieras a ser un buen filtro y entendieras lo que es ser un pensador plural.

Los conceptos de programación más abstractos, más personas se alejan de ellos. Me gustaría creer que cualquiera puede aprender cualquier cosa a través de un esfuerzo constante. La realidad es que algunas personas carecen del impulso para aprender y otras no tienen aptitud. Dicho esto, si no tienes aptitud para las abstracciones, me niego a creer que no puedes aprender el material. Solo tomará más tiempo.

More Interesting

¿Existe una desconexión entre los desarrolladores y los usuarios finales? ¿Por qué o por qué no?

¿Hay alguna computadora portátil específica que sea mejor para el desarrollo de software?

¿Es cierto que el desarrollo de software es un trabajo sin salida después de los 30, y que la mayoría de los desarrolladores de software solo pueden sobrevivir al iniciar sus propias empresas?

¿Cómo es un desarrollador de software que vive en Manhattan?

¿Debería aumentarse el pago para los desarrolladores de Android en lugar de los desarrolladores de iOS, ya que la mayoría de los desarrolladores de iOS necesitan admitir dispositivos fabricados por Apple solo mientras que los desarrolladores de Android deben admitir dispositivos fabricados por tantos proveedores?

¿Cuál será el futuro de un desarrollador de software?

¿Qué aspectos debo tener en cuenta al decidir aceptar un puesto de gerente de desarrollo de software en Amazon (Seattle) en el equipo de AWS?

¿Cuáles son los trucos para convertirse en un buen desarrollador de software?

¿Qué debería necesitar para el desarrollo de Android?

¿Cuáles son las diferencias en el crecimiento profesional como desarrollador de software y probador de software?

¿Qué compañía desarrolla software de reserva de taxis en los Estados Unidos?

Teniendo en cuenta el escenario político actual en los EE. UU. Y el creciente odio hacia todos los inmigrantes (especialmente H-1B), ¿por qué un desarrollador de software de la India (educado en Estados Unidos) debe permanecer en los EE. UU.

Es mi primer día trabajando como desarrollador. Que debo saber

¿Qué tan cerca estamos técnicamente de desarrollar software que pueda escribir software, esencialmente reemplazando la mayoría de los trabajos de programación y desarrollo de software realizados por humanos?

¿Fueron sus proyectos de programación personal el factor principal para obtener su primer trabajo como desarrollador de software?