There are multiple programming languages and there are multiple frameworks within each of these programming languages. Java, being one of the most popular programming languages, has many frameworks, and some of these frameworks even solve similar problems. So the question is to use which framework or feature to solve a particular problem. You can read about our current technology directions for chosing one framework or feature over the other.
These are our current directions and might change over time;
we will try to update any changes in our directions here itself.
As you might have already seen and guessed from the website name itself, this website is about Java programming language. Java has lots of frameworks and design patterns ready to be used and have already solved many programming problems. Java also has lot of job opportunities. In my initial career days, I have even worked with dot net and has even a certification on C#. But from then it was all Java and has taken 6 professional certifications, thanks to my first project manager who asked me to move to Java due to project requirements.
However if you are looking for notes on any open source language like PHP due to less cost of deployment, please refer to our open source web site www.ososys.com.
Our approach is more oriented towards web services and lightweight frameworks like Spring and Hibernate. I am not telling EJBs are not good. They have evolved well and have become lighter than before, but still need an application server like Glassfish, Websphere Application Server, JBoss or Weblogic. Lightweight frameworks like Spring and Hibernate, can be used to get the same functionality and only requires a web container like Apache Tomcat. In the latest EJB specification an entity bean is deprecated in favor of JPA and hibernate is a JPA framework. You can read about application server, web container and EJBs @ web-server-web-container-and-application-server.
EJBs are also more complex and difficult to learn than Spring and Hibernate.
Our approach is more oriented towards web services and lightweight frameworks which are less complex and doesn't require an application server, but only a web container to deploy. I have been working in the Software Industry for few years now and I could see that web services have become more popular over COM, CORBA and EJBs for distributed computing. You can have your server and client even in different programming languages. With the introduction of RESTful webservices, webservices have become more easy to learn, code and even deploy.
Initially in our production application we were using websphere MQ with Message Driven Beans (MDBs) at client side to connect to server, but later it was migrated to web services.
I recently got questions on whether Swing or JavaFX should be chosen for a new desktop UI project. Swing is mature enough, but JavaFX is the future path of Java according to Oracle who are now the owners of Java. When Oracle itself says so, who am I to say otherwise. Refer to the link http://www.oracle.com/technetwork/java/javafx/overview/faq-1446554.html where Oracle confirms it is the replacement for Swing and its future path.
Comparing JavaFX vs Adobe Flex I strongly believe JavaFX is the way now eventhough I have worked more on Adobe Flex. The fact that it is from the owners of Java and is free are good enough reasons. Adobe is also moving most of the Flex to into a community-driven open source project (Ref: http://www.adobe.com/devnet/flex/whitepapers/roadmap.html) mainly due to other competing technologies such as JavaFX and HTML5.
So we are also planning to start a new tutorial series on JavaFX. Watch out our facebook page for details.
By the way, we are not against HTML5 and we already have another website www.ososys.com where we will discuss more on HTML5.
We are currently moving towards JSF as it is a Java EE standard, but we are not against Spring MVC and you will even see some tutorials on Spring MVC here.
We will mostly use a Apache Tomcat, which is a web container for our examples. This is because an application which can be deployed on a web container should work on an application server, but not the reverse. Also see about our direction on lightweight framework like Spring/Hibernate over EJB. You can read about application server, web container and EJBs @ web-server-web-container-and-application-server.
We will mostly use eclipse for our training and development as it is more popular and has enough plugins for most use case. We are not against Netbeans which is also a good IDE, but in our software industry experience we have been using eclipse for almost all projects till date. You can find our eclipse notes @ eclipse-ide-notes.
In our Enterprise Application Integration (EAI) section, you will also see notes on ERPs and CRMs. We will mainly use SAP ERP for our ERP notes and Salesforce CRM for CRM notes.
We will mainly use Oracle, MSSQL Server and MySQL DBMSs in our tutorials.
If you have a different story to tell regarding the above comparisons, please do let us know.
Searches whole web. Use the search in the right sidebar to search only within javajee.com!!!