Code Improvement for Groovy

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Code Improvement for Groovy

Pawan Verma
Hello Devs,

As we all know, Groovy is a powerful language with great built-in
functions. Groovy Truth[1] is one of them, which is not used properly in
our code base. We have used UtilValidate Class to validate arguments for
Empty or NotEmpty, which can easily be done in groovy with built-in
functionality.

Current Code: if (UtilValidate.isNotEmpty(locations)) { ... }

Groovy Built-in Code: if (locations) { ... }

IMO, We should use this Groovy Truth feature instead of UtilValidate Class.
Please let me know your thoughts on this. Thanks!
[1] - http://groovy-lang.org/semantics.html#Groovy-Truth

--
Kind Regards
Pawan Verma
Technical Consultant
*HotWax Systems*
Reply | Threaded
Open this post in threaded view
|

Re: Code Improvement for Groovy

Jacques Le Roux
Administrator
Hi Pawan,

Sure, we use that from start a lot. But some don't it seems. A Jira fits with me

Le 15/05/2019 à 14:29, Pawan Verma a écrit :

> Hello Devs,
>
> As we all know, Groovy is a powerful language with great built-in
> functions. Groovy Truth[1] is one of them, which is not used properly in
> our code base. We have used UtilValidate Class to validate arguments for
> Empty or NotEmpty, which can easily be done in groovy with built-in
> functionality.
>
> Current Code: if (UtilValidate.isNotEmpty(locations)) { ... }
>
> Groovy Built-in Code: if (locations) { ... }
>
> IMO, We should use this Groovy Truth feature instead of UtilValidate Class.
> Please let me know your thoughts on this. Thanks!
> [1] - http://groovy-lang.org/semantics.html#Groovy-Truth
>
> --
> Kind Regards
> Pawan Verma
> Technical Consultant
> *HotWax Systems*
>
Reply | Threaded
Open this post in threaded view
|

Re: Code Improvement for Groovy

Rishi Solanki
+1

Best Regards,
--
*Rishi Solanki* | Sr Manager, Enterprise Software Development
HotWax Systems <http://www.hotwaxsystems.com/>
Linkedin: *Rishi Solanki*
<https://www.linkedin.com/in/rishi-solanki-62271b7/>
Direct: +91-9893287847


On Wed, May 15, 2019 at 8:33 PM Jacques Le Roux <
[hidden email]> wrote:

> Hi Pawan,
>
> Sure, we use that from start a lot. But some don't it seems. A Jira fits
> with me
>
> Le 15/05/2019 à 14:29, Pawan Verma a écrit :
> > Hello Devs,
> >
> > As we all know, Groovy is a powerful language with great built-in
> > functions. Groovy Truth[1] is one of them, which is not used properly in
> > our code base. We have used UtilValidate Class to validate arguments for
> > Empty or NotEmpty, which can easily be done in groovy with built-in
> > functionality.
> >
> > Current Code: if (UtilValidate.isNotEmpty(locations)) { ... }
> >
> > Groovy Built-in Code: if (locations) { ... }
> >
> > IMO, We should use this Groovy Truth feature instead of UtilValidate
> Class.
> > Please let me know your thoughts on this. Thanks!
> > [1] - http://groovy-lang.org/semantics.html#Groovy-Truth
> >
> > --
> > Kind Regards
> > Pawan Verma
> > Technical Consultant
> > *HotWax Systems*
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: Code Improvement for Groovy

Scott Gray-3
In reply to this post by Pawan Verma
Hi Pawan

Sounds good, just one point to be careful of:
maxRetry = 0
if (!maxRetry) {
 // Not set, use a default
 maxRetry = -1
}

Because groovy evaluates zero to be false, it wouldn't be possible to set
maxRetry to zero.  So it's best not to use groovy truth for null-checks on
numbers in some cases.  I thought it was worth mentioning since there's a
higher risk of making this mistake when making changes in bulk.

Regards
Scott

On Thu, 16 May 2019 at 00:29, Pawan Verma <[hidden email]>
wrote:

