Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Taking the next step with java development?

I want to take the next step in java web development, I am hoping to get insight & feedback on: what my next steps should be and how best to take them.

While learning the basics of java web development, I put together a simple web app that performs simple accounting and financial calculations. The web app is on a single jvm, uses Tomcat, and has standard web functionality - i.e. login/logout, basic security, etc.

How can I make this web app more "enterprise ready" - distribute functionality of tiers over different servers/jvms, HA, balance-able, etc.

What do I need to know/learn? - i.e. EJB3 or Spring Framework (seems spring is better option), REST and/or SOAP, etc.

How would one recommend (books, websites, etc.) I learn the "requirements" (see preceding line)?

Thanks!

like image 558
Ari Avatar asked Dec 30 '22 09:12

Ari


2 Answers

In my opinion, you should try different approaches for a same problem, so you could compare the pros and cons of different tools and frameworks.

For instance, try to build an application using EJB, and then the same application using Spring. Take the presentation layer of your code written with JSF and then rewrite it using Tapestry.

I think this will be very helpful to you, as you'll be able to make best decisions when choosing tools for your future developments.

like image 155
Alexandre Avatar answered Jan 12 '23 15:01

Alexandre


A few things to consider, as food for thought:

  • How good is the error handling/logging of the application? For example, if the user tries to put in X in for a currency value, what does the application do?
  • What is configurable within the application from the user and what is in configuration files and what is in a database with regards to configuration? Do you have passwords encrypted within the application?
  • What patterns would used in building this application? Are there patterns you could see using now that you have a prototype?
  • Is this application ready to handle different currencies and languages?
  • What happens if someone leaves the screen for a few hours and tries to use a form?
  • What administrative functionality does the application have?
  • Does it handle the case where the user has JavaScript disabled?
  • What are the limitations of your application, IOW what can't it handle the way it is?
  • Have you considered trying to write a manual for the application?
like image 41
JB King Avatar answered Jan 12 '23 16:01

JB King