glob2-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Libraries (was Re: [glob2-devel] Glob2 salvage proposal)


From: Andrew Sayers
Subject: Libraries (was Re: [glob2-devel] Glob2 salvage proposal)
Date: Wed, 26 Oct 2005 03:03:54 +0100
User-agent: Mutt/1.5.11

Only tangentially related to the salvage proposal, but I'd like to clear
up how we look at depending on external libraries.  As I understand it,
the libraries we currently depend on are:

* SDL_*
* libvorbis
* libspeex
* libfreetype
* zlib

Relying on external libraries has a number of pros and cons:

- it increases the number of dependencies your code has
- your project is at the mercy of someone else's interest
  in maintaining their codebase (or even keeping it online)
- your code becomes at most as secure and as portable as their code
+ they can provide functions that we could never create ourselves
+ they tend to have a lot more time and thought poured into them than we
  could afford for the minor parts of our codebase
+ well written, well-maintained libraries are often more secure and
  portable than the rest of the codebase.

My understanding of the current thinking in the project is that using
external libraries is generally frowned upon unless there is a pressing
need for them.  How frowned-upon is it and why?  If I really want to use
an external library with Glob2, what should I do?

One good example is that I'm trying out libboost-filesystem for use in a
few places.  Boost (www.boost.org) is a large collection of well-written
C++ libraries, and the filesystem library allows me to (for example)
iterate over a directory as if it were a standard container.  In the
long-term, I would be very tempted to use this library all over the
code.  How objectionable is this idea, and where should I make a note of
it if it's acceptable?

One way that this does relate to the salvage proposal is rewriting the
interface in QT.  Presumably this means getting rid of SDL for graphics,
but what about the rest of SDL?  Would we want to get rid of SDL
entirely?  If so, does anyone know of another platform-independent
networking library?  I had been looking at socket++
(http://www.linuxhacker.at/socketxx), but I'm now starting to think we'd
need a lower-level API to do the work we want to do.

        - Andrew




reply via email to

[Prev in Thread] Current Thread [Next in Thread]