$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] Anyone is interested in being review manager of âApplicationâ?
From: Sohail Somani (sohail_at_[hidden])
Date: 2014-05-05 15:58:32
On 03/05/2014 9:34 AM, Renato Forti wrote:
> Hi All,
>
>
>
> The proposed âBoost.Applicationâ, needs a Review Manager. Anyone is
> interested?
>
>
>
> The Docs:
>
> http://www.dokfile.com/appbeta4/docs/libs/application/doc/html/index.html
It's certainly a well-documented library but also contains a lot of 
different concepts!
Anyway, I don't know about being a review manager but I can make a 
suggestion:
The application::context type functions as a service locator (i.e., the 
Big Fat Service Locator Pattern). This is generally considered an 
anti-pattern because it is difficult to see dependencies for a piece of 
code without reading the code itself and even then, you can miss it.
What I would suggest the author (is that you?) look into is a way to 
automate the provision of all the data the application needs, perhaps in 
the application's constructor or in the function call operator(). The 
technique is generally known as dependency injection and is usually 
coupled with an inversion of control container. Something that is quite 
encouraging is in reading the code for the proposed library, you seem to 
have most of the pieces anyway.
I have written my own library for this purpose[1] but it is fairly 
unsuitable for consumption by anyone but me. Feel free to steal ideas if 
you think they are useful to you.
Sohail
[1] https://bitbucket.org/cheez/dicpp/wiki/Home