Colección de citas famosas - Frases motivadoras - Trabajar en el algoritmo C es demasiado difícil y me siento incompetente. ¿Qué debo hacer?

Trabajar en el algoritmo C es demasiado difícil y me siento incompetente. ¿Qué debo hacer?

Cuéntame mi experiencia.

En primer lugar, con respecto a los libros de introducción, siento que hasta ahora no había visto un libro de introducción de

C adecuado para principiantes. Los libros clásicos están escritos por maestros, pero no son en absoluto adecuados para principiantes. Este es probablemente un obstáculo importante para el crecimiento del grupo C.

Personalmente creo que el libro más adecuado para empezar es "De la revolución orientada a objetos de C a C".

Por supuesto, con solo mirar el título, todo el mundo lo adivinaría. que este es un libro de Taiwán. Es un libro de 1990 escrito por Chen Jianwei.

El Sr. Chen era miembro del comité de estándares C en ese momento. Creo que este libro es bastante bueno y no es muy largo. Cubre todo, desde ingeniería de software, pensamientos y conceptos de OO hasta lenguaje C. La plantilla incluso se mencionó en el apéndice del libro en ese momento.

Desafortunadamente, este libro ya no se puede encontrar. Yo tengo una copia, pero un amigo me la pidió prestada y no sé dónde acabó. Este es el primer libro C que leo. En Taiwán en ese momento, este libro, C Primer y The C Programming Language se consideraban tres clásicos.

"C Primer"

Este es uno de mis clásicos de C favoritos. Se puede decir que es un clásico entre los clásicos. Ya va por su

cuarta edición. Lo que leí es la tercera edición, traducida por jjhou. Por supuesto, aunque se llama Primer

, definitivamente no es para principiantes. Especialmente la complejidad de muchos detalles (como el proceso de decisión del nombre)

Está garantizado que hará que los principiantes vomiten sangre. Creo que incluso a muchos veteranos les resultará insoportable.

Básicamente, considero este libro como un "diccionario" o "enciclopedia". Cada vez que no estoy seguro de algunos detalles,

simplemente lo hojeo. A veces me aburro sostenerlo por la noche y me quedo dormido sin darme cuenta.

Si puedes leer brevemente este libro y familiarizarte con más de 60 ~ 70 de él, creo que has alcanzado el nivel de un maestro C ordinario.

Por supuesto, los maestros de C no son iguales a los maestros de software. Hay un muy buen artículo en la sección de esencia. No es difícil convertirse en un maestro de la programación

Es difícil convertirse en un maestro del diseño. De hecho, solo se necesita poco tiempo (de medio año a un año) para dominar C, pero la acumulación de mucha experiencia en programación y diseño de software definitivamente no tomará tres o cinco años. Las cosas generalmente toman más de diez. u ocho años.

"El lenguaje de programación C"

El padre de C, la obra maestra de B.S. Leí la edición especial de este libro, que también fue traducida de Taiwán.

Parece menos adecuado para principiantes que C Primer. Especialmente para principiantes que aún no entienden de programación. Este libro tiene un fuerte significado ideológico y filosófico, y gran parte del contenido no trata sobre tecnología del lenguaje, sino sobre pensamiento de diseño. Si ha leído C Primer

y ha leído este libro, debería comprenderlo mejor.

En términos de contenido, aunque no es tan detallado como C Primer, es muy refinado, conciso y conciso.

Arroja constantemente varios niveles de "diseño" (en lugar de gramaticales). ) preguntas que impactan el pensamiento de los lectores y te obligan a prestar más atención a la esencia de la programación.

En algunas partes, creo que el lenguaje de programación C es mejor que C Primer.

Por ejemplo, ¿por qué existen tantas características del lenguaje? El momento de su aplicación y los ejemplos que da son muy apropiados. C Primer presta más atención a la interpretación completa de la gramática y las reglas (después de todo, el maestro es un experto en compiladores)

p>

"C efectivo"

Este libro también es un clásico. Se lo recomiendo a cualquiera que haya aprendido C pero sepa poco sobre C

Este libro comienza un "reingreso".

Enumera algunos de los errores más comunes cometidos por los programadores de C, mal uso y detalles importantes ignorados.

Utiliza 50 términos y los enumera uno por uno. Aunque estos contenidos no están escritos en C Primer

u otras grandes obras clásicas. Pero probablemente sea difícil para cualquiera tener la paciencia necesaria para leerlo de principio a fin. (Supongo que el propio autor tampoco lo soporta...)

La ventaja de este libro es que un tema a la vez explica por qué esto es así, los pros y los contras y las deficiencias de Otros métodos antiguos.

, las deficiencias se analizan una por una. Permita que los lectores comprendan y dominen verdaderamente la clave técnica para un excelente estilo de programación en C.

Si no soporta C Primer, puede comenzar con este primero. Cuando encuentre detalles gramaticales.

Cuando esté confundido, puede consultar C Primer y otros libros de texto.

"C más eficaz"

Igual que el anterior, temas más profundos, algunos temas ya se pueden considerar como un maestro de C (

También es fuera del alcance de los libros de texto), como evaluación diferida, virtualización de

constructores, recuento de referencias, clases de proxy... etc., algunas

son tecnologías especiales y otras ya se consideran Patrones de diseño.

Por supuesto, este libro no es adecuado para principiantes. Es adecuado para lectores que ya están

familiarizados con varias características básicas de C.

"Exceptional C"

Cuando leí este libro por primera vez, casi dudé si alguna vez había aprendido C. Pero ahora sólo puedo decir que este libro también es un clásico entre los clásicos. Ha bajado al nivel de tocar el Modelo de Objetos C

. En particular, el capítulo Excepción-Seguridad es una serie de profundizaciones paso a paso, lo que ha cambiado enormemente mi comprensión de C.

