¿Cuáles son las formas de mejorar nuestras habilidades de codificación?

A medida que el mundo se vuelve más conectado y la tecnología continúa evolucionando, su éxito como programador depende de su capacidad de aprender y adaptarse. Cualquier desarrollador experimentado sabe que siempre debe buscar formas de mejorar sus habilidades de programación. En ese sentido, ya sea que sea nuevo en la industria o un veterinario, lo tenemos cubierto con técnicas eternas para la mejora continua.

1. Conoce tu estilo de aprendizaje

Todos aprendemos de manera diferente. Algunos aprenden mejor leyendo un libro. Algunos prefieren experiencia práctica o necesitan la estructura proporcionada por un curso formal. Afortunadamente, hay muchos recursos de aprendizaje gratuitos o de bajo costo a solo una búsqueda rápida para que no tenga que perder su tiempo en métodos que no le convienen. Si usted Aquí hay algunos sitios excelentes para comenzar.

  • Código escolar
  • Udacity
  • Safari Books Online
  • Lynda.com
  • Vista plural
  • Coursera
  • Confreaks.TV
  • Libros de programación gratis

2. Aprende de los demás

Una de las formas más rápidas de mejorar su conjunto de habilidades es aprovechar el conocimiento y la experiencia de las personas que ingresaron al campo antes que usted. Si bien un mentor formal es un gran activo, no es obligatorio. Te sorprenderá lo ansioso que está ayudar a muchas personas a ayudar. Es halagador que te pidan que compartas experiencia.

3. Use la regla de los 15 minutos

Si ha estado atrapado en un problema durante más de 15 minutos, dé la vuelta y pregúntele a un compañero de trabajo cómo resolverían el problema, o describa su problema en detalle en Stack Overflow. Independientemente de a quién le pregunte, el solo hecho de describir su problema en detalle lo coloca en el camino hacia la solución. La mayoría de los problemas no tienen precedentes, y alguien estará encantado de compartir su experiencia o formar un equipo sobre el tema.

4. Trabajar en proyectos reales.

¿La manera segura de mejorar? Practica y desafíate a ti mismo. Esto significa que siempre deberías estar trabajando en un proyecto de codificación. Incluso si tiene un trabajo de programación a tiempo completo, el trabajo puede no ser lo suficientemente desafiante para desarrollar sus habilidades, así que encuentre algo que lo haga. aborde esa idea tonta de la aplicación que su amigo sigue lanzándole.

5. Mira debajo del capó

La mayoría de los programadores dependen en gran medida de marcos como Spring, Rails o Angular para hacer el trabajo. Si bien estos marcos promueven la productividad, también son un tesoro de ejemplos e inspiración que puede aplicar a sus propias soluciones. Al principio puede sentirse perdido, pero con el tiempo aprenderá a navegar grandes bases de códigos, identificar patrones de diseño y comprender rápidamente el código.

6. Comparte lo que aprendes

Como dice el viejo refrán, la mejor manera de aprender es enseñando. Cuando aprendas algo nuevo, no te lo guardes. Compartir no solo refuerza lo que aprende, sino que demuestra sus habilidades a futuros empleadores y clientes. ¡También te hace sentir bien!

7. Haz pequeñas mejoras diarias

Nadie domina la programación de la noche a la mañana. Se necesita práctica constante y deliberada. Tómese unos minutos para reducir la velocidad y realice una pequeña mejora todos los días. Podría ser aprender una nueva función de idioma, leer una página del manual o cambiar la configuración de su editor para agregar un acceso directo para una tarea común. Cuando se agrava con el tiempo

8. Explore

Tómese un tiempo de espera cada semana para explorar nuevos idiomas, tecnologías y fuerzas externas que dan forma a nuestro mundo. El conocimiento y las habilidades no existen en el vacío.

Resumen

No hay secretos para convertirse en un mejor programador. Se necesita paciencia, práctica y perseverancia. Mantenga la curiosidad, diviértase y nunca se enorgullezca demasiado de pedir ayuda. La recompensa está en el viaje y disfruta cada parada en el camino. ¡Feliz codificación!

Siga: – @CodingLio: aprenda a programar con profesionales

Descargo de responsabilidad: mi experiencia práctica en programación es de solo 4 años. No soy un experto en lenguajes de programación. Pero creo que sé cómo mejorar, ya que he seguido algunos pasos y han dado resultados en mi carrera. Sin embargo, estos siempre se pueden personalizar según la habilidad y la velocidad de aprendizaje de cada persona.

