Red de conocimiento informático - Conocimiento informático - Libros imprescindibles para aprender el lenguaje C

Libros imprescindibles para aprender el lenguaje C

Brian W.Kernighan, Dennis M.Ritchie, "Lenguaje de programación C"

Versión fotocopiada de Tsinghua, conjunto de ejercicios versión de traducción mecánica (versión nueva, versión anterior): conjunto de ejercicios<; /p>

Este es, con diferencia, el clásico más respetado de todos los libros sobre lenguajes de programación y una lectura obligada para cualquier programador de C. Debido a que fue diseñado por Dennis M. Ritchie, el diseñador del lenguaje C, y Brian W. Kernighan, un famoso informático, recibió el sobrenombre de "Kamp; R C". Fue el primero en presentar el programa "Hello World!", que se convirtió casi en el primer ejemplo en cualquier libro de introducción al lenguaje de programación.

Así como el lenguaje C en sí es conciso, compacto y potente, este libro es ligero, breve y lleno de tensión. A través de descripciones concisas y ejemplos típicos, describe de manera integral, sistemática y precisa las diversas características del lenguaje C y los métodos básicos de programación en C. El contenido cubre conceptos, tipos y expresiones básicos, y flujo de control, funciones y estructuras de programas, punteros. y matrices, estructuras, entradas y salidas, interfaces de sistemas UNIX y bibliotecas estándar, etc.

La concisión y la claridad son las características más importantes de este libro. Este pequeño libro puede enseñarle muchos conocimientos que un "libro grande" que es varias veces más grueso. Creo que aquellos redactores técnicos que reúnen fácilmente cientos o incluso miles de páginas deberían aprender de K&R. Para los programadores intermedios y avanzados que desean adquirir rápidamente conocimientos serios del lenguaje C sin perder ni un poco más de tiempo, este libro es la primera opción.

Por cierto, el índice de este libro es excelente y de gran valor práctico, lo que se puede atribuir en primer lugar a la concisión del texto. Además, aunque parezca un tutorial, en realidad es una guía para programadores profesionales. Si no tiene experiencia en programación de otros lenguajes o conocimientos básicos del lenguaje C, es posible que este libro no sea adecuado como su libro de comprensión del lenguaje C.

2. Peter Van Der LinDen, "Programación experta en C"

Programación experta en C

El lenguaje C es un lenguaje de programación serio, pero esto no Significa que los libros en lenguaje C deben predicarse con seriedad. En este libro, apodado el "Libro del pez" por los programadores de C (hay un celacanto "feo" en la portada), Peter, como miembro del equipo central de desarrollo del compilador y sistema operativo de SUN, demostró vívidamente que tiene un profundo conocimiento técnico. , rica experiencia en proyectos, excelentes habilidades de escritura y humor característico. En este trabajo, el autor integra naturalmente anécdotas, sabiduría y humor en descripciones técnicas con una escritura fluida y un estilo de escritura humorístico. Se lee como una novela y es muy interesante. Este libro cuenta la historia del lenguaje C, las características del lenguaje, las declaraciones, las matrices, los punteros, las conexiones, el tiempo de ejecución y el uso de la memoria. Revela muchos aspectos oscuros del lenguaje C, especialmente un análisis en profundidad de las declaraciones, las matrices y los punteros, y el uso de la memoria. etc. detalles. Para convertirse en un programador experto en C, estas son todas las cosas que debe dominar. A diferencia de otros libros en lenguaje C que están llenos de ejemplos abstractos, este libro contiene una gran cantidad de ejemplos de programación en C del mundo real, que tienen un alto valor de referencia para los programadores de C. Además, cada capítulo termina con un "tómalo con calma" muy interesante, y el Apéndice A "Secretos de las entrevistas de trabajo para programadores" es un buen material para que los programadores de cualquier idioma aumenten su confianza antes de solicitar un trabajo.

Sospecho que los verdaderos expertos en C tal vez no necesiten leer este libro: desde el contenido hasta la organización y el estilo de escritura, este es un libro de lectura avanzada fácil y agradable para "desde principiantes hasta expertos", por lo que merece una lectores más amplios. Los programadores jóvenes a menudo necesitan un estímulo entusiasta. En el proceso de lectura de este libro, quedará profundamente infectado por la pasión del autor por la programación.

No existe la perfección.

Creo que el defecto de este libro es que, como la mayoría de los libros mediocres sobre C, incluye un capítulo superfluo sobre C. Desde la perspectiva actual, esta descripción no es ni exhaustiva ni justa. Sin embargo, dado que el autor estaba analizando C desde la perspectiva de un programador de C en 1994, esto no es sorprendente. 3. Samuel P. Harbison, Guy L. Steele, "Manual de referencia del lenguaje C (quinta edición)"

Versión fotocopia (Machinery Industry Press), versión china (Machinery Industry Press)

Entre los libros de manuales de referencia del lenguaje C, C: A Reference Manual, del que son coautores Samuel P. Harbison y Guy L. Steele, es excelente. La quinta edición de este manual agrega una nueva introducción al estándar C99 para satisfacer las necesidades del aprendizaje del lenguaje C en la nueva era. Todo el libro se divide en dos partes: la primera parte se centra en las características del lenguaje C y la segunda parte analiza exhaustivamente la biblioteca estándar de C. Este libro cubre todo, desde C99, C89, C tradicional, todas las versiones de la biblioteca de tiempo de ejecución de C y la escritura de código C que sea compatible con C.

