Showing posts with label compare. Show all posts
Showing posts with label compare. Show all posts

Thursday, January 24, 2008

Spring vs. EJB 3

This article would overview the differences between Spring Framework and EJB 3

EJB 3.0

  • EJB 3.0 is a specification.
  • EJB is an architecture
  • The EJB 3.0 framework is a standard framework defined by the Java Community Process (JCP) and supported by all major J2EE vendors. Open source and commercial implementations of pre-release EJB 3.0 specifications are already available .

Spring Framework
  • Spring is an implementation.
  • Spring is application framework
  • The Spring framework is a popular but non-standard open source framework. It is primarily developed by and controlled by Interface21 Inc. Spring can work standalone or with existing application servers.

EJB 3.0 Advantages
  • EJB 3.0 specification horroble old entity beans have been replaced with the JPA
  • Deal with transactions and both succeed modularizing this functionality in a way that it doesn't clutter business logic
  • Tune the transaction propagation levels via annotations
  • Support state management via stateful session beans,
  • Support injection of primitive types, allows injecting EJB's
  • Supports AOP using interceptors
  • Brings a basic implementation of component management
Spring Framework Advantages
  • Integrates with many popular persistence frameworks including JDBC, Hibernate, JDO, iBatis and JPA.
  • Transaction demarcation, propagation, and isolation are all declared through its AOP.
  • Support state management via prototype beans and also request, session, and global session scoping
  • Support injection of any type, allows injection of any domain objects using the features of AspectJ
  • Suppotrs AOP by tightly integrating with AspectJ with all of it's features
  • Spring 2.0 offers a lot more power and customization, but the use of AspectJ actually makes the hard to learn

Spring Framework Disadvantages

  • The idea of annotations was to stop work with XML - Deploymenet Descriptor files which were in EJB 2.1, but Spring encourage a lot the use of XML for dependency injection
  • Refresh the Spring load data is impossible, if you change something in the configuration you need to restart the Application Server.

You can integrate Spring and EJB 3 technologies to take advantage of their relative strengths and weaknesses, In Spring and EJB 3 there are a lot of duplication in the compoments you can choose the best of this technologies to use in you application.


Wednesday, January 16, 2008

GWT vs. Flex

This article would compare Google GWT (Google Web Toolkit) and Adobe Flex 2 and would describe the advantages and disadvantages of each of these technologies.
This two technologies are both Rich Internet Application (RIA) frameworks.

GWT Advantages:

  • Doesn't require plug in installation on the client side
  • GWT doesn't require the user to know JavaScript since the code is written in Java
  • GWT doesn't cost money since it is Open Source.
  • Changes in the Client side are immediately shown on the browser by using refresh, no need to restart the server.
  • GWT can be easily debugged in hosted mode.
  • There is compatible between different web browsers.

GWT Disadvantages:

  • The html and JavaScript code which GWT generates is pretty heavy and not necessary fully optimized.
  • GWT doesn't come out of the box with all the possible widgets, there is a need to use extra components

Flex Advantages:

  • The UI looks nicer then plain HTML/JavaScript code, It contains huge amount of animations, widgets etc'
  • Compatible between different web browsers
  • Flex 2 SDK and Flex Builder 2 for Education are both free
  • Google can index SWF files

Flex Disadvantages:

  • It requires plug in installation on the client side , however this may not be disadvantage since Adobe claims that Flash is installed on more then 99% percent of users.
  • Flex Builder 2 costs some money






Tuesday, January 8, 2008

Flex vs. JSF

This article would compare Flex and JSF technologies and would describe the advantages and disadvantages of each technology.

JSF Advantages:

  • Doesn't require plug in installation on the client side
  • JSF has a standard specification and it has several implementation
  • JSF has Open Source implementations which doesn't cost money.
  • Changes in the JSP files are immediately shown on the browser, no need to restart the server.

JSF Disadvantages:

  • Very complicate to develop because the basic implementation is pretty basic and for complicated UI screens need to have additional component libraries
  • Doesn't compatible between different web browsers

Flex Advantages:

  • The UI looks much nicer then JSF UI
  • Flex looks like more simple to develop rather then JSF
  • Compatible between different web browsers
  • Flex 2 SDK and Flex Builder 2 for Education are both free

Flex Disadvantages:

  • It doesn't has standard specification
  • Adobe is the only provider of Flex
  • It requires plug in installation on the client side , however this may not be disadvantage since Adobe claims that Flash is installed on more then 99% percent of users.
  • If you build a web site which users would need to search in some search engine the search engine would not be able to understand the content of the flash files (search engines can only understand standard html files/pdf files etc')
  • Flex based pages takes a lot of time to get loading compare to JSF pages
  • Flex Builder 2 costs some money

Both JSF and Flex integrate very well with java.

In summary, if you build an simple enterprise application which requires nice UI I would recommend using Flex, if you build an complicated application which requires good performance or application which is open to all the Internet users I would recommend using JSF.





Links

 
RSS Feeds Submission Directory