2008-10-21 17 views
5

Estoy buscando programas/proyectos de tamaño pequeño a moderado que muestren buenas prácticas modernas para desarrollar aplicaciones en C en Linux. Me gustaría aprender con el ejemplo y con curiosidad sobre cómo se hacen las cosas en el mundo real.C y prácticas/ejemplos modernos en Linux

Respuesta

3

La base de código XMMS2 es bastante joven y es un buen ejemplo para el estilo de codificación y las técnicas para usar C de una manera moderna, pero muy limpia (tiene que construir en muchas plataformas).

Incluye un modelo de cliente-servidor con comunicación multiplataforma, un sistema orientado a objetos dentro del servidor, un sofisticado sistema de complementos, enhebrado para cumplir con la necesidad en tiempo real de alimentar la tarjeta de sonido. Los complementos también ofrecen buenos ejemplos de incorporación de bibliotecas de terceros. Complementado con una API exportada para la que también están disponibles varias combinaciones de idiomas (lo que muestra cómo hacerlo).

Verá muchos problemas diferentes de hoy en día cubiertos dentro del código xmms2. La base de código es muy limpia y viene con un pequeño "código antiguo" aquí y allá, que todavía está bien escrito.

También utiliza un sofisticado sistema de compilación y los desarrolladores dependen en gran medida de las características de git. Entonces, hay mucho más por aprender que solo el código simple en sí mismo. La comunidad está activa y es útil en IRC, si tiene alguna pregunta sobre el código.

http://xmms2.xmms.se

Desventaja: No es pequeña. Pero es relativamente modular, especialmente cuando los componentes del servidor son objetos distintos, por lo que puede elegir una parte que cubra problemas específicos y aprender de eso. O incluso intente escribir su propio cliente, complemento o lo que sea.

0

Mi consejo es ir a lo grande. Las buenas prácticas casi no cuentan en proyectos pequeños, y lo que serían buenas prácticas para un gran proyecto, principalmente, te cabrean con un pequeño proyecto de un solo hombre.

9

The Art of Unix Programming

Un gran libro que es simplemente una alegría para leer. Incluso si no es un programador de * nix o un programador de C, los ejemplos y estudios de caso son geniales.

1

Tenga cuidado con algunos proyectos más grandes. Pueden ser una mezcolanza de código heredado y otras locuras. Por ejemplo: no mire la base de código de Mozilla/Firefox como ejemplo, es un gran desastre (aunque lentamente va mejorando).