El concepto fundamental de codificación es este:

Modelando una solución de la vida real en un lenguaje que las computadoras entiendan mejor.

¡Es así de simple!

¿Entonces cuál es el problema? ¿Por qué no hay tantas personas GRANDES programadores?

Respuesta: FAE: error de atribución fundamental (¡No intentes aplicar cada palabra de esta wiki! Solo entiende la esencia para seguir el resto de la respuesta).

Lo que quiero decir es que la programación es un tema vasto y hay matices que entendemos solo cuando los encontramos. La programación no es un “tema” exacto. Es más un marco que puede aplicarse para resolver diferentes problemas de diferentes maneras. Por lo tanto, hay múltiples interpretaciones de la programación: ¿qué es? ¿Cómo se hace? – y el debate generalmente nunca termina sobre lo que es mejor.

Dejame darte un ejemplo:

La conversión de tipos es un concepto muy simple y estoy seguro de que lo sabe.

En Java, dado que hay entidades llamadas “Objetos”, la conversión de tipos se vuelve un poco sofisticada. Básicamente, un entero se puede representar como int (tipo primitivo, igual que C) e Integer (representación de objeto denominada como tipos de envoltura ). Entonces, cuando intentas comparar dos enteros, se puede hacer de 3 maneras:

forma 1: int == int -> Funciona como en C
forma 2: int == Entero -> Funciona porque Java desempaqueta (tipo de conversión de tipos) tipo envoltorio a tipo primitivo y compara.
forma 3: Entero == Entero -> no funciona! Se deben comparar dos objetos con un método .equals (Object).

Entonces, la forma correcta de comparar dos tipos de envoltorios enteros es:

Integer.equals (Integer) -> ¡Funciona!

Por supuesto, esto está presente en las especificaciones de Java. Pero casi nadie los lee de forma proactiva. Debido al boxing / un-boxing, no es raro hacer un Integer == Integer y luego obtener un error lógico. Tenga en cuenta que hacer un número entero == entero no arrojará un error de tiempo de compilación. Pero en lugar de comparar el valor entero exacto, compara la ID de los objetos. (Para su información: en Java, cada objeto tiene una ID llamada hashcode).

Entonces, ¿qué pasó aquí y cómo se relaciona con la mejora de la codificación?

Debido al boxing / un-boxing de java, existe una atribución errónea subyacente de que Integer == Integer puede funcionar ya que se puede esperar que JVM desempaquete ambos tipos de contenedor o uno de ellos (lo que lo convertirá en forma 2: int == Entero). No digo eso, todos pasarán por esto. Pero creo que muchos de los programadores promedio lo hacen.

Son estas simples atribuciones erróneas y dificultades que impiden nuestra comprensión precisa de un lenguaje de programación. ¡Aprender muchos lenguajes de programación no es una solución! Es como si le estuvieras dando diferentes y muchas tabletas de curar el dolor de cabeza a un paciente con hepatitis. No va a resolver el problema central.

Con el tiempo, con experiencia y con un aprendizaje en profundidad seguido de ideas, mejorará sus habilidades de codificación. Pero si desea acelerar el proceso de mejora, solo hay una forma de hacerlo:

Práctica: resuelva más problemas utilizando las mejores prácticas de codificación correctas en CUALQUIER lenguaje de programación.

Actualización: Mi pregunta sobre el ejemplo citado anteriormente en Quora: ¿Por qué el operador == no auto-encajona o desempaqueta el tipo envoltorio al tipo primitivo?

Según yo, uno puede garantizar varias cosas para mejorar sus habilidades de codificación.

1. Optimización : para optimizar códigos debemos conocer varios algoritmos y aplicar el mejor algoritmo para nuestro código. Al igual que DP, varios métodos de clasificación y varias otras formas. La mejor manera de aprender estas cosas son los libros y editoriales de varios sitios de programación competitivos como HackerRank, codechef, etc.

2. Habilidades de depuración : debemos conocer los errores en nuestro propio código. Ayuda mucho cuando somos buenos para depurar nuestro propio código. La mejor forma de depurar es ejecutar en seco su código con algún ejemplo de muestra e intentar descubrir nuestro error.

3. Práctica : Debemos hacer mucha práctica desde sitios de programación competitivos (algunos ya se mencionan). ¡Esto es lo más importante!

4. Conocimiento : lee tanto como puedas. Cosas como estructuras de datos, programación dinámica, programación paralela, etc.

