Investigation on the diffusion of innovation along with java releases
by Fernando Petrulio
Dear Developers,
we are members of the ZEST research group (Zurich Empirical Software
Engineering Team) based at the University of Zurich and the Delft
University of Technology. We are conducting an investigation on the
diffusion of innovations and we focus on the adoption of new language
features. Our research is focused on how API producers adapt their
interfaces to introduce support for Java 8’s lambdas. During the course
of our investigation, we manually inspected Been Validation’s source
code and documentation to understand whether Java’s lambdas have
widespread adoption. We would like to have your feedback on our
findings.
Our study focuses primarily on Functional Interfaces and Lambda
Expressions as these new features were introduced by the Java language
and adopted the Java JDK API, as they reduce implementation complexity,
improve readability, offer performance benefits and improve security
contextualization.
Our analysis showed that though BeenValidation 2.0 did not explicitly
introduce support for functional interfaces (e.g. by using the
@FunctionalInterface annotation). We noticed that the API does provide
compatibility with Java 8+ features, including lambda expressions (since
the API’s build platform is now on JDK 1.8). We would like to better
understand as to why no major change was necessitated to facilitate the
usage of lambda expressions with the API.
In most cases, developers choose to move to new releases to satisfy
particular dependency requirements, to take advantage of new Java
features (like streams and functional interfaces in the case of Java 8),
or just to standardize their implementation to align the API with the
Java JDK API. Can you provide us with more information about this?
How did you and your team tackle the choice to change the version of
Java supported?
Which factors did you take into account when doing this?
Are there any documented sources (e.g. Jira tickets, or issue tracker
issues) about that discussion you can provide us with?
Why were no explicit changes made to the interface to support lambda
expressions?
Are there any future plans in place to make larger changes to the API
such that lambda expressions would be supported?
We thank you for taking the time to answer our questions. If you would
like to be posted about the results of this study, please let us know!
Kind Regards,
Fernando Petrulio.
--
Fernando Petrulio
PhD Student - University of Zurich UZH
Department of Informatics
fpetrulio(a)ifi.uzh.ch
5 years, 3 months
Please subscribe to the new Eclipse mailing list
by Guillaume Smet
Hi,
As you know, we are moving Bean Validation to Jakarta EE.
The mailing list will soon be hosted at Eclipse so please subscribe to the
new list here: https://accounts.eclipse.org/mailing-list/bean-validation-dev
.
Note that, for now, you should still use the current list for BV-related
discussions so that subscribers have the time to subscribe to the new list.
We will send a new message when we consider the discussions should take
place on the new list.
Thanks for your attention.
--
Guillaume
5 years, 4 months
Moving the spec to Eclipse Jakarta EE
by Gunnar Morling
Hi all,
This is to let you know that we've initiated the move of the Bean
Validation spec to Eclipse Jakarta EE [1]. This is to ensure a consistent
further evolution of all the former Java EE specs under one umbrella.
There already is a project page [1], and if you've contributed to BV
before, you are very much invited to join the new project at Eclipse, too.
Let me know if it’s the case and send me your name and email that you used
to register your Eclipse Foundation account. If you've already done so, you
should have received a "paperwork" e-mail from the foundation in the last
days; in this case please do the steps described in that mail.
The next step for us will be to do a release of the spec from the new
location and using the new name "Jakarta Bean Validation", without any
actual changes to the spec itself apart from updating references to "Java
EE" etc.
If you have any questions around this all, please don't hesitate to contact
me.
Al the best,
--Gunnar
[1] https://www.eclipse.org/lists/ee4j-pmc/msg01958.html
[2] https://projects.eclipse.org/projects/ee4j.jbv
5 years, 4 months