¿Cuáles son algunos de los mejores libros sobre informática?

Nota: Parece que mucha gente ha respondido a esto, y ha tratado de ir en gran medida incluyendo libros de muchos subcampos. No creo que esto sea justo. Esta pregunta pide los mejores libros de informática. Muchos subcampos aún no tienen libros asombrosos escritos sobre ellos. En esta respuesta, me gustaría dar algunos ejemplos de libros que he leído que sin lugar a dudas eliminaron a la competencia del agua. Estos son libros que me convencieron de amar temas que antes no conocía. Estos son libros que llevo conmigo cada vez que viajo.

A continuación se enumeran estos libros aproximadamente en el orden en que los aprecio más:

  • Representación basada en la física (PBRT) por Pharr y Humphreys

Este libro es impresionante. Sus gráficos son todos memorables y cada página hace que quieras escribir un trazador de rayos perfecto. Además de eso, utiliza la programación alfabetizada para anotar el código, lo que hace que el libro no sea un libro de códigos, sino un libro de explicaciones. Este es también uno de los libros más completos sobre el tema. Pasa de no saber ningún álgebra lineal a usar cálculo multivariable y teoría de probabilidades para definir BRDF y examinar la ecuación de representación. Además de eso, se envía con código fuente abierto para jugar.

  • Teoría de las funciones recursivas y la computabilidad efectiva por Hartley Rogers, Jr.

Este libro no es una lectura trivial y, a menudo, no es la mejor introducción al tema, ¿por qué lo he incluido? Es un poco como sostener el primer telescopio reflector, y darse cuenta de que todavía puedes ver todo lo que el Hubble puede ver con él. Este libro es como tratar de leer la versión latina de principia .


  • Gödel, Escher, Bach por Douglas R. Hofstadter

Nuevamente, dado que este no es exactamente un libro de informática, puede que se pregunte por qué está aquí. Se afirma que este es realmente un libro sobre psicología y ninguno de los autores son científicos informáticos. Sin embargo, con un diálogo divertido y aleatorio, te presenta los conceptos de máquinas computacionales, sistemas de sustitución, terminaciones, gramáticas, recursión, lógica formal, análisis matemático y más, sin que te des cuenta de que realmente estás aprendiendo ciencias de la computación. Después de todo, ¿qué es la mente sino una computadora compleja? Es una lectura muy divertida y profunda.

  • Hacking: El arte de la explotación. por John Erickson

Este libro evita que se convierta en un manual de referencia para el ensamblaje de x86 al evitar que los aspirantes a hackers adolescentes se conviertan en niños de guiones. Introduce la programación a nivel de sistemas en casi la misma profundidad que el libro de texto 15213 de CMU, CS: APP2e, Bryant y O’Hallaron, sin aburrir al lector ni perder de vista la búsqueda de objetivos y parchear las hazañas en las computadoras. Después de todo, ¿quién aprende a ensamblar por primera vez para escribir un compilador, kernel o controlador? Lo aprendes porque quieres romper algo o arreglar algo.

  • Tipos y lenguajes de programación por Benjamin C. Pierce

Este sigue siendo el único libro sobre teoría de tipos escrito para un principiante en el tema que te enseña lo suficiente como para tener una comprensión básica de los respaldos teóricos del sistema de tipos de Java moderno. No es que me guste Java o que esto es todo lo que enseña. Le proporciona los conceptos básicos del cálculo lambda y los sistemas tipográficos hasta el punto en que puede comprender el lenguaje de programación ML . Está tan lleno de ejemplos e historia de fondo y notas de orientación que puede leerlo como un libro de cuentos, pero aún así está organizado y presentado tan bien que todavía lo uso como referencia en mi investigación diaria.

  • Introducción a los algoritmos por Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

Este libro es pesado. Literalmente. Escatima en ningún análisis e introduce cada algoritmo y estructura de datos que probablemente necesitará en sus primeros 5 años de programación. Sin embargo, es bastante difícil enseñar el tema de los algoritmos en un libro de texto sin convertirlo en una lista de algoritmos. Realmente no sé de un libro completo que haga esto todavía. Nombraría The Art of Computer Programming de Knuth, pero Assembly es simplemente poner el lenguaje absolutamente incorrecto para enseñar algoritmos.