Además, menciona Pimpl Idiom, que también es útil para mejorar la eficiencia de la compilación de C. Otros temas, como la programación genérica

y varios temas de discusión sobre la biblioteca estándar, objetos temporales, vida útil de los objetos, conversión automática, etc., también son

bastante detallados. Si no ha leído este libro y confía en sus habilidades en C, puede

probarlo.

"Dentro del modelo de objetos C"

Este libro y "Essential COM" son dos libros que no puedo leer. Sólo para referencia de expertos

. Es adecuado para aquellos que estén interesados ​​en profundizar en el núcleo del lenguaje C (por ejemplo, aquellos que quieran desarrollar el compilador C

). De hecho, no es muy difícil, pero creo que no es muy práctico. Si tienes tiempo, es mejor echar un vistazo a la serie Effective/Exceptional C.

"La biblioteca estándar de C"

Un clásico entre los clásicos, aprender C sin aprender la biblioteca estándar es como tener cerebro pero no manos ni pies, y es difícil usarlo .

En comparación con J2EE, .NET y otros marcos a gran escala, la biblioteca estándar C es muy joven (hay una

broma: hay muchas cosas en JAVA y .NET que nunca sabrás en tu vida las cosas que se utilizarán).

La biblioteca estándar de C solo estandariza E/S, flujos, excepciones, algoritmos y estructuras de datos estándar, así como algunos

problemas de internacionalización. Algunas funciones importantes, como: IPC, GUI, etc., no están incluidas.

Este libro fue escrito por un alemán. Su contenido es pragmático y pertinente y ha ganado elogios unánimes del mundo. Hay un capítulo al principio del libro que presenta específicamente los conceptos básicos de la programación genérica en C. Se explica muy claramente. Es el mejor libro de introducción (aprendizaje de STL) y libro de referencia que he leído.

,libro de referencia. Aunque es un libro grande, definitivamente vale la pena comprarlo.

"Plantillas C"

Este libro parece haber sido publicado en 2001, y la traducción al chino no se publicó en Taiwán hasta el año pasado. El contenido es completo

Cubre todos los detalles técnicos y aplicaciones de las plantillas, y es tan rico que resulta inimaginable.

A veces pienso que si sigo jugando con la plantilla, me obsesionaré con ella. El contenido de este libro

a veces me hace pensar de esta manera. Aún así vale la pena echarle un vistazo.

"Diseño C moderno"

Este libro ha sido mi libro C favorito en los últimos dos años. ¡Me encanta! El autor lleva

la tecnología de programación de plantillas C a un mundo nuevo, ¡un libro que deja atónitos a muchos maestros de C

! Combinando inteligentemente GP y OO, los politipos dinámicos

y los politipos estáticos pueden cooperar perfectamente, y también le da al campo de los patrones de diseño una visión y un pensamiento completamente nuevos. Su implementación, la biblioteca de funciones de Loki, también es algo que uso a menudo

(aunque sólo una parte se puede compilar y funcionar normalmente).

Un libro que los aspirantes a masters de C no deben perderse. Por supuesto, antes de eso, primero debes aprender C Primer.

"El diseño y evolución de C" (Damp; E)

Este libro no está traducido en Taiwán. Leí la versión en inglés al principio, pero luego lo descubrí.

Hay una traducción de este libro en Beijing, así que le pedí a un amigo de mi colega que lo comprara.

Este libro no es apto para estudiar, sino para personas que estén interesadas en el proceso de desarrollo de C

El padre de C sale y cuenta en persona en qué principios se basa C.

>

¿Qué consideraciones especiales se han tenido en la selección de sus diversas características de lenguaje?

Además, en él se mencionan algunos factores históricos que afectaron el desarrollo de C.

Estoy leyendo este libro como una novela.

Además, los dos libros "More Exceptional C" y "C Gotchas"

Por alguna razón, no creo que me gusten mucho, aunque los temas que tratan son muy profundos.

Quizás por su poca practicidad, siempre siento que me parece un poco pedante.

Sin embargo, estos dos libros también son reconocidos como clásicos.

Hay muchos otros, como Pensar en C o Meditaciones en C, ambos clásicos.

El primero también es bueno y adecuado para usarlo como libro de referencia (el. Este último se parece más a un libro de cuentos)

. Pero para aprender C, creo que C Primer y The C Programming

Language son más adecuados (tienen el valor tanto de libros de texto como de referencia). Además,

C efectivo es. también genial. Pero depende de las preferencias personales, porque mucha gente piensa

Pensar en C es mejor.

El libro "Essential C" no está muy valorado. No es tan completo como C Primer

ni es apto para principiantes. Sólo se puede decir que es un libro preliminar. . Probablemente no necesites comprarlo.

Además, hay muchos libros dedicados a STL, algunos de los cuales son muy profundos, pero desde un punto de vista práctico,

creo que basta con una copia de The La biblioteca C estándar es más o menos suficiente.

STL efectivo se puede utilizar como libro de referencia y también es un muy buen libro.

Además de C, los libros independientes del lenguaje como "Design Patterns" y "Refactoring" también son buenos, aunque algunos ejemplos no están escritos en C.

De hecho, para los usuarios de otros lenguajes, es difícil aceptar que aprender C requiera leer tantos libros

(Creo que sólo los amantes de C realmente leerán estos libros). El mundo de la programación es infinito y cualquier tecnología tiene valor, por lo que además de C

JAVA, .NET, etc. se puede tocar sin pérdida alguna.

C Para ser práctico, es necesario aprender muchos marcos como GUI, base de datos, IPC, etc.

No existe un estándar unificado para estas cosas. Se puede decir que sí. Depende de la elección personal, generalmente basada en las necesidades del entorno laboral.