1 / 26

J2EE vs. Microsoft.NET

J2EE vs. Microsoft.NET. “A homogeneous view of a heterogeneous world of information.”. Agenda. Introduction What are J2EE and Microsoft.NET? J2EE in a Nutshell .Net in a Nutshell Similarities Differences Perspectives from both sides Conclusion Questions?. Introduction.

miyoko
Télécharger la présentation

J2EE vs. Microsoft.NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. J2EE vs. Microsoft.NET “A homogeneous view of a heterogeneous world of information.”

  2. Agenda • Introduction • What are J2EE and Microsoft.NET? • J2EE in a Nutshell • .Net in a Nutshell • Similarities • Differences • Perspectives from both sides • Conclusion • Questions?

  3. Introduction • What are J2EE and Microsoft.NET • J2EE is usually thought of as a: • vendor-neutral • multi-platform • uni-linguistic framework • Microsoft.NET is typically seen as a: • vendor-specific • uni-platform • multi-linguistic framework

  4. J2EE In A Nutshell • J2EE IS defined as: • a set of functional specifications for how to develop, deploy and maintain Enterprise Applications using Java Advanced technologies • J2EE IS comprised of: • Java programming language • Java Runtime Environment (JRE) • Three platform edition specifications: • Java 2 Micro Edition (J2ME) • Java 2 Standard Edition (J2SE) • Java 2 Enterprise Edition (J2EE) • Application programming interfaces or (API’s) • J2EE can be developed and deployed using a variety of supporting platforms & hardware from multiple vendors

  5. .NET In A Nutshell • Microsoft’s new Windows Platform • Uses proprietary technologies from Microsoft • Optimized for XML and built around XML Web Services • Common Language Runtime (CLR) • Similar to the Java Runtime Environment (JRE) except the CLR can compile code from several different languages and the JRE compiles Java code exclusively

  6. Similarities • Modern object-oriented frameworks for building distributed multi-tier enterprise applications • Technology driven strategies for developing, deploying and maintaining enterprise software solutions • Leveraged for the future of E-Commerce using XML based Web Services

  7. Similarities Support Technologies

  8. Similarities Presentation Tier Technologies

  9. Similarities Middle Tier Technologies

  10. Similarities Data Tier Technologies

  11. Similarities Framework Technologies

  12. Differences • Overall Maturity • First J2EE specification Enterprise Java Beans (EJB) came out in 1998 • First beta version of (EJB) came out in 1999 • First implementation of Microsoft Transaction Server (MTS) came out in 1996 • Microsoft.NET has a 3-year lead over J2EE

  13. Differences • Vendor Neutrality • Sun Microsystem’s main goal is to maintain a vendor neutral position • J2EE 1.4 is currently too immature • I believe that Sun’s goal will be achieved in the near future • Microsoft is obviously not vendor neutral!

  14. Differences • Interoperability and Web Services • Microsoft.NET based on UDDI and SOAP • Industry standards • Supported by over 100 companies • J2EE based on old IIOP protocol • IIOP contains three major flaws: • whole world needs to be running J2EE or CORBA • IIOP is not amenable to transport over the Internet • IIOP is inadequate to ensure interoperability • IIOP (despite a 10-year head start) over UDDI, has failed • Microsoft.NET platform has a much stronger technology neutral eCollaboration strategy

  15. Differences • Scalability • Ability to add more workload • Transaction Performance Council (TPC) specifies the industry standard benchmark for transactional throughput • TPC-C benchmarks rates the highest workload that a system can achieve. • The unit of measure is tpmC, for transactions per minute as defined by the TPC-C benchmark • TPC members include Sun, IBM, Oracle, BEA, Microsoft, and most other companies that sell for the middle/data tier

  16. Differences • Scalability • Ability to add more workload • 2 problems with TPC-C numbers • TPC-C specified transactions are quite different than the average CompanyXYZ transaction • J2EE vendor haven’t publicly released their TPC-C numbers • The industry numbers (void of any J2EE data), typically indicate that a .NET platform is 5 to 10 times cheaper than a J2EE platform.

  17. Differences • Framework Support • Microsoft.NET includes Commerce Server • Well-defined and tested eCommerce framework • No equivalent vendor-neutral framework in the J2EE world • With J2EE, you will be building your new eCommerce solution from scratch • A daunting task for even the most seasoned of Java developers

  18. Differences • Languages • J2EE supports JAVA, period! • Microsoft.NET supports just about every language except JAVA

  19. Differences • Portability • Ability to move code from one OS to another without having to change the code itself • Possible with J2EE only because most J2EE vendors support multiple Operating Systems • Catch 22: Portable only if you stick with one J2EE vendor and one Database vendor • NOTE: This is probably the single most important benefit in favor of J2EE over the .NET platform and it’s not that compelling because most companies don’t switch platforms often enough to care about this feature

  20. Differences • Client Device Independence • Major Differences in Presentation Tier models • With Java, it’s the programmer that determines the ultimate HTML that will be delivered Sun prefers a Stick • With Microsoft.NET, it’s a Visual Studio.NET control. (fully automated) Microsoft prefers an Automatic

  21. Differences • Client Device Independence • Java approach has three problems • It requires a lot of code on the presentation tier, since every possible thin client system requires a different code path • It’s very difficult to test the code with every possible thin client system • It’s very difficult to add new thin clients to an existing application, since to do so involves searching through, and modifying a tremendous amount of presentation tier logic

  22. Differences • Client Device Independence • The .NET Framework approach is to write device independent code that interacts with visual controls • It is the Visual Studio.NET control, not the programmer, that is responsible for determining what HTML to deliver, based on the capabilities of the client device • In the .NET Framework model, one can forget that HTML even exists!

  23. Perspectives From Both Sides

  24. Perspectives From Both Sides

  25. Conclusion • Thanks to XML Web Services, Microsoft and Sun Microsystems are finally cooperating • J2EE and .NET both provide the feature set for serious enterprise applications • J2EE and .NET can and must coexist

  26. Questions? J2EE vs. Microsoft.NET

More Related