¿Qué debo hacer para mejorar mis habilidades de programación cuando actualmente estoy en mi tercer semestre estudiando ingeniería de software? ¿Qué libros son los mejores para aprender?

El aumento de las habilidades de programación se realiza mejor trabajando en proyectos de software tangibles. Por ejemplo, es posible que siempre haya querido crear una aplicación web simple que identifique a las celebridades en las fotos. Al implementar una versión de esto en código y aprender los componentes necesarios en el camino, probablemente aprenderá MUCHO más que solo leer un libro.

La escuela a menudo te obligará a leer libros de todos modos y te permitirá comprender conceptos teóricamente. Sin embargo, si implementa un proyecto tangible, es posible que tenga que aprender conceptos que quizás no haya aprendido antes. En el ejemplo anterior, podría ser una configuración de controlador de vista de modelo para una aplicación web, procesamiento de imágenes y una implementación de un algoritmo de aprendizaje automático. Eso hará mucho más para despertar tu curiosidad y con suerte te empujará a aprender más sobre los temas que más te interesan.

La mejor parte de terminar un proyecto como ese es que puede compartirlo con otros en sitios como Github o Datmo con el mundo. De esta manera, también puede comenzar a construir una cartera de trabajo que sea útil cuando desee encontrar un trabajo después de la escuela.

Espero que esto ayude 🙂

A2A. ¿Qué debo hacer para mejorar mis habilidades de programación cuando actualmente estoy en mi tercer semestre estudiando ingeniería de software? ¿Qué libros son los mejores para aprender?

Como ya estás en la universidad, ya no te recomiendo libros a menos que estén asociados con cursos. Si desea mejorar sus habilidades de programación, le recomiendo tomar los cursos intensivos de programación, como la construcción de compiladores, sistemas operativos, etc.

La mayoría de las universidades tienen su plan de estudios en línea que tendrá el material requerido. Por ejemplo, buscar en Google “cursos de sistemas operativos de Stanford” le ofrece CS140: Sistemas operativos, y buscar en Google “sistemas operativos de MOOC” le ofrece Introducción a los sistemas operativos | Udacity y sistemas operativos avanzados | Udacity.

Los libros no pueden mejorar tus habilidades fundamentales en la programación.

Se ve a la gente revolcarse en todo tipo de declaraciones vagas e inexactas, eufemismos e ideas que simulan el concepto de parecerse de alguna manera a la capa exterior, que se hizo eco de un argumento real y profundo.

Pero aquí está la cosa.

No importa cuántos libros leas, eso no te convertirá de repente, en un ser humano racionalmente conectado.

No importa cuántos cursos universitarios o años pases, eso no te hará mejor en la codificación.

Tampoco lo es, lo que lo contratará.

Eche un vistazo a las empresas de tecnología, que hablan sobre el desarrollo de software. ¿De qué hablan realmente?

Lanzan palabras como “El solicitante fue terrible” o “Asistió X años en Y College”.

Tomé certificaciones en MiT a través de EdX. ¿Eso me hace, algún codificador de monstruos, que simplemente pasó de no entender el código a entender las matrices?

No.

¿Con qué frecuencia ves gente, CONCRETAMENTE, hablar sobre los defectos OBJETIVOS, de las personas, en la codificación?

“Sus estructuras de eficiencia de tiempo de ejecución promedio estaban fuera de la tabla …”

“Hizo toneladas de cheques redundantes para afirmar tipings en situaciones triviales que no se remontaban a ninguna solución real …”

“Intentó la recursión, y falló …”

No escuchas estas cosas.

Ves a la gente hablar, al respecto, en términos vagos y recordatorios que te hacen CONDUCIR, que sabrían de qué están hablando.

Hasta el punto, donde entiendes, que no lo hacen.

¿Cuántos crees que miraron mis secciones de Metaprogramación?
¿Cuántos crees, me puedes decir, de mis errores de contabilidad para la copia profunda en términos de estados internos?

¿Cuántos, crees, miraron mis ejemplos de analizador de registro para un estudiante que tenía en la enseñanza privada?

Ninguna.

¿Cuántos piensas, pensaste, “caramba, este tipo escribe demasiados ‘,’ …”

o

“¡Caramba, este tipo tiene barba!”

o

‘No me gusta este chico. Él habla demasiado: / ‘

Ninguno de los cuales, me obstaculiza, de ejecutar la tarea a mano.

Pero está bien, no pagues, presta atención a mis palabras ‘negativas’. Para mi, ‘toxicidad’. Es todo, divagar sin sentido, estoy seguro.

Cualquier fuente que se centre principalmente en enseñar a pensar para resolver problemas es buena. Comencé con Deitel & Deitel C ++ Cómo programar y fue bueno para mí, me dio la base de cómo pensar cuando quieres resolver un problema.

Sin embargo, más allá de cualquier fuente, debe involucrarse en la resolución de problemas.

More Interesting

Parece que no puedo terminar algunos de mis proyectos a medias debido a obstáculos, conocimiento limitado de algoritmos, estructuras de datos, etc. ¿Cómo puedo ser productivo?

¿Cuál es el equivalente de Python del supresor de errores de PHP (@)?

¿Cuál sería el mejor para seleccionar como carrera, ingeniería de software o ingeniería mecánica (si a uno le gustan ambos por igual)?

Como Team Manager, ¿hay algún software que me permita saber cuánta gente trabaja cada media hora de la semana?

¿Cuándo vendrá la próxima burbuja de TI?

Desde una perspectiva de ingeniería, ¿qué tan difícil es construir la puerta trasera para el iPhone que el FBI está solicitando a Apple?

¿Cuál de las metodologías SDLC es más adecuada para un proyecto relacionado con la seguridad del hogar?

¿Cuál es la diferencia entre DFD lógico y físico?

Piratería informática (seguridad): ¿Cuáles son algunas herramientas de post explotación?

¿Cómo continúan desarrollándose los ingenieros localmente a medida que la pila crece en su producto?

¿Realmente necesito experiencia en desarrollo para solicitar trabajos de QA en Google?

¿Existe algún programa de certificación valorado por la industria para el diseño orientado a objetos (o diseño de software en general) para un desarrollador de software experimentado?

¿Cómo es para las niñas elegir la ingeniería de software como carrera en Pakistán?

¿Cuáles son las complicaciones que podríamos enfrentar al desarrollar una red de sensores inalámbricos a gran escala (1000 nodos)?

¿Qué es un 'enfoque de todo el equipo' en el desarrollo de software ágil?