Este manual es sólo moderadamente denso, pero describe aspectos del lenguaje C, tanto presentes como pasados, con mayor claridad que otros manuales de referencia que son "más densos" de lo que es. Todo el manual tiene descripciones precisas de detalles técnicos, organización clara y contenido completo y detallado pero conciso. Basta decir que sobresale en amplitud, profundidad y precisión. Para los programadores de C intermedios y avanzados, vale la pena tener este manual en sus escritorios y es casi seguro que se utilizará con más frecuencia que el trabajo de K&R.

4. David Hanson, "Interfaz e implementación del lenguaje C: tecnología para la creación de software reutilizable", Machinery Industry Press

Interfaz e implementación del lenguaje C: tecnología para la creación de software reutilizable

Una razón importante por la que el lenguaje C ha podido perdurar durante más de treinta años radica en su adaptabilidad. En esta era en la que mecanismos avanzados como "reutilización", "orientado a objetos", "componentes" y "manejo de excepciones" vuelan por el cielo, el lenguaje C aún puede satisfacer en gran medida la arquitectura de software moderna en virtud de su Lenguaje pequeño y elegante con características solicitadas. Sin embargo, si desea alcanzar este nivel, debe alcanzar el nivel más alto en habilidades de aplicación de C. En el desarrollo de sistemas integrados, software de sistemas y sistemas con requisitos de rendimiento extremadamente altos, los desarrolladores deben alcanzar este nivel y dominar las funciones avanzadas del lenguaje C para cumplir con los requisitos de eficiencia, flexibilidad y reutilización al mismo tiempo. Desafortunadamente, aunque hay muchos libros técnicos en lenguaje C, solo unos pocos trabajos se centran en este campo importante. Las interfaces e implementaciones C de David Hanson son una de las mejores.

David Hanson es colaborador del conocido compilador gratuito lcc en la industria. En este proyecto, es responsable de proporcionar una infraestructura altamente reutilizable. En la práctica continua, utilizó completamente ANSI C para formar un conjunto completo de bibliotecas de componentes reutilizables. Esta biblioteca de componentes tiene una arquitectura clara, un rendimiento excelente y proporciona muchas funciones avanzadas, como un mecanismo de manejo de excepciones similar a Win32 SEH, una biblioteca de subprocesos portátil, un grupo de memoria de alto rendimiento y componentes de estructura de datos reutilizables enriquecidos. David Hanson escribió en este libro la experiencia que acumuló en el proceso de creación de estos componentes y su exquisito análisis de su código fuente. Un trabajo así es sin duda una obra maestra inolvidable en el campo del lenguaje C. No es de extrañar que el difunto y famoso escritor técnico Richard Stevens elogiara este libro. Dijo: "La mayoría de los programadores de C han olvidado la tecnología de este libro durante demasiado tiempo". Programadores principales que han alcanzado el nivel más alto, este libro es una lectura obligada.

Además de los cuatro libros anteriores, también me gustaría recomendar el libro de Andrew Koenig "C Traps and Defects" (People's Posts and Telecommunications Press) y C How to Program, escrito en coautoría por Deitel y su hijo. .

Programación experta en C

Andrew Koenig es uno de los pocos expertos en C del mundo y su libro puede ser el clásico más sencillo del lenguaje C. Describe de manera concisa las trampas y defectos en la programación en C, incluidas trampas léxicas, trampas de sintaxis, trampas semánticas, conexiones, funciones de biblioteca, preprocesadores y defectos de portabilidad. El último capítulo también brinda información sobre cómo reducir las sugerencias de errores del programa y las respuestas de referencia. preguntas de capítulos anteriores. Aunque este folleto fue escrito antes de que se formulara el estándar C89, incluso hoy, después de la promulgación del C99, la mayoría de los errores y fallas mencionados en el libro son tan alarmantes como lo eran hace quince años.

Tutorial de programación en C

C How to Program, escrito en coautoría por Deitel y su hijo, siempre ha sido un muy buen tutorial de introducción al lenguaje C. La traducción al chino que tengo se llama. "Tutorial de programación en C" (Publicado por Machinery Industry Press, segunda edición del libro original). Además de una descripción formal de la tecnología (complementada con muchos ejemplos concisos), cada capítulo va seguido de un resumen, terminología, errores de programación comunes, buenos hábitos de programación, consejos sobre rendimiento, consejos sobre portabilidad, revisiones de ingeniería de software, ejercicios de autoevaluación y respuestas, etc Todo el libro es claro, bien organizado y fácil de leer y comprender. Cabe mencionar que hay muchos libros introductorios que pueden desecharse después de leerlos una vez, pero este es una excepción.

Conclusión Los libros anteriores se limitan en gran medida a describir el lenguaje C y la biblioteca estándar en sí. Si desea aprender más tecnología de programación C profesional y relacionada con el campo, puede optar por leer estos libros. base de este libro, continúe consultando libros especializados. Además, en el campo de los libros en lenguaje C, hay muchos trabajos de nivel similar, que se basan simplemente en mi propia experiencia de lectura.