En lo que respecta al lenguaje de programación C , creo que ” El lenguaje de programación C ” escrito por ” Kernighan y Ritchie ” es el mejor. Es corto y preciso. Como dicen ” Las cosas buenas vienen en paquetes pequeños “.


Si estás interesado en aprender Java, ve con ” Head First Java ” de ” Bert and Kathy “. Personalmente encontré este libro para ser impresionante. Enseña el tema de una manera humorística pero seria. Nunca te aburres en ningún momento.


Para los algoritmos , el mejor libro según mi opinión es ” Introducción a los algoritmos ” de ” Cormen, Lieserson, Rivest y Stein “. Literalmente contiene casi todos los algoritmos estándar que cualquiera haya usado.
PD: es útil en caso de que no tengas una almohada.

Si quieres aprender los conceptos básicos del sistema operativo, ve a ” Conceptos de sistemas operativos ” de ” Silberchatz, Galvin y Gagne “.

Para aprender la teoría básica detrás de los compiladores, lea ” Técnicas y herramientas de los principios de los compiladores ” de ” Aho, Lam, Sethi y Ullman “.

A2A Normalmente, no recomiendo libros de CS sin saber exactamente lo que está intentando aprender. CS no es literatura, sino una disciplina para construir productos en plataformas. Es la plataforma la que determina las mejores prácticas, por lo que su pregunta debe ser refinada.

En la era de los MOOC, recomiendo los cursos de MOOC CS solo para leer libros. Consulte Cómo elegir los cursos de informática por J. Lee Anthony sobre Cómo ingresar a la universidad de su elección. Si estás interesado en MSCS, asegúrate de tener los fundamentos; consulta el Autoestudio de los cursos de la Fundación MSCS de Stanford. por J. Lee Anthony sobre Cómo ingresar a la universidad de su elección.

¡Hola!
Cada materia tiene su lectura requerida, y la informática no es diferente. Al igual que con cualquier área de estudio, Ciencias de la Computación tiene una historia, varios procesos y suficientes opiniones diferentes para llenar una biblioteca.
Para esta lista, hemos encontrado los 10 mejores libros de lectura obligatoria para los estudiantes de informática.
1. Algoritmos para vivir por: La informática de las decisiones humanas por Brian Christian y Tom Griffiths
2. El alma de una máquina nueva por Tracy Kidder
3. Superinteligencia: Caminos, Peligros, Estrategias por Nick Bostrom
4. Hackers: Heroes of the Computer Revolution por Steven Levy
5. Código: El lenguaje oculto del hardware y software de la computadora por Charles Petzold
6. El chip: cómo dos estadounidenses inventaron el microchip y lanzaron una revolución por TR Reid
7. La Segunda Era de la Máquina: Trabajo, Progreso y Prosperidad en un Tiempo de Tecnologías Brillantes por Erik Brynjolfsson y Andrew McAfee
8. Los innovadores: cómo un grupo de hackers, genios y geeks crearon la revolución digital por Walter Isaacson
9. Pensando en sistemas: Una cartilla por Donella H. Meadows
10. La búsqueda: cómo Google y sus rivales volvieron a escribir las reglas de los negocios y transformaron nuestra cultura Por John Battelle
Todos estos libros están disponibles con nosotros. Visite nuestro sitio web MyPustak y consígalos todo gratis.
¡¡Gracias!!

Programación Dinámica (Dover Books en Informática)

por Richard Bellman

Una introducción a la teoría matemática de los procesos de decisión de múltiples etapas, este texto adopta un enfoque de “ecuación funcional” para el descubrimiento de políticas óptimas. Escrito por un desarrollador líder de tales políticas, presenta una serie de métodos, teoremas de existencia y unicidad, y ejemplos para resolver ecuaciones relevantes. El texto examina los teoremas de existencia y unicidad, la ecuación de inventario óptima, los problemas de cuellos de botella en los procesos de producción de múltiples etapas, un nuevo formalismo en el cálculo de la variación, las estrategias detrás de los juegos de múltiples etapas y los procesos de decisión de Markovian. Cada capítulo concluye con un conjunto de problemas que Eric V. Denardo, de la Universidad de Yale, en su nueva introducción informativa, llama “una gran cantidad de aplicaciones y temas de investigación”. Edición de 1957. 37 figuras.

