c open-source glib apr

GLib v APR pros y contras de cada



open-source (3)

Tengo un par de proyectos de programación de Hobby C que me gustaría comenzar. Estoy buscando una biblioteca de código abierto que tenga una licencia liberal (quiero crédito, pero prácticamente cualquiera puede usarlo). La biblioteca necesita tener cadenas mejor que la biblioteca estándar C y algunas primitivas de subprocesamiento portátiles.

Estoy considerando GLib y APR . ¿Cuál es tu experiencia práctica? ¿Cuál es la mejor biblioteca de C fundamental? ¿Hay otras bibliotecas llenando el mismo nicho?


Me gustaría ir con APR. APR es mejor en portabilidad Unix / Windows (siendo una biblioteca de portabilidad dedicada), GLib ha sido tradicionalmente más orientado a Unix. APR es una biblioteca más grande que GLib, con muchas cosas útiles (tablas hash, análisis de argumentos, archivos de E / S, administración de memoria, rutinas de memoria compartida, manejo de señales, etc.).


¿Hay alguna razón por la que no quieras usar el c ++ stl? Incluso si escribe código "c-style" sin clases, puede usar cadenas de C ++ y estructura de datos.

Hay muchas razones válidas para apegarse a C, por supuesto. Si ese es el caso, apoyaría la recomendación de glib. APR es más una capa de portabilidad que una biblioteca de utilidad.


Creo que glib es generalmente superior a apr. glib tiene muchas más estructuras de datos como bibliotecas portátiles. por ejemplo, tablas hash, todo tipo de listas, colas, pilas, matriz dinámica, también para el análisis de argumentos, el archivo io tiene sus propias envolturas también y la administración de la memoria es fácilmente modificable. Por ejemplo, puede hacer que el uso fácil del Boehm Weisser GC sea AFAIKT, nunca se ha hecho o es posible con Apache. Yo decidiría un poco diferente. Si necesita una biblioteca de estructuras de datos más útil, glib está mejor equipado. Si se trata de cosas de GUI, libapr no tiene nada, mientras que glib tiene gdk / gtk + y muchas cosas para gnome si se quiere.

Sin embargo, si se trata de cosas de red, libapr definitivamente tiene una ventaja sobre glib.

Entonces mis sugerencias son

  • Programación de escritorio : use GTK + y glib.
  • Cosas de red : use apr, pero tenga la seguridad de que glib también tiene todo este material portátil.