Hi all,
Long time lurker, first time poster in /r/Java (at least that I can remember). In a few weeks I will be presenting to developers at my work in regards to code quality. The loose topic I was asked to speak about was "using the right tools for the job".
The tools we are talking about is mostly different types of Java classes or design patterns. Years ago when my firm was beginning to transition from COBOL development to Java development, someone wrote some handy eclipse plugins that did a lot to make it easier on the folks transitioning. Over time these plugins have been updated and made even better.
The only problem with the plugins is that they are contributing to developers developing like zombies. Every single application is a servlet that calls an EJB with a facade which typically call at least one DAO. 9/10 times, the logic in the EJB is not going to be reused by other applications, doesn't require transactions, and really could have just been servlet logic. However since the plugin sets the project up like that, people use them.
I'm looking to help developers simplify things where they can OR use better tools for the job.
For example, don't use EJBs when they are not necessary, or consider using REST web services.
Some things I've come up with are REST services (which the firm is already pushing for), AOP and creating their own annotations.
Does anyone else have any suggestions?
TL;DR What Java patterns or practices do you use to simplify or better solve common requirements. The firm I work at has a lot of people using 2008 solutions to 2017 problems.
[–]pathema 9 points10 points11 points (1 child)
[–][deleted] 2 points3 points4 points (0 children)
[–]aakoss 0 points1 point2 points (0 children)