Reprint Programación Dinámica (Libros Dover en Informática), Richard Bellman

Programación dinámica: modelos y aplicaciones (Dover Books on Computer Science)


La introducción a los procesos de decisión secuencial cubre el uso de programación dinámica en el estudio de modelos de asignación de recursos, métodos para aproximar soluciones de problemas de control en tiempo continuo, control de producción, toma de decisiones frente a un futuro incierto y modelos de control de inventario. Un curso previo en la investigación de operaciones es un requisito previo. Edición de 1982.

Programación dinámica: modelos y aplicaciones (Libros de Dover sobre informática), Eric V. Denardo

Hay algunos buenos libros que dan trabajo a los principiantes en ciencias de la computación y en particular en la automatización de pruebas de software que se enumeran aquí:

Las herramientas de prueba automatizadas son capaces de ejecutar pruebas , informar resultados y comparar resultados con ejecuciones de prueba anteriores. Las pruebas realizadas con estas herramientas se pueden ejecutar repetidamente, en cualquier momento del día. El método o proceso que se utiliza para implementar la automatización se denomina marco de automatización de prueba .

Las Pruebas de automatización de software es el proceso de verificación de software en el que las funciones básicas y los pasos de prueba , como la ejecución, la inicialización, la ejecución, el análisis y la entrega de resultados se realizan automáticamente mediante herramientas para la prueba automatizada .

Selenium Webdriver: WebDriver es una herramienta para automatizar las pruebas de aplicaciones web, y en particular para verificar que funcionan como se espera. Su objetivo es proporcionar una API amigable que sea fácil de explorar y entender, más fácil de usar que la API Selenium -RC (1.0), que ayudará a facilitar la lectura y el mantenimiento de las pruebas.

Selenium proporciona una herramienta de grabación / reproducción para crear pruebas sin aprender un lenguaje de scripting de prueba ( Selenium IDE). También proporciona un lenguaje específico de dominio de prueba (Selenese) para escribir pruebas en varios lenguajes de programación populares, incluidos Java, C #, Groovy, Perl, PHP, Python y Ruby.

Los mejores libros que debes leer:

Hay muchos de ellos.