gracias por A2A

Entonces, dices que conoces C y oh, también conoces C ++. Veamos cuántas de las siguientes preguntas puede responder:

1. ¿Cuál es la diferencia entre static_cast y dynamic_cast?
2. ¿Por qué reinterpret_cast no es seguro?
3. ¿Por qué el tamaño de una clase vacía es 1?
4. ¿Por qué el tamaño de una clase vacía heredada 4?
5. ¿Cuál es la ventaja de un destructor virtual puro?
6. ¿Cuál es la diferencia entre std :: hashmap y std :: map?
7. ¿Cómo ordenar una matriz de objetos de clase usando std: sort? ¿Qué son los punteros de función?
8. ¿Podemos usar el operador ternario como un valor l?
9. ¿Qué es getchar_unlocked y cuándo usarlo?
10. ¿Qué es sync_with_stdio?

bueno, si no puedes responder algunas de las preguntas anteriores, tienes mucho que aprender.

En general, las habilidades de codificación se mejoran automáticamente a medida que escribe más programas. Si tienes un buen conocimiento de un idioma en particular, y por bueno quiero decir realmente bueno, tu habilidad de codificación mejorará a medida que practiques más. Pero un consejo: ¡no comience con ningún otro lenguaje de programación a menos que domine C ++! Spoj, codchef, etc. son algunos buenos lugares para practicar.

Lea sobre estructuras de datos y algoritmos. Más que las habilidades de codificación, el algoritmo y la habilidad lógica importan. Conocer muchos idiomas no lo convertirá en un gran programador, ¡dominar un idioma con un gran conocimiento de estructuras de datos y algoritmos lo hará!

C y C ++ tienen dentro de ellos los conceptos que utiliza una gran variedad de lenguajes de programación de computadoras, por lo que dominar uno o ambos, incluido saber cómo escribir código fácil de mantener y a prueba de piratas informáticos, es un gran paso para convertirse en un programador maestro.

Con esos idiomas dominados, lo que se debe abordar a continuación podría guiarse por lo que desea hacer con la programación informática que por lo que mejorará más sus habilidades de codificación.

El conjunto de habilidades necesario para las aplicaciones de nivel empresarial y la administración de la base de datos sería completamente diferente del conjunto de habilidades para el desarrollo web y la optimización de EE. UU., Y nuevamente diferente del requerido para el desarrollo de aplicaciones de escritorio y dispositivos portátiles. ¿Qué quieres programar?

En primer lugar, si sabe que c y c ++ no dicen solo, y en segundo lugar, surge la pregunta de cuánto sabe estos lenguajes. C y C ++ son enormes en el sentido de que hay un gran potencial de aprendizaje aquí y depende de cuánto quieres ir.
Luego, según yo, aprender más idiomas no mejora las habilidades de codificación. Mi consejo para ti sería tratar de dominar estos idiomas. Las estructuras de datos y los algoritmos son siempre los mejores amigos de un codificador y practican tanto como puedes.

PD: incluso yo estoy en el mismo camino.

Sigue el viejo dicho: la práctica hace al hombre perfecto.
Por lo tanto, intente visitar sitios competitivos como hackerrank.com, geeksforgeeks.com, etc. y resuelva sus preguntas. Porque confía en mí, son muy buenas preguntas.
Si crees que eres muy bueno en estos dos idiomas, puedes continuar con estos dos.
De lo contrario, podrías aprender Java lado a lado. Sin embargo, no es imprescindible aprender Java. Solo si desea hacer una POO adecuada, puede hacerlo.

Buena suerte programando.

¡Practica y algo más de práctica y algo más de práctica !. Aprende todo lo que puedas, resuelve tantos problemas como puedas. Hay algunas excelentes plataformas en línea como geeksforgeeks.org, Codechef, Stackoverflow, SPOJ, HackerRank, HackerEarth, etc.

Lo primero que las habilidades de codificación incluyen dos partes es escribir un algoritmo para un problema e implementar ese algoritmo en cualquier lenguaje de programación. Ahora debe centrarse en cómo puede comenzar a escribir algo para un problema. Puedes comenzar como en mi universidad me habían enseñado a escribir algo para hacer maggi o té. Parece que podría ser un poco torpe. También puede resolver problemas en tiempo real, incluyendo las posibles formas de utilizar la estructura de datos, es decir, la matriz, la lista vinculada, etc. en su algoritmo. Para una comprensión profunda, puede optar por una solución web. Una vez que aprenda su habilidad de algo, puede elegir cualquier lenguaje de programación y usar su sintaxis para resolver problemas.

