
La programación es una habilidad laboral increíblemente útil tanto en el presente como en el futuro. Sin embargo, aprender a programar puede parecer una tarea intimidante e insuperable. Hay mucho que saber y con un mercado laboral competitivo en ese espacio, mantenerse al día con las nuevas tendencias, lenguajes y tácticas es muy importante.
Aunque aprender a codificar a través de tutoriales o de ensayo y error está bien, también hay muchos libros estupendos que pueden ayudarte a aprender a programar. Este artículo va a repasar una lista de algunos de los mejores y más útiles libros de programación para principiantes.
Los 17 mejores libros de programación general para aprender a programar en 2020
La programación es el arte de crear soluciones innovadoras en forma de programas informáticos para resolver problemas que varían a través de un amplio espectro de campos, que van desde los clásicos rompecabezas matemáticos y cuestiones de la vida cotidiana hasta el pronóstico del tiempo y la búsqueda y comprensión de nuevas maravillas en todo el cosmos.
Aunque la programación y la codificación suelen utilizarse indistintamente, la programación no es sólo una codificación. La codificación representa la parte de la programación que implica la escritura de un código informático.
La programación, por otra parte, es un proceso más amplio que también implica el enfoque de aportar ideas para desarrollar un programa, así como la prueba del mismo y mucho más. Echa un vistazo a esta detallada comparación de codificación vs. programación.
1. El programador autodidacta
Escrito por un programador autodidacta que trabajó en eBay, es un gran libro para cualquier principiante interesado en aprender a programar. El libro es un mapa de ruta que te guiará a lo largo de tu viaje.
Le enseñará cómo codificar un programa, aprender a usar herramientas y a aprender los fundamentos y las mejores prácticas. Además de decirte cómo programar, este libro también te enseñará cómo convertirte en un profesional con éxito.
El libro cubrirá cosas que muchos otros métodos de enseñanza pueden no cubrir, como por ejemplo, cómo hacer una entrevista para un trabajo de programación y cómo trabajar con un equipo. El camino hacia el éxito se describe muy claramente en este libro.
2. Código: El lenguaje oculto del hardware y el software de la computadora
El código es el «lenguaje» de un ordenador y la programación está escribiendo ese lenguaje. Este libro busca introducir a la gente en la idea de la codificación y la programación utilizando sistemas de lenguaje simples y comprensibles.
Puede ayudarte a entender el funcionamiento interno de un ordenador, y lo que el código que escribes está haciendo en realidad. Así que aunque no es un libro de programación tradicional en ese sentido, está lleno de información muy importante.
No sólo eso, sino que el libro es muy divertido y atractivo para leer, a diferencia de muchos en este espacio que están secos. Incluso incluye útiles ilustraciones para mantenerte en el camino correcto. Tanto si eres muy experto en tecnología como si no, este libro debería poder ser leído, entendido y disfrutado.
3. El programador pragmático: De viajero a maestro
Cuando recién se empieza, aprender a programar de una manera que se entiende si es primordial. Ahí es donde el programador pragmático hace un gran trabajo. El libro mira las cosas de forma realista y sensata, sin hacerlas demasiado técnicas o difíciles.
El libro examina el núcleo de lo que se necesita para escribir un buen código que pueda ser soportado a lo largo del tiempo. Toca muchos conceptos y prácticas diferentes que la mayoría de los programadores (tanto los nuevos como los antiguos) deberían usar.
En este libro también se tratan muchos otros temas, como por ejemplo cómo ser más productivo, la precisión de tu código y mucho más. Te ayuda a lograr una fuerte comprensión de los principios básicos de la programación, de una manera muy pragmática.
4. Estructura e interpretación de los programas informáticos
Escrito para un curso de introducción a la programación en el legendario MIT, este libro es una parte importante de la base de cualquier programador. Te enseña los fundamentos y conceptos básicos de la codificación y la programación.
El libro no sólo es una gran lectura, sino que también incluye una variedad de diferentes ejemplos y ejercicios para desafiar y educar al lector. El libro se centra en el lenguaje de programación Scheme y lo utiliza, pero las lecciones aprendidas en el libro pueden ser utilizadas junto con cualquier lenguaje.
Es un libro un tanto desafiante para un principiante, pero si te tomas tiempo con él, puede enseñarte muchas cosas valiosas e importantes sobre la programación. Después de leer este libro y completar los diversos ejercicios, serás un programador mucho mejor.
5. Piensa como un programador: Una introducción a la resolución creativa de problemas
En su núcleo, mucha programación tiene que lidiar con la resolución de problemas. La construcción de un programa exitoso probablemente vendrá con muchas cuestiones o problemas de codificación, y resolverlos apropiadamente es importante para su éxito.
El libro analiza cómo los programadores experimentados resuelven estos problemas y (como sugiere el título) te enseña a pensar como un programador. Ser creativo es una parte increíblemente importante de la codificación, y este libro te ayuda a verlo y a aprovechar la creatividad.
Además de ayudarte a resolver problemas, este libro también cubre temas como la elección de la estructura correcta de los datos, el desarrollo de estrategias útiles y el dominio del uso de herramientas de programación más avanzadas.
6. Código limpio: Un manual de artesanía de software ágil
Mientras que incluso el subcódigo puede a menudo ejecutarse y realizar una función, el objetivo es escribir un código limpio. El código limpio es mantenible, puede ser leído fácilmente y puede ser cambiado simplemente si es necesario. Desafortunadamente, a menudo el subcódigo es más común que el código limpio.
Este libro espera cambiar eso. Código Limpio tiene como objetivo enseñarte no sólo a escribir código, sino también a escribirlo bien. Te hace leer mucho código, y tratar de identificar lo que es bueno y lo que es malo en él.
Varias cosas se aprenderán en este libro, como por ejemplo, cómo transformar un código malo en un código bueno, cómo formatear mejor el código e incluso cómo manejar los errores. En pocas palabras, el libro te ayuda a resolver problemas reales y a aprender de los errores de los demás.
7. La completa guía de carreras para desarrolladores de software
Mientras que algunos sólo quieren tomar la codificación y la programación como un hobby, muchos quieren hacer una carrera de ello. Si eso es un objetivo que tienes, entonces este libro es para ti. Mientras que tener toda la destreza técnica y el conocimiento es genial, a menudo necesitas más para conseguir un trabajo en el campo.
Este libro trata de enseñarte estas habilidades adicionales que pueden ayudarte a tener éxito en el campo. Qué idioma aprender, cómo responder a las preguntas de las entrevistas, cómo colaborar con los compañeros de trabajo y cómo llenar las lagunas en las habilidades técnicas se tratan en este libro, y mucho más.
Aunque este libro es diferente a la mayoría de los que simplemente te enseñan a codificar, es igual de valioso y ciertamente puede contribuir a la vida y la carrera de cualquier principiante en el espacio. El libro puede motivarte a mejorar y hacerte un mejor candidato para cualquier trabajo de programación.
Todos y cada uno de estos libros pueden proporcionarle valor si es nuevo en el mundo de la programación. No importa qué tipo de codificación o programación te interese o lo nuevo que seas en el espacio, estos libros te ayudarán.
¿Tienes o conoces algún libro de programación para principiantes que no aparezca en esta lista? Si es así, no olvides informarnos a todos en la sección de comentarios
8. Código limpio: Un manual de artesanía de software ágil
Autor – Robert C. MartinÚltima edición – Primera Editorial – Prentice HallFormato(s) – Kindle/Paperback
Programación es acerca de pulir el oficio con años de prueba y error. Desearía que hubiera una manera de salvarse de todo el trabajo duro aprendiendo de los errores de otros programadores.. Afortunadamente, la hay, y es conocida por el mundo como el Código Limpio: Un manual de artesanía de software ágil, libro del legendario tío Bob.
El código limpio ofrece una visión inestimable de la limpieza del código y el desarrollo de software.
Tiene explicaciones detalladas, paso a paso, sobre la limpieza, escritura y refactorización del código. El libro de programación tiene un montón de ejemplos prácticos sobre el cómo y el por qué de la escritura de código limpio.
Una vez completado con éxito el libro Clean Code, podrás implementar sin esfuerzo la metodología Agile, una de las formas principales de SDLC, en tus proyectos de desarrollo de software. Además, te encontrarás siendo un programador más decidido y disciplinado que antes.
9. Introducción a los algoritmos
Autor – Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford SteinLatest Edition – Tercera Editorial – The MIT PressFormat(s) – Hardcover/Paperback
El nombre del libro se explica por sí mismo.
Es lo que sugiere el título, es decir, Introducción a los Algoritmos. También conocido como CLRS, una referencia al apellido de los autores del libro, profundiza en una gama de algoritmos divididos en varios capítulos autocontenidos.
Todos los algoritmos discutidos en el libro Introducción a los Algoritmos están ampliamente explicados.
Se presentan usando pseudocódigo, legible por programadores de todos los niveles de habilidad, incluso aquellos que son relativamente nuevos en la programación.
La tercera edición del libro de Introducción a los Algoritmos está ampliamente revisada y actualizada. Añade dos nuevos capítulos:
- El árbol de Van Emde Boas
- Algoritmos multihilo
Además, la última edición del libro Introducción a los algoritmos también añade un apéndice sobre matrices y una considerable adición al capítulo centrado en la recurrencia (dividir y conquistar), y mucho más.
Puedes inscribirte aquí.
10. Estructura e Interpretación de los Programas Informáticos (SICP)
Autor – Harold Abelson, Gerald Jay Sussman, Julie SussmanÚltima edición – Segunda Editorial – The MIT PressFormat(s) – Hardcover/Paperback
La Estructura e Interpretación de los Programas de Ordenador, también conocido como SICP, es uno de los mejores libros para aprender los fundamentos de la programación. Empleado como un curso básico de programación en el MIT, SICP es un libro de programación genérica que utiliza Scheme para ilustrar los diversos conceptos de programación.
Aunque SCIP es un libro imprescindible para los programadores, recorrerlo será una experiencia mucho mejor después de aprender a fondo uno o dos lenguajes de programación. Por supuesto, el libro ofrece una sólida base de programación, y también trata de la programación funcional.
Completar el libro La Estructura e Interpretación de los Programas de Ordenador es un calvario. El libro presenta una gran cantidad de ejercicios prácticos para ayudar a los lectores a salir adelante.
Puedes inscribirte aquí.
11. El Codificador Limpio: Un código de conducta para programadores profesionales
Autor – Robert C. MartinÚltima edición – Primera Editorial – Prentice HallFormato(s) – Kindle/Paperback
Compilado por el experimentado ingeniero de software y autor Robert C. Martin alias Tío Bob, el libro The Clean Coder cubre las prácticas, técnicas y herramientas de la verdadera artesanía del software. El libro no sólo te dice cómo escribir un código limpio, sino también cómo construir la actitud de un programador profesional capacitado.
El Clean Coder es una lectura ideal para aquellos que buscan aprender los aspectos de ser un programador profesional de una manera difícil pero eficiente. Está lleno de consejos prácticos para todo lo relacionado con la programación, desde la codificación y refactorización hasta las pruebas.
El Clean Coder ha ayudado a cientos de miles de desarrolladores a ser mucho más apasionados y competentes en su oficio. ¿No te lo crees? Empieza a leer el libro de programación hoy y conoce la diferencia por ti mismo.
Puedes inscribirte aquí.
12. Código completo: Un manual práctico de construcción de software
Autor – Steve McConnell Última Edición – Segunda Editorial – Microsoft PressFormato (s) – Kindle/Paperback
¿Quieres saber cómo escribir código robusto independientemente de la arquitectura de un lenguaje de programación? Entonces considera leer el Código Completo: Un Manual Práctico de Construcción de Software. Cubre exhaustivamente todos los aspectos de la estructura de un buen código.
El libro Código Completo está considerado como una de las mejores guías prácticas de programación.
El libro de programación no tiene escasez de ejemplos de código que ilustran a fondo el arte y la ciencia detrás del desarrollo de software.
Las técnicas y estrategias probadas y explicadas en el libro ayudan a los programadores y desarrolladores de software a..:
- Beneficiarse del desarrollo en colaboración
- Desarrollar software con una mínima complejidad
- Fijar el proceso de depuración
- Maximizar la creatividad
- Reducir los errores y problemas
- Refactor y código de evolución
Independientemente del nivel de experiencia de los lectores, el entorno de desarrollo elegido o el tamaño del proyecto, el libro Código Completo ayuda a estimular la mente de los programadores.
Puedes inscribirte aquí.
13. Patrones de diseño: Elementos del software reutilizable orientado a objetos
Autor – Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Grady Booch (Prólogo) Última Edición – Primera Editorial – Addison-Wesley ProfessionalFormat(s) – Hardcover/Kindle/Paperback
¿No sabes lo que son los patrones de diseño de software? Los patrones de diseño: Elementos de Software Orientado a Objetos Reutilizables es uno de los tomos de autoridad en el tema. Y sí, no es una lectura fácil.
Si no tienes una buena comprensión de UML, puede que te resulte difícil ingerir algo de la información y ejemplos compilados en el libro de programación. Eso, sin embargo, no le impedirá apreciar la belleza de la narración del libro de patrones de diseño, que es fácil e informativo.
El libro de Patrones de Diseño explica exhaustivamente 23 patrones de diseño de software que ayudan a los desarrolladores y diseñadores de software a crear un software mejor, elegante y flexible.
El libro discute una gran cantidad de soluciones concisas y directas a los problemas habituales de diseño de software.
Aunque sabes lo que son los patrones de diseño de software, debes añadir los Patrones de Diseño: Elementos de Software Orientado a Objetos Reutilizables a su biblioteca para refinar aún más su comprensión del tema y tener una referencia rápida cuando surja la necesidad.
Puedes inscribirte aquí.
14. El programador pragmático
Autor – Andrew Hunt, David ThomasEdición de última hora – Segunda (Edición del 20º Aniversario) Editor – Addison-Wesley ProfessionalFormat(s) – Audiolibro (audible)/Tapa dura/Kindle
Desde su creación en 1999 por sus autores para ayudar a su clientela a desarrollar un mejor software.
El programador pragmático ha logrado convertirse en uno de los libros de programación más revisados. Este libro es para todos los programadores que buscan trascender para ser un hábil desarrollador de software y un programador completo.
No importa cuántas veces leas El programador pragmático, hay algo nuevo que aprender en cada lectura. Es el uso creativo de anécdotas clásicas y modernas, analogías fascinantes y ejemplos que invitan a la reflexión que hacen que el aprendizaje de cada sección sea tan interesante como divertido.
El programador pragmático no sólo cubre una amplia gama de temas de programación y desarrollo de software, sino también temas que no son habituales en los libros de programación, como el desarrollo de carreras y la responsabilidad personal durante el desarrollo de software.
Puedes inscribirte aquí.
15. Patrones de diseño de Head First: Una guía para el cerebro
Autor – Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth RobsonÚltima edición – Primera Editorial – O’Reilly MediaFormat(s) – Kindle/Paperback
La serie de libros Head First es conocida por su forma innovadora de desglosar temas complejos en unidades más sencillas y fáciles de entender. Los patrones de diseño de Head First: Una Guía para el Cerebro se compila en base a esta fórmula probada y comprobada.
Hay una gran cantidad de ejemplos ilustrativos y estimulantes para el cerebro en el libro Head First Design Patterns que harán que el aprendizaje sea eficiente y divertido a la vez.
A diferencia de otros libros de programación de texto, este libro presenta un formato visualmente rico que induce a la reflexión.
El libro Head First Design Patterns explica sin esfuerzo los diversos patrones de diseño de software empleados por desarrolladores y programadores de software competentes de todo el mundo para construir software elegante, completamente funcional, flexible y reutilizable.
Puedes inscribirte aquí.
16. Refactorización: Mejorar el diseño del código existente
Autor – Martin Fowler – Última edición – SegundaEditorial – Addison-Wesley ProfessionalFormat(s) – Tapa dura/Kindle
La refactorización es un concepto de programación vital para entender los aspectos subyacentes de escribir un código limpio y robusto. Refactorización de Martin Fowler: Mejorando el diseño del libro de códigos existente cubre todos los principales refactorings que cualquier programador experto debe conocer.
Aprender los mejores enfoques para refactorizar el código base permite al programador mejorar el mantenimiento del código a lo largo del tiempo, o al menos evitar que se pudra.
La última edición de refactorización presenta ejemplos de código JS y ejemplos que demuestran la refactorización sin clases.
¿Qué es la refactorización? ¿Por qué código de refactorización? ¿Cómo reconocer el código que requiere refactorización? Todas estas y otras preguntas importantes relacionadas con la refactorización del código se explican detalladamente en la sección Refactorización: Mejorando el diseño del libro de códigos existente.
Al completar exitosamente el libro de Fowler’s Refactoring, el lector podrá:
- Construir pruebas exhaustivas de refactorización
- Explora los refactorings
- Identificar las compensaciones y los problemas en la refactorización
- Aplicar rápidamente la refactorización a un programa para hacer más fácil de entender y modificar
Puedes inscribirte aquí.
17. El arte de la programación informática, volúmenes 1-4
Autor – Donald E. KnuthÚltima edición – Primera Editorial – Addison-Wesley Formato Profesional (es) – Tapa dura
A diferencia de otras entradas de la lista de los diez mejores libros de programación, El Arte de la Programación de Computadoras no es sólo un libro, sino una serie de 4 libros, a saber:
- Volumen 1: Algoritmos fundamentales
- Volumen 2: Algoritmos seminuméricos
- Volumen 3: Clasificar y buscar
- Volumen 4A: Algoritmos combinatorios
Aunque escrito principalmente como una referencia, El Arte de la Programación de Computadoras ha ganado un culto de seguidores de programadores decididos que siempre están listos para empujar sus límites. La serie de libros de programación se sumerge más profundamente en el reino de los algoritmos informáticos y no es de fácil lectura.
Bill Gates revisó esta serie de libros afirmando:
«Si crees que eres un excelente programador… lee el Arte de la Programación de Computadoras… Deberías enviarme un currículum si puedes leerlo todo.»
Donald E. Knuth, el autor de la serie «El Arte de la Programación Informática», recibió el premio ACM A.M. Turing de 1974, conocido como el Premio Nobel de Informática. Una advertencia antes de comenzar con la serie de libros de programación; ¡Matemática pesada adelante!
Puedes inscribirte aquí.
Los 10 mejores libros de algoritmos que todo programador debería leer
Los algoritmos son agnósticos del lenguaje, y cualquier programador que se precie debería ser capaz de convertirlos en código en el lenguaje de programación de su elección.
Desafortunadamente, me he encontrado con varios programadores que son REALMENTE bueno en lenguajes de programación como Java o Python como conoce detalles menores de la API y las complejidades del lenguaje pero tiene muy poco conocimiento de los algoritmos fundamentales y la estructura de datos. Sólo pídeles que implementen cualquier algoritmo de clasificación popular como el Quicksort o el Merge sort, y se desmoronarán.
Si esperas que conozcan algoritmos más avanzados y sofisticados como algoritmos de procesamiento de cadenas, algoritmos de gráficos, algoritmos de atravesar árboles o algoritmos codiciosos, prepárate para comprobar en Entrevistas; de lo contrario, podrías terminar con algunas sorpresas.
Una vez, me encontré con un candidato perfecto para un rol de desarrollador senior en Java, Él que era excelente en Java, multi-hilo pero su estructura de datos y habilidad en los algoritmos era pobre en su experiencia y calibre.
Cuando le pregunté por qué no pasaba el tiempo repasando su algoritmo y su habilidad para resolver problemas antes de venir a la entrevista.. Su excusa fue, «esos algoritmos son sólo para reuniones y nunca se usan realmente en la codificación práctica. Nunca los he usado en mis 6 años de carrera en el desarrollo de Java. «
Tenía algo de razón; no es necesario implementar una tabla de hachís en Java; siempre se puede usar la clase HashMap o el diccionario en Python para ese sentido, pero no reconoció el algoritmo de mejora más a largo plazo y la estructura de datos para mejorar la habilidad de programación.
Los algoritmos son herramientas para desarrollar la capacidad de resolución de programación y el sentido de la codificación, que se requiere para convertir un requerimiento del usuario en la línea de código, también conocida como programa de computadora.
También están por todas partes, si usas Facebook, ¿has pensado alguna vez en cómo encuentran a tus amigos tan rápidamente? ¿O cómo Netflix recomienda la película que quieres ver? Esos son solo un par de ejemplos de Algoritmos de Aprendizaje Automático, que están llevando a los Algoritmos a otro nivel.
10 Libros de Algoritmos – Imprescindible para los desarrolladores
Otro consejo de oro para aquellos que piensan que los Algoritmos son Estructuras de Datos es para aquellos que quieren trabajar en Amazon, Google, Facebook, Intel, o Microsoft; recuerden que es la única habilidad que es intemporal, por supuesto, aparte de UNIX, SQL, y C.
Los lenguajes de programación van y vienen, pero el núcleo de la programación, que es el algoritmo y la estructura de los datos sigue siendo el mismo.
Si sabes cómo funciona una tabla hash, entonces puedes usar su implementación en cualquier lenguaje de programación como HashMap de JDK, Diccionario en Python, o HashMap de la librería de boost de C++.
Así que si te tomas en serio la programación y te das cuenta ahora de que los algoritmos y la estructura de datos no son opcionales, aquí tienes algunos de los grandes libros para aprender algoritmos.
Algunos de vosotros puede que ya los hayáis leído antes, pero vale la pena volver a leerlos.
1. Introducción a los algoritmos por Thomas H. Corman
Este es uno de los libros de algoritmos más populares, pero ten en cuenta que contiene una gran dosis de teoría. La edición actual de este libro es la 3ª edición, y sugiero encarecidamente que todo programador debería tenerlo en su estantería, pero sólo para lecturas cortas y referencias.
No es posible terminar este libro de una sola vez, y algunos de ustedes pueden tener dificultades para leer también, pero no se preocupen, pueden combinar su aprendizaje con un curso en línea como Estructuras de Datos y Algoritmos: Buceo profundo usando Java junto con este libro.
Esto es como lo mejor de ambos mundos, aprendes rápidamente el algrotismo básico en un curso en línea, y luego cimentas aún más ese conocimiento al repasar el libro, lo que tendría más sentido para ti ahora que ya has pasado por una clase.
Otra razón por la que recomiendo este libro como uno de los primeros libros sobre algoritmos debido a su lenguaje agnóstico y acompañado de conferencias aquí
2. Algoritmos de Robert Sedgewick y Kevin Wayne
Este fue mi recurso preferido en los algoritmos durante mucho tiempo, todavía lo es, pero ahora lo veo con menos frecuencia que antes. Aprenderás muchos antecedentes sobre el algoritmo, y hoy en día, incluso versiones específicas de este libro están disponibles para diferentes lenguajes de programación como Java y C++.
También hay un par de cursos gratuitos en línea de Coursera para este libro, Algoritmos Parte 1 y Algoritmos Parte 2, que complementan muy bien este libro. Es excelente. También es mi mejor recomendación para los programadores de Java para el aprendizaje de algoritmos.
Lo creas o no, pero si ya conoces un lenguaje de programación, entonces ver un ejemplo de un algoritmo en ese lenguaje de programación que otros también reduce la curva de aprendizaje. También puedes leer la 4ª edición de este libro online de forma gratuita aquí.
3. El Manual de Diseño de Algoritmos por Steve S. Skiena
Este es otro excelente libro sobre algoritmos de computación que van más allá de una tonelada de algoritmos con mucho código también. Lo que me gusta especialmente del libro es que en realidad da ejemplos de dónde usó los algoritmos (o sus variaciones) en la práctica; realmente ayuda a ver la(s) clase(s) de problemas para los que se puede usar un algoritmo particular (o familia de algoritmos).
El código está en C, pero no es muy esotérico, y es fácil de seguir. Esto me ayudó a ponerme al día bastante rápido en varios algoritmos gráficos. He tenido esto durante casi 10 años y todavía lo miro de vez en cuando.
4. Algoritmo para las entrevistas
Algorithm for Interview de Adnan Aziz es un libro de lectura obligada sobre algoritmos, escrito en términos de tener en cuenta la programación de la entrevista.
La portada en sí misma muestra lo inusual que podría ser el libro si se mira cuidadosamente la imagen de la portada está dibujada con miniaturas de personas famosas, y el libro explica cómo se pueden desarrollar tales algoritmos. Interesante, ¿no?
Bueno, me gusta este libro por su enfoque y objetivo, a veces aprender lo mismo con un objeto diferente ayuda a entenderlo mejor.
5. Algoritmo en la cáscara de nuez
Algoritmos de O’Reilly, en una cáscara de nuez, es un excelente libro para aprender algoritmos de programación, especialmente para programadores de Java. Describe los algoritmos centrándose en su implementación y sin matemáticas pesadas utilizadas en los libros clásicos sobre algoritmos.
Todos los algoritmos se presentan en forma de patrones, con una motivación para usarlos, imágenes y pseudo-código dando una visión general de alto nivel, y código de trabajo (en C, C++, Java, y Ruby).
También tienen puntos de referencia para proporcionar pruebas del rendimiento teórico de los algoritmos. En resumen, uno de los mejores libros para aprender algoritmos para programadores.
6. Diseño de algoritmos por Kleinberg & Tardos
Este es en realidad el segundo mejor libro de algoritmos después de la introducción de Thomas Cormon a los algoritmos.
No es realmente una introducción a los algoritmos y es más adecuado para programadores experimentados.
Es más sobre el diseño de algoritmos para desarrolladores familiarizados con los algoritmos básicos.
Debería comenzar con el libro Introduction of Algorithm o Algoritmos de Robert Sedgewick y luego continuar con este libro.
Por otra parte, si lo desea, también puede combinar su aprendizaje con un curso en línea como Algoritmos y Estructuras de Datos – Parte 1 y 2 en Pluralsight. Es un excelente curso para familiarizarse con los algoritmos esenciales y la estructura de datos antes de pasar al tema de diseño de algoritmos.
7. Introducción a los algoritmos: Un enfoque creativo
Introducción a los algoritmos: A Creative Approach By Udi Manber es otro excelente libro para el auto-estudio ya que está lleno de cientos de problemas y ejemplos.
Está diseñado para mejorar la capacidad de resolución de problemas del lector y la comprensión de los principios detrás del diseño de algoritmos, lo que le ayudará a desarrollar sus habilidades de resolución de problemas y de codificación.
8. El diseño y análisis de los algoritmos
Este es otro gran cocinero de algoritmos de computadora y merece un lugar en el estante de un programador.
Una vez que hayas pasado por la clase de Coursera sobre Algoritmos y uno de los libros de introducción, puedes leer este libro para estudiar temas avanzados en algoritmos.
9. Estructuras de datos y algoritmos. Aho, Ullman y Hopcroft
Otro buen libro de introducción a los algoritmos y estructuras de datos.
Un libro encantador y brillante y cualquier programador que no le guste el uso intensivo de las matemáticas en el algoritmo apreciará este libro.
Por otra parte, si encuentras este libro difícil de leer, que es lo que algunos de mis lectores se quejan, entonces también puedes echar un vistazo a los Algoritmos de Grokking de Aditya Bhargava, uno de los más fáciles y emocionantes libros sobre algoritmos para principiantes.
10. Algoritmos de Pitón: Dominio de los algoritmos básicos en el lenguaje python
Este libro está diseñado para los programadores de Python. Magnus Lie Hetland es también el autor de uno de los populares libros introductorios de Python, Beginning Python.
Como he dicho, los algoritmos son independientes del lenguaje; aprender un algoritmo python no significa que no puedas implementarlo en Java o C++, pero si ya conoces Python, entonces este es un excelente libro para aprender algoritmos de computación.
Este libro también se centra mucho en los algoritmos gráficos, que son muy útiles para resolver problemas del mundo real.
Son unos 10 libros de algoritmos que todo programador debería leer.
Estoy de acuerdo en que los algoritmos son un tema complejo, y no es fácil entenderlos en una sola lectura; en ese caso, sugiero leer el mismo libro dos veces.
Además, no basta con leer, intente implementarlos en un lenguaje de programación que le guste.
No hace daño escribir tu propia lista de arreglos, HashMap, o una implementación de Mapas basados en árboles. El efecto del aprendizaje del algoritmo no es visible inmediatamente, pero notarás una sutil mejora en tu pensamiento, la construcción de soluciones, y la calidad del código con el tiempo.
Por lo tanto, si estás interesado en un curso online sobre algoritmos, te sugiero que eches un vistazo a Estructuras de Datos y Algoritmos: Buceo profundo usando Java en Udemy.
No es un curso gratuito, pero puedes comprarlo en menos de 10 dólares en varias de las ventas flash de Udemy, lo que sucede cada pocos días.
Por fin hay dos tipos de programadores, uno que entiende el algoritmo y otro que no.
Mejores libros de programación para programadores
La programación es uno de los campos profesionales más solicitados en el mundo. Presenta a los candidatos una gran cantidad de oportunidades para aprender y ganar. Sin embargo, requiere un aprendizaje continuo y ¡qué puede ser mejor que los libros para aprender!