> Hello Devs,
>
> As we all know, Groovy is a powerful language with great built-in
> functions. Groovy Truth[1] is one of them, which is not used properly in
> our code base. We have used UtilValidate Class to validate arguments for
> Empty or NotEmpty, which can easily be done in groovy with built-in
> functionality.
>
> Current Code: if (UtilValidate.isNotEmpty(locations)) { ... }
>
> Groovy Built-in Code: if (locations) { ... }
>
> IMO, We should use this Groovy Truth feature instead of UtilValidate Class.
> Please let me know your thoughts on this. Thanks!
> [1] - http://groovy-lang.org/semantics.html#Groovy-Truth
>
> --
> Kind Regards
> Pawan Verma
> Technical Consultant
> *HotWax Systems*
>
Reply | Threaded
Open this post in threaded view
|

Re: Code Improvement for Groovy

Jacques Le Roux
Administrator
Thanks Scott,

Quite helpful!

Jacques

Le 16/05/2019 à 10:12, Scott Gray a écrit :

> Hi Pawan
>
> Sounds good, just one point to be careful of:
> maxRetry = 0
> if (!maxRetry) {
>   // Not set, use a default
>   maxRetry = -1
> }
>
> Because groovy evaluates zero to be false, it wouldn't be possible to set
> maxRetry to zero.  So it's best not to use groovy truth for null-checks on
> numbers in some cases.  I thought it was worth mentioning since there's a
> higher risk of making this mistake when making changes in bulk.
>
> Regards
> Scott
>
> On Thu, 16 May 2019 at 00:29, Pawan Verma <[hidden email]>
> wrote:
>
>> Hello Devs,
>>
>> As we all know, Groovy is a powerful language with great built-in
>> functions. Groovy Truth[1] is one of them, which is not used properly in
>> our code base. We have used UtilValidate Class to validate arguments for
>> Empty or NotEmpty, which can easily be done in groovy with built-in
>> functionality.
>>
>> Current Code: if (UtilValidate.isNotEmpty(locations)) { ... }
>>
>> Groovy Built-in Code: if (locations) { ... }
>>
>> IMO, We should use this Groovy Truth feature instead of UtilValidate Class.
>> Please let me know your thoughts on this. Thanks!
>> [1] - http://groovy-lang.org/semantics.html#Groovy-Truth
>>
>> --
>> Kind Regards
>> Pawan Verma
>> Technical Consultant
>> *HotWax Systems*
>>
Reply | Threaded
Open this post in threaded view
|

Re: Code Improvement for Groovy

Pawan Verma
Thanks Scott,

I'll keep that in my mind when changing this. Thanks!

--
Thanks & Regards
Pawan Verma
Technical Consultant
*HotWax Systems*
*Enterprise open source experts*
http://www.hotwaxsystems.com


On Thu, May 16, 2019 at 1:53 PM Jacques Le Roux <
[hidden email]> wrote:

> Thanks Scott,
>
> Quite helpful!
>
> Jacques
>
> Le 16/05/2019 à 10:12, Scott Gray a écrit :
> > Hi Pawan
> >
> > Sounds good, just one point to be careful of:
> > maxRetry = 0
> > if (!maxRetry) {
> >   // Not set, use a default
> >   maxRetry = -1
> > }
> >
> > Because groovy evaluates zero to be false, it wouldn't be possible to set
> > maxRetry to zero.  So it's best not to use groovy truth for null-checks
> on
> > numbers in some cases.  I thought it was worth mentioning since there's a
> > higher risk of making this mistake when making changes in bulk.
> >
> > Regards
> > Scott
> >
> > On Thu, 16 May 2019 at 00:29, Pawan Verma <[hidden email]
> >
> > wrote:
> >
> >> Hello Devs,
> >>
> >> As we all know, Groovy is a powerful language with great built-in
> >> functions. Groovy Truth[1] is one of them, which is not used properly in
> >> our code base. We have used UtilValidate Class to validate arguments for
> >> Empty or NotEmpty, which can easily be done in groovy with built-in
> >> functionality.
> >>
> >> Current Code: if (UtilValidate.isNotEmpty(locations)) { ... }
> >>
> >> Groovy Built-in Code: if (locations) { ... }
> >>
> >> IMO, We should use this Groovy Truth feature instead of UtilValidate
> Class.
> >> Please let me know your thoughts on this. Thanks!
> >> [1] - http://groovy-lang.org/semantics.html#Groovy-Truth
> >>
> >> --
> >> Kind Regards
> >> Pawan Verma
> >> Technical Consultant
> >> *HotWax Systems*
> >>
>