eclipse warnings

John Hendrikx john.hendrikx at gmail.com
Tue Dec 5 11:06:18 UTC 2023


There is an unwritten contract that getters should not have such side 
effects; IMHO if a getter is doing this, the getter is broken, and 
should not be named "getXXX".  Use something else like "find", 
"determine", "create" -- in other words, if a getter wants to do fancy 
tricks, that's fine, but it must be careful to ensure side effects don't 
influence the result.

--John

On 04/12/2023 18:55, Michael Strauß wrote:
> Side effects are not limited to race conditions. A getter might return
> a different value every time, or it might execute code other than
> simply returning a value, or a lazy evaluation scheme might cause
> other code to be executed. The point is, we don't know that at the
> call site, we'd need to inspect what the getter actually does.
>
>
> On Mon, Dec 4, 2023 at 6:47 PM Andy Goryachev <andy.goryachev at oracle.com> wrote:
>> This might be different.
>>
>>
>>
>> If we can guarantee that the access to the underlying variable(s) is single threaded - then no.  But we had at least one bug recently in JFXPanel where two threads were involved.  Those cases need to use a very different access pattern(s), depending on the exact circumstances.
>>
>>
>>
>> -andy


More information about the openjfx-dev mailing list