Déjame enumerar mis favoritos:

  • El arte de la programación informática – Wikipedia
  • En una palabra, es una biblia de programación de computadoras.
  • Introducción a los algoritmos – Wikipedia
    • Le da una breve idea acerca de los algoritmos, cómo analizar los algoritmos y etc.
    • Este libro popular en colegios y universidades, como libro de referencia.
  • El programador pragmático – Wikipedia
    • Este libro es para mejorar las habilidades de programación en ingeniería de software.
  • Compiladores: Principios, Técnicas y Herramientas – Wikipedia
    • Si desea diseñar su propio compilador / intérprete, puede leer esto.

    Estos son algunos libros en mi lista de deseos. Estoy leyendo algunos de ellos. La mayoría de ellos deben ser leídos. Muy pocos son textos “clásicos”, pero la mayoría tienen algunos comentarios decentes sobre Amazon, y esperamos que no te decepcionen. Esta lista es más útil para los profesionales.

    Aquí está la lista (en ningún orden en particular)

    • Criptografía aplicada: Protocolos, algoritmos y código fuente en C – por Bruice Schneier
    • El diseño del sistema operativo Unix – por Maurice Bach Maurice J
    • Patrones de diseño: elementos de software orientado a objetos reutilizables – por Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
    • El arte del análisis del rendimiento de los sistemas informáticos, por Raj Jain
    • Unix Internals, The New Frontiers – por Vahalia
    • Programación avanzada en el entorno Unix – Richard Stevens, Stephen Rago
    • Inteligencia artificial: un enfoque moderno – por Stuart Russell, Peter Norvig
    • Unix Power Tools – por Shelley Powers, Jerry Peek, Tim O \ ‘reilly
    • Administración de la red TCP / IP – por Craig Hunt
    • Red Warrior – por Donahue Donahue
    • Libro de cocina de SQL – por Anthony Molinaro
    • La interfaz de programación de Linux: un manual de programación de sistemas Linux y UNIX, por Michael Kerrisk
    • Patrones de integración empresarial – Gregor Hohpe, Bobby Woolfe
    • Programación de Inteligencia Colectiva – Toby Segaran
    • Dominar las expresiones regulares – Jeffrey Friedl
    • Pro Git – por Scott Chacon
    • A partir de XSLT 2.0: de principiante a profesional, por Jeni Tennison
    • Nmap Network Scanning: la guía oficial del proyecto Nmap para el descubrimiento de redes y el escaneo de seguridad – por Gordon Lyon, Fyodor
    • Los codificadores en el trabajo: Reflexiones sobre el oficio de la programación – por Seibel
    • DNS y BIND – por Cricket Liu, Paul Albitz
    • sed & awk – por Arnold Robbins, Dale Dougherty
    • El libro de recursos del modelo de datos: una biblioteca de modelos de datos universales para todas las empresas, por Len Silverston
    • Programación Erlang – por Francesco Cesarini, Simon Thompson
    • Hadoop: la guía definitiva – por Tom White
    • Sumérgete en Python – Mark Pilgrim
    • Algoritmos de Python – Magnus Hetland
    1. El lenguaje de programación C – clásico atemporal
    2. Estructura e interpretación de los programas de computadora: debe leer, ya sea de la palabra OOP o del mundo funcional.
    3. El arte de la programación UNIX – sabiduría en ingeniería informática
    4. ¿Por qué es la guía (conmovedora) de Ruby? Porque comenzó un nuevo paradigma al escribir libros de programación.
    5. El manual de diseño de algoritmos: una guía accesible de algoritmos para el resto de nosotros.
    6. Código Completo 2 – “El manual de estilo de Chicago” de las computadoras.

    Hay mejores libros sobre informática que son los siguientes:

    • Compiladores: Principios, Técnicas y Herramientas
    • El lenguaje de programación C
    • Algoritmos + Estructuras de datos = Programas
    • Inteligencia Artificial: Un Enfoque Moderno
    • Introducción a la teoría de los autómatas, lenguajes y computación
    • Matematicas concretas
    • El programador pragmático
    • Código Completo
    • El mes-hombre mítico

    ¡No tengo idea de lo que quieres decir con “Informática”!

    Pero, como era A2A, daré el mejor libro en cada tema.

    Programación – Desafíos de programación por Steven Skiena
    Algoritmos – Algoritmos de Cormen
    Bases de datos – Avi Silberschatz
    Autómatas – Introducción a la teoría de autómatas por Hopcroft
    Programación funcional – Interpretación estructural de programas de computación por Sussman
    Inteligencia Artificial – Inteligencia Artificial por Peter Norvig

    Andamio: (puedes hacer el trabajo en Amazon)

    Knuth: TAOCP (El arte de la programación de computadoras); tiene críticas contra él (lenguaje de máquina, nivel bajo), incompleto, actualmente a 4 volúmenes, no solo 3.

    Knuth: 9 volúmenes de papeles seleccionados. Vol 1 y 8 son favoritos personales, así como los primeros lenguajes de programación. 8 incluye el primer artículo de DEK en la revista Mad Magazine.

    Soy parcial a un librito que ya no está impreso por
    Wirth, Algoritmos + Estructuras de datos = Programas (todavía tiene errores tipográficos).

    Bentley, Perlas de programación, Más perlas de programación, Programas de escritura eficiente.

    Cualquiera de los libros de Brian Kernighan con Ritchie, Plauger, y especialmente Rob Pike (en la programación de Unix)

    Me gusta el libro de Bill Wulf en su primer multiprocesador / SO: HYDRA / C.mmp (agotado).

    “Hennessy y Patterson”

    Sieworek, Bell y Newell en lecturas de arquitectura de computadora (agotadas).

    Muchos de los libros publicados por O’Reilly Media (p. Ej., Su libro lex / yacc; tenga en cuenta las ediciones anteriores y posteriores).

    Los libros de gemas de gráficos de Glassner.

    HOPL (Historia de los lenguajes de programación) 3 (quizás ahora 4) conferencias

    Historia de las estaciones de trabajo (estaba allí)

    Historia de la computación científica (también series ACM)

    Algunos libros de LISP….

    Más personas matemáticas

    Hafner donde los magos se quedan hasta tarde

    Levy Hackers (DEK querría que incluyera esto) también tiene un documental corto (1985)

    Cringley Accidental Empires con sus 2 documentales de 3 horas ( Trimupth of the Nerds and Nerds 2.0.1 (este último libro titulado no es de Cringley sino de su productor)).

    Aceite de serpiente de huevo de cuco y silicona de Stoll

    Sin duda me olvido de uno o dos títulos y los agregaré si los recuerdo. Creo que, en general, un estudiante debería leer todos los libros para saber de qué se trata un libro realmente malo. Y todos esos otros libros en el medio, también.

    Matemáticas / lógica, estructuras de datos y algoritmos son los cimientos de la informática. Le sugiero que aprenda esto primero antes de saltar a Networking, OS y DBMS. Hay una serie de libros excepcionales que puede consultar; Algunos son extremadamente matemáticos y otros son tan simples como los libros de cuentos. Tómese su tiempo, implemente algunos de los algoritmos más potentes y más utilizados con C / C ++ / Python.

    Algunos de los libros que sugiero que cada estudiante de CompSci remita,
    1. El arte de la programación por Donald Knuth.
    2. Fundamentos de estructuras de datos en C ++ por Ellis Horowitx et al.
    3. Introducción a los algoritmos de TH Cormen
    4. Algoritmos de Robert Sedgewick (Highly Mathematical)
    5. Algoritmos desenchufados (Debe leer; como un libro de cuentos)
    6. Programación Pearl por Jon Bentley (Debe leer)

    Hay tantos libros para un estudiante de informática que están calificados como los mejores a lo largo de la historia.

    Aquí hay tres de ellos que han sido calificados 4.4 de 5 por Goodreads.

    El primero de ellos se llama “Estructura e interpretación de los programas de computadora, 2ª edición de Abelson y Sussman”.

    Este libro es verdaderamente uno de los clásicos de la programación. SICP no solo mejora y te hace más fuerte en la codificación sin importar el idioma que uses, sino que también te enseña nuevos idiomas y técnicas para aprender.

    Los cinco capítulos de este libro le enseñarán cómo pensar y comprender los programas y el proceso computacional. He visto a muchos lectores decir cómo este libro ha cambiado su perspectiva sobre la computadora.

    De todos modos, es un libro que vale la pena leer si realmente estás buscando uno de los mejores libros para programar.

    Aquí está el enlace para que revises el libro y lo compres: https://www.amazon.com/gp/produc

    Otro buen libro se llama “Código: El lenguaje oculto del hardware y el software de la computadora” de Charles Petzold. Este libro no solo trata sobre cómo codificar o qué hacer con el código, también incluye la historia y el alcance. Si usted es uno de los que realmente está interesado en saber de dónde provienen los métodos científicos y por qué, este libro está escrito exactamente para usted.

    Este es el enlace que puede revisar y comprar: https://www.amazon.com/gp/produc

    Finalmente, el último se llama “El lenguaje de programación C” escrito por Brain Kernighan y Dennis Ritchie. Esto fue escrito para ayudar al lector a aprender cómo programar en C, pero tenga en cuenta que este libro no es para principiantes, por lo que lo menos que el lector debe tener es un fondo de la estructura de datos. Algunos dicen que este libro es como una Biblia para la programación de C

    Aquí está el enlace para usted: https://www.amazon.com/gp/produc

    Creo que un buen informático debe conocer las matemáticas y adoptar el enfoque del “enfoque matemático de la computación”. Desafortunadamente muchas personas piensan que la informática es la programación informática. Aquí están algunas de mis sugerencias sin embargo:
    1. Comienza a aprender CS con ” Linear Algebra by Gibert Strang “. Toda la organización de la memoria dentro de una computadora está representada matemáticamente como una matriz.
    2. “Matemáticas concretas: una base para la informática, Graham, Knuth, Patashnik
    3. “El diseño de las cosas cotidianas – Donald A Norman”
    4. Un libro imprescindible para todos los programadores ” El lenguaje de programación C de Kernighan y Ritchie ” – Especialmente para las universidades de la India. No lo lean los autores locales. ¡Es inquietante!
    5. El libro (4) puede complementarse con ” C: A Manual de referencia – Samuel P. Harbison y Guy R. Steele ” y ” Programación de expertos C: Secretos de Deep C por Peter V. Linden
    6. Para saber cómo se almacenan los datos en una computadora y su funcionamiento, tenga una copia de ” Introducción a los algoritmos de Coremen “.
    7. Ahora ya sabes qué es la programación y cómo programar. A continuación, puede comenzar a saber qué pasa con mi programa después de decir gcc hello.c -o hola. Eso es donde los compiladores ayudarán. El mejor libro según los compiladores es ” Compiladores: Principios, Técnicas y Herramientas , Alfred V. Aho, Mónica S. Lam, Ravi Sethi y Jeffrey D. Ullman”. Complementa esto con las conferencias de video de la Universidad de Stanfor sobre compiladores y el sitio web de GCC.
    8. Después de esto, necesita saber sobre el cerebro de la computadora, los sistemas operativos. Nunca te sugiero que leas el enfoque tradicional de OS, por ejemplo, Galvin, tanenbaum, Stallings. Probar un nuevo enfoque. Aprende primero qué es un “Kernel”. Descargue el código fuente del kernel de Linux. Tome la ayuda de ” Linux Kernel Development por Robert Love ” Cree el código fuente, haga cambios, vuelva a construir, escriba su propio código, vuelva a construir. ¡Mira el milagro! Puede complementar esto con cualquier libro estándar sobre el sistema operativo para obtener una visión más amplia del sistema operativo.
    9. ¿En qué se ejecuta todo el código y el sistema operativo? Es un hardware. Por lo tanto, tenga una copia de ” Arquitectura de computadora – Un enfoque cuantitativo por Patterson y Hennessey “. Complemente estas conferencias en línea en Coursera sobre CA para una mejor comprensión.
    10. Un libro clásico sobre sistemas de bases de datos es de Navathe.
    11. Fans de Netwoking Por favor no empieces con Tanenbaum. Si eres bueno en C, usa el libro ” Programación de red Unix por Richard Stevens
    12. Los tipos de sistemas incrustados pueden comenzar con ” Un cebador de software integrado por David E Simon
    13. “Pensando en Java por Bruce Eckel
    14. Para todos los próximos temas en CS, como la computación en la nube, el aprendizaje automático, el análisis de datos, Internet de las cosas y otros. Google es la mejor fuente de información.

    -ds

    Como muchos ya han mencionado, hay una serie de excelentes libros sobre informática.

    La Introducción a los Algoritmos, es excelente en algoritmos. Se está utilizando en muchas de las mejores escuelas, y es uno de los libros que se sugiere para la preparación de la entrevista de Google.

    El otro libro, que también se sugiere para la preparación de la entrevista de Google, es The Algorithm Design Manual , escrito por Steven Sol Skiena, que es un profesor de ciencias informáticas distinguido en la Stony Brook University.0

    Finalmente, este es un sitio web llamado Dorado List que tiene una lista de los mejores libros en diferentes áreas de ciencias de la computación e ingeniería eléctrica en las mejores universidades, o sugerido por algunos de los profesores más conocidos.

    Puedes conseguir tantos libros de computación. Pero quiero categorizar en 3 tipos
    1. Libros de informática para profesionales

    2. Libros de informática para estudiantes de escuela.

    3. Libros de Informática para Ingeniería / Cursos Profesionales

    Libros de informática para profesionales

    • Servicios web de Amazon para administradores para dummies
    • Informática Iluminada, 6ª ed.
    • Codificación segura en C y C ++
    • Haciendo Java Groovy
    • PHP y MySQL para sitios web dinámicos: Guía Visual QuickPro, 4ª ed.
    • Rendimiento de Java
    • HTML y CSS en 24 horas: Sams Teach Yourself (actualizado para HTML5 y CSS3)
    • Planificación de recursos empresariales
    • Seguridad de la red
    • Introducción a los gráficos por ordenador
    • Estructuras de datos y algoritmos en Java, 2ª ed.

    Todos estos libros se recogen en base a la popularidad. Puede elegir libros según el requisito.

    Libros de informática para estudiantes de escuela

    • Descifrando el código de la creatividad
    • Mi oficina 2016
    • Mi Excel 2016
    • Mi PowerPoint 2016
    • El lenguaje de programación C: versión ANSI C, 2ª ed.

    Estos son los libros que son populares entre los que asisten a la escuela y aprenden conceptos básicos de computación como Desktop Publishing.

    • Algoritmos aritméticos de computadora
    • Enfoque práctico de estructuras de datos y algoritmos
    • Programación de Windows: escribiendo aplicaciones de Windows 8 con C # y XAML, 6ª ed.
    • Un libro sobre C, 4ª ed.
    • Programación orientada a objetos con C ++
    • Un libro de texto de arquitectura informática
    • Ingeniería Informática Básica
    • Introducción al sistema de gestión de bases de datos
    • Programación del sistema
    • Inteligencia artificial
    • Concepto de Programación y OOPs.
    • Sistema de Información de Gestión
    • Fundamentos de las computadoras

    Fui B.tech Student of batch 2007 y les he compartido estos libros que están de acuerdo con el programa de estudios de PTU, UPTU, Thapar University, IPU, DTU, NSIT y muchas otras universidades indias. Yu puede encontrar estos libros según el plan de estudios.

    La informática es un campo muy amplio, por lo que agregaré un par de libros relacionados con la ingeniería de software:

    • Tipos y lenguajes de programación por Benjamin C. Pierce
    • Estructura e interpretación de programas de computadora por Abelson, Sussman, Sussman
    • Patrones de diseño: elementos de software orientado a objetos reutilizables por Gamma et. Alabama. (_el_ libro clásico sobre patrones de diseño, aunque hay muchos más libros realmente buenos y patrones como, por ejemplo, la serie POSA)
    • Construcción de software orientada a objetos por Bertrand Meyer (buena introducción de bajo nivel en lenguajes de programación orientados a objetos, no realmente en diseño orientado a objetos)
    • Explicación de la programación extrema: Abrazar el cambio por Kent Beck
    • Desarrollo Ágil de Software. Principios, patrones y prácticas de Robert Martin

    Para agregar una perspectiva de ingeniería de más bajo nivel a esta lista:

    • Organización y diseño de computadoras, Cuarta edición: La interfaz de hardware / software por David A. Patterson (Berkeley), John L. Hennessy (presidente de Stanford)

    Un libro de texto clásico, estándar de oro y uno de los pocos libros en los que Internet no es superior en la actualidad; de hecho, no se puede ni siquiera estar cerca de competir.

    Una cita de alguien competente en el New Yorker de esta semana [1]:

    La tecnología MIPS ha contribuido a la miniaturización de la electrónica, haciendo posible los chips que alimentan todo, desde computadoras portátiles y teléfonos móviles hasta refrigeradores y tableros de instrumentos de automóviles. “RISC fue fundamental”, dice Andreessen. “Fue una de las tal vez cinco o seis cosas en la historia de la industria que realmente importan”.

    [1] http://www.newyorker.com/reporti

    Todavía no he leído nada mejor que el Código: el lenguaje oculto del hardware y el software de las computadoras por Charles Petzold .

    Es un libro fantástico. No te lleva a los algoritmos típicos (al menos eso recuerdo), sino que explica de la manera más intuitiva posible cómo se construye una computadora desde flip flops y lógica binaria hasta ensamblaje, lenguaje intermedio y una compilación completa de Un lenguaje utilizable.

    Básicamente, los programadores principiantes pueden adquirir una comprensión amplia de la base sobre la que se basan los programas que está construyendo al leer este libro. Se parece más a una publicación de no ficción que a un tutorial en lenguaje de programación, es decir, dado su tema, es una lectura fácil que puede hacer en el sofá. Dependiendo de su habilidad y nivel de conocimiento, puede haber algunas secciones que tenga que volver a leer varias veces hasta que lo entienda, pero no sentirá que necesita ir a la silla de su computadora e intentar algo para comprenderlo. eso.

    Si puede hacer aritmética básica, puede obtener a través de este libro. Esa parece ser la premisa oculta. Que las computadoras son fáciles y deberían ser fáciles de entender. Este libro es un testimonio de eso. Aunque estoy seguro de que algunos encontrarán que esto no es lo suficientemente profundo. Pero el punto es: el aprendizaje, por lo general, creará muchos puntos de entrada para que pueda continuar en su viaje hacia la programación y la informática. Aclarará muchas cosas y esencialmente hará que el camino parezca menos aterrador y fuera de alcance. Este libro lo consigue realmente bien. Los programadores de alto nivel saldrán sintiéndose mucho menos inseguros acerca de su falta de conocimiento de los fundamentos de lo que sea que estén desarrollando. Sé que lo hice. No puedo decir lo suficiente sobre este libro. Es el trato real. Estoy seguro de que aquellos con un título en ciencias de la computación podrían tener más que decir (es decir, probablemente piensan que es un resumen general), pero creo que para todos los demás es un título en ciencias de la computación en un libro que puede leer en una o dos semanas. Al menos la mitad del grado. Para la segunda mitad, recomiendo Algoritmos en pocas palabras. ¡Y hecho! Vuelva a programar su aplicación de reacción de JavaScript de alto nivel y continúe con su vida.

    En una nota al margen: es mi opinión que la teoría primero es el camino equivocado. Aplicación primero, la teoría según sea necesario es el enfoque correcto. De lo contrario, es como aprender teoría musical antes de que incluso te guste tocar música. Puede que ni siquiera te guste ser un programador o ser natural en ello. Y si pasas 4 años estudiando teoría primero, habrás pasado mucho tiempo para descubrir qué podrías tener en un mes. Además, puede absorber la alegría y la diversión de la exploración de la programación y la informática. Es natural y divertido aprender mientras te sumerges en problemas reales. Todo lo que puedes aprender está en internet. Es muy gratificante y, a menudo, más rápido aprender cosas cuando lo aprendes para lograr un objetivo específico. La teoría que aprendes parece tener mucho más sentido frente a algún objetivo al que intentas aplicarla. En resumen, en su carrera informática, puede aprender lo mismo mucho más rápido y mucho más divertido si lo hace junto con los problemas reales.

    Pero dicho esto, a veces tienes que dar un paso atrás y asignar tiempo a los fundamentos, incluso si no tienes un problema específico con el que estén relacionados. Sin embargo, sabrá cuándo es el momento de repasar los algoritmos o, finalmente, aprender cómo funciona la computadora por debajo de su nivel de abstracción diario. Solo sepan que un porcentaje cada vez mayor de nosotros los programadores tomamos la ruta aplicada, en lugar de la teoría de la ciencia de la computación primero + la ruta de educación formal. Probablemente sea la mayoría de los programadores en este momento. En resumen, no estás solo aprendiendo esto a medida que avanzas. Aprende a disfrutar eso temprano y sálvate del dolor de la inseguridad de no saberlo todo. Esto es una exploración e investigación, y tal vez haga algunos descubrimientos que nadie más haya podido hacer, y mucho antes de dominar y comprender todo lo que hay que saber sobre la computadora. Quizás ese es el mayor punto de venta: ¡no tiene que saber todo antes de poder contribuir al mundo de la computadora! Así que disfrute sus actividades de programación, sabiendo que en su exploración única en cualquier momento puede encontrar algo altamente novedoso y valioso.