Además, es mejor ver otro código y ser capaz de entenderlo, entonces tendrá un impacto si alguna vez enfrenta un problema similar en el futuro. También puede participar en el desafío de codificación en Internet para enfrentar el problema en un plazo determinado.

Salud. Feliz codificación.

La práctica hace a una persona perfecta. Elija algunos problemas reales y complejos y comience a trabajar en ellos, cree y comprenda las cosas que pueden surgir durante el desarrollo.

Además, puede elegir algunos proyectos de código abierto y comenzar a mirar los códigos y aprender cómo están escritos. Eso es todo.

¿Qué es la codificación?
¡Está convirtiendo su lógica en formato legible por máquina!
Sin embargo, aprender más y más idiomas puede verse bien en el papel, pero lo que sería más útil es ser realmente bueno en un idioma primero y luego probar otros …
¡Y solo podría ser bueno en la codificación escribiendo mucho código tal vez para un proyecto o simplemente probando un algoritmo!
Si ha terminado con un idioma y sabe cómo codificar, nunca es difícil aprender un nuevo idioma.
Si no eres un principiante, puedes intentar clasificar algos, algoritmos basados ​​en gráficos, etc., te ayudarán a mejorar tus habilidades …

Solo puedes mejorar tus habilidades de codificación practicando más y más …
No abandones tus programas, sigue mejorándolos de una forma u otra; en el proceso mejorarás enormemente tus habilidades.

¿Hasta qué punto conoce C y C ++?

Afina tus habilidades en C y C ++. La codificación en otros idiomas será un paseo fácil después de eso.

También aprenda los punteros en C a fondo. Puede probar “Punteros en C” y “Escribir TSR en C” por Yashwant Kanetkar. ¡No solo desarrolla sus habilidades de codificación, sino que también lo ayuda a comprender la razón detrás del código!

Podemos mejorar nuestras habilidades de codificación siguiendo

  1. Para obtener más conocimiento de cualquier idioma específico, debemos conocer todas y cada una de las palabras clave para poder usarlo de manera optimizada.
  2. Al resolver el algoritmo
  3. Practicando más y más.

La práctica hace la perfección como dicen.

Soy un desarrollador web con una buena experiencia de 4 años en el desarrollo de sitios web. El primer año fue difícil encontrar proyectos reales y siempre tuve tiempo libre, así que decidí crear algunos proyectos “falsos”.

Me imagino que una empresa ha solicitado mis servicios con diferentes proyectos. Incluso iría demasiado lejos al darle un nombre a la compañía “falsa” y una vez hice un logotipo para esa compañía falsa que no existe excepto en mi mente (habla de locura pero bueno, era una buena manera de motivar yo mismo para ver el proyecto hasta el final).

Siempre me planteé desafíos y siempre estaba en la búsqueda cuando estoy atrapado. Busqué en Google y busqué en Google que hubiera sido millonario si obtuviera $ 1 por cada búsqueda en Google que hice.

Incluso ahora, cuando estoy más ocupado que antes (con proyectos reales), en realidad trato de hacer algunos proyectos falsos con ciertos desafíos solo por diversión y por el simple hecho de hacerlo. Visite mi sitio web (M41k Dev3lops) que contiene algunos de los elementos de mi cartera que incluye algunos proyectos “divertidos”.

Para resumir, siempre siga codificando. Incluso si no tienes un proyecto, crea uno. Incluso puedes intentar hacer algunos de los proyectos en mi sitio web, es genial.

Práctica práctica práctica.

Espero que esto haya ayudado 🙂

Buena suerte y feliz codificación 🙂

La programación es acerca de la creatividad, su capacidad de generar ideas nuevas e interesantes. Entonces, para encontrar nuevos desafíos de programación, encontré una lista de sitios web para aprender y explorar más áreas de codificación.
Lista de sitios web para explorar desafíos de programación

Practique en plataformas similares a hackers y lea editoriales. Lo más importante es tratar de comprender el código escrito por otros.

Debería comenzar a resolver problemas a través de la plataforma CodeChef, una de las mejores de la India.

Si desea desarrollar aplicaciones relacionadas con aplicaciones móviles y de escritorio, aprender Java también puede ayudarlo o si desea que los sitios web aprendan JavaScript, HTML y CSS

Puede mejorar sus habilidades de codificación implementando el código de manera diferente
de lógicas