On 17 August 2012 07:40, Luc Maisonobe <luc.maison...@free.fr> wrote:
> Le 16/08/2012 23:48, sebb a écrit :
>> On 16 August 2012 21:58, Gilles Sadowski <gil...@harfang.homelinux.org> 
>> wrote:
>>> Hello.
>>>
>>> In classes "HarmonicFitter" and "GaussianFitter" (in package
>>> "o.a.c.m.optimization.fitting"), there is an inner class "ParameterGuesser".
>>> All the necessary input for the guessing procedure is passed to the
>>> constructor; I thus propose that the guessing is performed at object
>>> construction rather than at the call to the "guess()" method. This will
>>> allow to declare all the fields "final". Moreover, all that can go wrong
>>> will be located in the constructor, turning the "guess" method into a mere
>>> accessor.
>
> +1 to Gilles suggestion.
>
>>
>> On the face of it, it sounds like the class does not even need to be
>> instantiated.
>> Could the guess method be turned into a static utility method to which
>> the parameters are passed?
>> Why bother creating an instance only to return the guess later?
>
> It could be. There are a bunch of methods involved and they exchange
> data which is now stored in a few class fields (observation arrays and
> the three estimated parameters), so these data should be added as
> parameters to the static functions.
>
> I'm not sure whether it is cleaner to have a small instance created for
> a short time to perform some difficult preprocessing or to have a bunch
> of static methods.

Instances need to be disposed of by GC whereas parameters
automatically disappear when a called procedure returns.
A class with no fields is guaranteed immutable.

But for large numbers of parameters, class data is perhaps cleaner.

> Luc
>
>>
>>> OK?
>>> If so, do I need to file a JIRA ticket for this change?
>>>
>>>
>>> Regards,
>>> Gilles
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>>> For additional commands, e-mail: dev-h...@commons.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
>> For additional commands, e-mail: dev-h...@commons.apache.org
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to