James Hughes wrote:
Slightly off topic, but what I would find a great help with
regards to
learning Boost is a better description on what each library
can do, and more
importantly, what problems it solves.
For example, perhaps someone has a problem they need to
solve that a Boost
lib will help with, but just reading through the top level of the
documentation may not give them enough of a hint that this
is the case.
This issue has recently been the subject of discussion on the
developer
list. I can't remember exactly what the outcome was, though.
If you have
any concrete suggestions on how to make the library overview without
making it unreadable long, we'd love to hear them.
Even a simple list of common problems solved (or if inapplicable, the area
of computer theory covered by the component) at the top level of the docs
would help I think. Some (most) of the short descriptions are already pretty
good (I think that now, but when I first looked they were rather
bewildering), but for the more complicated libs, maybe more information
would be useful.
For example, Property map is described thus "Concepts defining interfaces
which map key objects to value objects". At first glance this seems to be
pretty similar to stl::map (to someone new perhaps to both Boost and STL),
so perhaps needs little more explanation at the top level as to what it's
for.
My pet one is simple loading and saving of configuration
information in XML.
Which library should/can I use for that? Serialisation? Or
is there a better
option? Or is there a boost lib in the wings perhaps aimed at that
particular task?
The property_tree library currently under review can do exactly that.
The Serialization library can load and save XML, but only in its own
particular format, i.e. you cannot make it load a schema you have
externally defined.
Another is Boost::graph - I see lots of questions about it
on the list, but
what real world problems does it solve?
That's what studying computer science is about: learning how to solve
problems. Having learned graph theory, the simple statement that
Boost.Graph helps with graph problems is worth a lot to me.
There is no
way to explain in a short statement what kinds of problems
the library
solves. Many kinds problems can be mapped to graphs.
Already did that - although it was twenty years ago! Problem with Computer
Science degrees I always thought (and that's what I did), was the lack of
real world application. A lot of theory, and *some* good stuff on
application, but not enough. Graph theory is a good example - I understand
the concepts (even from twenty years ago), but have never been given enough
examples of real world application to be able to apply it myself (perhaps I
have never had a need of course!).
James
Sebastian Redl
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users