SlideShare ist ein Scribd-Unternehmen logo
1 von 55
DEV212 Comparing .NET and Java: The View from 2006 David Chappell Chappell & Associates www.davidchappell.com
Application Platforms Today Data Access  Containing and Connecting Logic Defining Logic Logic to Logic Logic to Web Browser Accessing Data Web Services  Binary Communication Distributed Transactions, etc. Queued Messaging Using Logic Web Browser Standalone Client Objects Remote Logic
.NET Framework 2.0 Defining Logic Containing and Connecting Logic Accessing Data Using Logic ADO.NET  ASP.NET ASMX/ WSE .NET Remoting Enterprise Services System. Messaging C#/Visual Basic/etc. Browser Windows Forms Remote Logic
J2EE 1.4 Defining Logic Containing and Connecting Logic Accessing Data JDBC  Using Logic Servlets/Java Server Pages (JSP) JAX-RPC Remote Method Invocation (RMI) Enterprise JavaBeans (EJB) Java Message Service (JMS) Java Browser Remote Logic Standalone Client
How We Got Here The Last Ten Years Java Microsoft 1996 Java, Java VM Windows DNA -  ASP, ADO, MTS Key 1999 J2EE 1.0 -  JSP, JDBC, EJB 2002 ,[object Object],[object Object],[object Object],[object Object],J2EE 1.4 -  JAX-RPC 2003 2005 .NET Framework 2.0 Application server technologies Languages Web services
What’s Next .NET Framework 2.0 Java EE 5, including: - Enterprise JavaBeans 3.0 - JAX-WS - More . . . Java Community Process (JCP) ,[object Object],[object Object],[object Object],[object Object],[object Object],Various processes Open SOA (OSOA), including: - Service Component Architecture (SCA) - Service Data Objects (SDO) Open SOA Collaboration .NET Framework 3.0, including: - Windows Workflow Foundation (WF)  - Windows Communication Foundation (WCF) - More . . . J2EE 1.4
Application Platforms in 2008 Defining Logic Containing and Connecting Logic Logic to Web Browser Accessing Data Data Access  Using Logic Web Browser Standalone Client Remote Logic Logic to Logic Objects Workflows If … Then … Rules If … Then … If … Then …
.NET Framework 3.0 Defining Logic Containing and Connecting Logic ASP.NET Accessing Data Using Logic Browser/AJAX/ XBAPs Windows Presentation Foundation (WPF) Remote Logic ADO.NET  C#, VB, etc. Workflows Windows Workflow Foundation (WF) Rules WF Rules Engine Windows Communication Foundation (WCF)
Java EE 5 Defining Logic Containing and Connecting Logic Accessing Data Using Logic Remote Logic Servlets/Java Server Pages (JSP) Browser/AJAX Standalone Client Java JDBC  Java Persistence API (JPA) JAX-WS Remote Method Invocation (RMI) Enterprise JavaBeans 3.0  Java Message Service (JMS) Workflows Rules
Open SOA Defining Logic Containing and Connecting Logic Accessing Data Using Logic Remote Logic Service Data Objects (SDO)  Servlets/ Java Server  Pages (JSP) Browser/AJAX Standalone Client Java, C++, etc. Workflows BPEL Service Component Architecture (SCA) Rules
What Will Succeed J2EE 1.4? Divining the Future ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Plausible Successor to J2EE 1.4 Defining Logic Containing and Connecting Logic Accessing Data Using Logic Remote Logic Servlets/ Java Server  Pages (JSP) Browser/AJAX Swing/Eclipse Client Java Workflows Rules BPEL Various Service Component Architecture (SCA) Service Data Objects (SDO)  Java Persistence API (JPA)
Defining Logic: A Closer Look Defining Logic Containing and Connecting Logic Accessing Data Using Logic Objects Workflows If … Then … Rules If … Then … If … Then …
Defining Logic: Objects ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Defining Logic: Workflows Workflow Engine 1) Execute first step 2) Execute second step 3) Execute next step . . .
Creating Workflow Logic Two Approaches ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
BPEL Example Activities ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
BPEL A Simplified Example (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Wraps operations into an executable process Identifies a communication partner Declares variables Receives a message
BPEL A Simplified Example (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Performs an assignment
Defining a Graphical Process Notation An Aside ,[object Object],[object Object],[object Object],Receive Invoice PO Found? Process PO Send Payment Yes OK? Yes No No
BPEL Illustrating a Typical Implementation BPEL Execution Engine Workflow Graphical Process Design Tool Runtime Services
WF Illustrating Its Components Workflow Other Activities BPEL 1.1 Library Host Process Base Activity Library (BAL) Runtime Engine Runtime Services Visual Studio 2005 WF Workflow Designer
WF Example BAL Activities ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Perspective BPEL and WF ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Defining Logic: Rules ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Rules in the .NET Framework 3.0 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Rules in Java EE/Open SOA ,[object Object],[object Object],[object Object]
Perspective Rules ,[object Object],[object Object],[object Object],[object Object]
Containing Logic: A Closer Look Defining Logic Containing and Connecting Logic Logic to Logic Logic to Web Browser Accessing Data Using Logic
Containing and Connecting Logic Logic to Web Browsers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Containing and Connecting Logic Logic to Logic ,[object Object],[object Object],[object Object],[object Object],[object Object]
Microsoft vs. EJB The Last Ten Years Java Microsoft 1996 MTS 1998 ,[object Object],[object Object],[object Object],2000 COM+ ,[object Object],[object Object],[object Object],[object Object],2001 Stateless session beans are analogous to MTS objects New version of entity beans Allowed communication via JMS Enterprise Services 2002 2006 ,[object Object],[object Object],[object Object],(Supplanted by WCF) Provided a .NET wrapper around COM+ Entity beans replaced by JPA
Unifying Communication WCF Windows Communication Foundation API ASMX & WSE .NET Remoting Enterprise Services System. Messaging API Applications .NET Framework 2.0 MSMQ SOAP & WS-*  Remoting binary protocol DCOM Protocol Others SOAP & WS-*  WCF binary protocol MSMQ Protocol Applications .NET Framework 3.0
Unifying Communication SCA Service Component Architecture API JAX-RPC Java RMI JMS API EJB Applications J2EE 1.4 Applications Open SOA Others SOAP & WS-*  RMI binary protocol Queued messaging protocols Protocol Queued messaging protocols SOAP & WS-*  RMI binary protocols Protocol Various protocols
An Example Service WCF ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Indicates that this interface should be exposed as a service Indicates that this method should be exposed as an operation in this service
An Example Service SCA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Indicates that this interface should be exposed as a remotely accessible service
Describing an Exposed Service  WCF ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Operations exposed by the service How to communicate with the service Where to find the service
Describing an Exposed Service SCA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Operations exposed by the service How to communicate with the service Where to find the service
More WCF/SCA Similarities ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Illustrating Assembly: A Composite SCA Composite Component Component Component Service X Y Z Wire Y Reference Z Property Client X
Describing a Composite SCA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Perspective WCF and SCA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Accessing Data: A Closer Look Defining Logic Containing and Connecting Logic Accessing Data Data Access  Using Logic
Data Access Technology The Last Ten Years Java EE Open SOA Microsoft Key 1996 ADO JDBC EJB 1.0 Entity Beans 1998 EJB 2.0 Entity beans 2001 Java Persistence API (JPA) 2006 JAXB Service Data Objects (SDO) ObjectSpaces  (cancelled) 2003 Java Data Objects (JDO) System.XML ADO.NET 2002 Relational access O/R mapping XML mapping Relational access and XML mapping Supplants EJB Entity beans and JDO
Illustrating ADO.NET .NET Framework Data Provider .NET Framework Data Provider Application DBMS XML Document XML Document DataSet Serialized DataSet <XML  …  /> Tables
Illustrating SDO .NET Framework Data Provider XML Document XML Document Application DBMS Data Access Service Data Access Service XML Document Other Data Source Data Access Service Serialized DataObjects <XML  …  /> Data Graph DataObjects
Perspective Data Access ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Projection for 2008 A Mainstream .NET Framework Application WCF Service WF Workflow ASP.NET AJAX WCF Service LINQ ADO.NET
A Projection for 2008 A Mainstream Java EE/Open SOA Application Java SCA Component JSP/ AJAX Java SCA Component BPEL SCA Component SDO JPA
Summary ,[object Object],[object Object],[object Object],[object Object],[object Object]
About the Speaker ,[object Object],[object Object],[object Object],[object Object]
Ask The Experts Get Your Questions Answered ,[object Object],[object Object]
 
 
© 2006 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.

Weitere ähnliche Inhalte

Was ist angesagt?

9 crucial Java Design Principles you cannot miss
9 crucial Java Design Principles you cannot miss9 crucial Java Design Principles you cannot miss
9 crucial Java Design Principles you cannot missMark Papis
 
What's new in JMS 2.0 - OTN Bangalore 2013
What's new in JMS 2.0 - OTN Bangalore 2013What's new in JMS 2.0 - OTN Bangalore 2013
What's new in JMS 2.0 - OTN Bangalore 2013Jagadish Prasath
 
Java interview questions
Java interview questionsJava interview questions
Java interview questionsSoba Arjun
 
Ajp notes-chapter-05
Ajp notes-chapter-05Ajp notes-chapter-05
Ajp notes-chapter-05Ankit Dubey
 
Utilized Code Gen To Save Our Efforts In Sap Integration
Utilized Code Gen To Save Our Efforts In Sap IntegrationUtilized Code Gen To Save Our Efforts In Sap Integration
Utilized Code Gen To Save Our Efforts In Sap IntegrationGuo Albert
 
OTN Tour 2013: What's new in java EE 7
OTN Tour 2013: What's new in java EE 7OTN Tour 2013: What's new in java EE 7
OTN Tour 2013: What's new in java EE 7Bruno Borges
 
Developing Transactional JEE Apps With Spring
Developing Transactional JEE Apps With SpringDeveloping Transactional JEE Apps With Spring
Developing Transactional JEE Apps With SpringGuy Pardon
 
Java j2ee interview_questions
Java j2ee interview_questionsJava j2ee interview_questions
Java j2ee interview_questionsppratik86
 
Free Hibernate Tutorial | VirtualNuggets
Free Hibernate Tutorial  | VirtualNuggetsFree Hibernate Tutorial  | VirtualNuggets
Free Hibernate Tutorial | VirtualNuggetsVirtual Nuggets
 
Hibernate Developer Reference
Hibernate Developer ReferenceHibernate Developer Reference
Hibernate Developer ReferenceMuthuselvam RS
 
Android and the Seven Dwarfs from Devox'15
Android and the Seven Dwarfs from Devox'15Android and the Seven Dwarfs from Devox'15
Android and the Seven Dwarfs from Devox'15Murat Yener
 
Core java interview questions
Core java interview questionsCore java interview questions
Core java interview questionsRohit Singh
 
Java Interview Questions
Java Interview QuestionsJava Interview Questions
Java Interview QuestionsKuntal Bhowmick
 
Spring andspringboot training
Spring andspringboot trainingSpring andspringboot training
Spring andspringboot trainingMallikarjuna G D
 
Hibernate Presentation
Hibernate  PresentationHibernate  Presentation
Hibernate Presentationguest11106b
 

Was ist angesagt? (19)

9 crucial Java Design Principles you cannot miss
9 crucial Java Design Principles you cannot miss9 crucial Java Design Principles you cannot miss
9 crucial Java Design Principles you cannot miss
 
What's new in JMS 2.0 - OTN Bangalore 2013
What's new in JMS 2.0 - OTN Bangalore 2013What's new in JMS 2.0 - OTN Bangalore 2013
What's new in JMS 2.0 - OTN Bangalore 2013
 
Java interview questions
Java interview questionsJava interview questions
Java interview questions
 
Spring Framework - III
Spring Framework - IIISpring Framework - III
Spring Framework - III
 
Ajp notes-chapter-05
Ajp notes-chapter-05Ajp notes-chapter-05
Ajp notes-chapter-05
 
Data access
Data accessData access
Data access
 
Utilized Code Gen To Save Our Efforts In Sap Integration
Utilized Code Gen To Save Our Efforts In Sap IntegrationUtilized Code Gen To Save Our Efforts In Sap Integration
Utilized Code Gen To Save Our Efforts In Sap Integration
 
OTN Tour 2013: What's new in java EE 7
OTN Tour 2013: What's new in java EE 7OTN Tour 2013: What's new in java EE 7
OTN Tour 2013: What's new in java EE 7
 
Developing Transactional JEE Apps With Spring
Developing Transactional JEE Apps With SpringDeveloping Transactional JEE Apps With Spring
Developing Transactional JEE Apps With Spring
 
Java j2ee interview_questions
Java j2ee interview_questionsJava j2ee interview_questions
Java j2ee interview_questions
 
Free Hibernate Tutorial | VirtualNuggets
Free Hibernate Tutorial  | VirtualNuggetsFree Hibernate Tutorial  | VirtualNuggets
Free Hibernate Tutorial | VirtualNuggets
 
Hibernate Developer Reference
Hibernate Developer ReferenceHibernate Developer Reference
Hibernate Developer Reference
 
Android and the Seven Dwarfs from Devox'15
Android and the Seven Dwarfs from Devox'15Android and the Seven Dwarfs from Devox'15
Android and the Seven Dwarfs from Devox'15
 
Linq in C#
Linq in C#Linq in C#
Linq in C#
 
Intro To AOP
Intro To AOPIntro To AOP
Intro To AOP
 
Core java interview questions
Core java interview questionsCore java interview questions
Core java interview questions
 
Java Interview Questions
Java Interview QuestionsJava Interview Questions
Java Interview Questions
 
Spring andspringboot training
Spring andspringboot trainingSpring andspringboot training
Spring andspringboot training
 
Hibernate Presentation
Hibernate  PresentationHibernate  Presentation
Hibernate Presentation
 

Andere mochten auch

Andere mochten auch (9)

Infoavond
InfoavondInfoavond
Infoavond
 
Nash education v2.1
Nash education v2.1Nash education v2.1
Nash education v2.1
 
The nash education v2.0
The nash education v2.0The nash education v2.0
The nash education v2.0
 
Jobs
JobsJobs
Jobs
 
Landare Haragijaleak
Landare HaragijaleakLandare Haragijaleak
Landare Haragijaleak
 
Infoavond
InfoavondInfoavond
Infoavond
 
Speelplaatswerking
SpeelplaatswerkingSpeelplaatswerking
Speelplaatswerking
 
Dacia 1226529121606747 9
Dacia 1226529121606747 9Dacia 1226529121606747 9
Dacia 1226529121606747 9
 
Infoavond
InfoavondInfoavond
Infoavond
 

Ähnlich wie Dev212 Comparing Net And Java The View From 2006

Dh2 Apps Training Part2
Dh2   Apps Training Part2Dh2   Apps Training Part2
Dh2 Apps Training Part2jamram82
 
WebLogic Developer Experience and Java EE 6
WebLogic Developer Experience and Java EE 6WebLogic Developer Experience and Java EE 6
WebLogic Developer Experience and Java EE 6Jeffrey West
 
Spring Framework
Spring Framework  Spring Framework
Spring Framework tola99
 
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsIntroducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsLucas Jellema
 
J2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net WorkshopJ2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net Workshopdanglvh
 
Javaee intro
Javaee introJavaee intro
Javaee introharis147
 
S02 hybrid app_and_gae_restful_architecture_v2.0
S02 hybrid app_and_gae_restful_architecture_v2.0S02 hybrid app_and_gae_restful_architecture_v2.0
S02 hybrid app_and_gae_restful_architecture_v2.0Sun-Jin Jang
 
EJB 3.0 Java Persistence with Oracle TopLink
EJB 3.0 Java Persistence with Oracle TopLinkEJB 3.0 Java Persistence with Oracle TopLink
EJB 3.0 Java Persistence with Oracle TopLinkBill Lyons
 
D22 Portlet Development With Open Source Frameworks
D22 Portlet Development With Open Source FrameworksD22 Portlet Development With Open Source Frameworks
D22 Portlet Development With Open Source FrameworksSunil Patil
 
D22 portlet development with open source frameworks
D22 portlet development with open source frameworksD22 portlet development with open source frameworks
D22 portlet development with open source frameworksSunil Patil
 
ADVANCED JAVA MODULE I & II.ppt
ADVANCED JAVA MODULE I & II.pptADVANCED JAVA MODULE I & II.ppt
ADVANCED JAVA MODULE I & II.pptrani marri
 
Reusing Existing Java EE Applications from SOA Suite 11g
Reusing Existing Java EE Applications from SOA Suite 11gReusing Existing Java EE Applications from SOA Suite 11g
Reusing Existing Java EE Applications from SOA Suite 11gGuido Schmutz
 

Ähnlich wie Dev212 Comparing Net And Java The View From 2006 (20)

Dh2 Apps Training Part2
Dh2   Apps Training Part2Dh2   Apps Training Part2
Dh2 Apps Training Part2
 
JEE5 New Features
JEE5 New FeaturesJEE5 New Features
JEE5 New Features
 
OpenESB
OpenESBOpenESB
OpenESB
 
WebLogic Developer Experience and Java EE 6
WebLogic Developer Experience and Java EE 6WebLogic Developer Experience and Java EE 6
WebLogic Developer Experience and Java EE 6
 
Spring Framework
Spring Framework  Spring Framework
Spring Framework
 
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsIntroducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
 
J2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net WorkshopJ2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net Workshop
 
Dot net training bangalore
Dot net training bangaloreDot net training bangalore
Dot net training bangalore
 
Javaee intro
Javaee introJavaee intro
Javaee intro
 
Real-Time Web Applications with ASP.NET WebAPI and SignalR
Real-Time Web Applications with ASP.NET WebAPI and SignalRReal-Time Web Applications with ASP.NET WebAPI and SignalR
Real-Time Web Applications with ASP.NET WebAPI and SignalR
 
Tu1 1 5l
Tu1 1 5lTu1 1 5l
Tu1 1 5l
 
Jboss
JbossJboss
Jboss
 
S02 hybrid app_and_gae_restful_architecture_v2.0
S02 hybrid app_and_gae_restful_architecture_v2.0S02 hybrid app_and_gae_restful_architecture_v2.0
S02 hybrid app_and_gae_restful_architecture_v2.0
 
EJB 3.0 Java Persistence with Oracle TopLink
EJB 3.0 Java Persistence with Oracle TopLinkEJB 3.0 Java Persistence with Oracle TopLink
EJB 3.0 Java Persistence with Oracle TopLink
 
D22 Portlet Development With Open Source Frameworks
D22 Portlet Development With Open Source FrameworksD22 Portlet Development With Open Source Frameworks
D22 Portlet Development With Open Source Frameworks
 
D22 portlet development with open source frameworks
D22 portlet development with open source frameworksD22 portlet development with open source frameworks
D22 portlet development with open source frameworks
 
ADVANCED JAVA MODULE I & II.ppt
ADVANCED JAVA MODULE I & II.pptADVANCED JAVA MODULE I & II.ppt
ADVANCED JAVA MODULE I & II.ppt
 
Reusing Existing Java EE Applications from SOA Suite 11g
Reusing Existing Java EE Applications from SOA Suite 11gReusing Existing Java EE Applications from SOA Suite 11g
Reusing Existing Java EE Applications from SOA Suite 11g
 
Servlet by Rj
Servlet by RjServlet by Rj
Servlet by Rj
 
Marata
MarataMarata
Marata
 

Kürzlich hochgeladen

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Kürzlich hochgeladen (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Dev212 Comparing Net And Java The View From 2006

  • 1. DEV212 Comparing .NET and Java: The View from 2006 David Chappell Chappell & Associates www.davidchappell.com
  • 2. Application Platforms Today Data Access Containing and Connecting Logic Defining Logic Logic to Logic Logic to Web Browser Accessing Data Web Services Binary Communication Distributed Transactions, etc. Queued Messaging Using Logic Web Browser Standalone Client Objects Remote Logic
  • 3. .NET Framework 2.0 Defining Logic Containing and Connecting Logic Accessing Data Using Logic ADO.NET ASP.NET ASMX/ WSE .NET Remoting Enterprise Services System. Messaging C#/Visual Basic/etc. Browser Windows Forms Remote Logic
  • 4. J2EE 1.4 Defining Logic Containing and Connecting Logic Accessing Data JDBC Using Logic Servlets/Java Server Pages (JSP) JAX-RPC Remote Method Invocation (RMI) Enterprise JavaBeans (EJB) Java Message Service (JMS) Java Browser Remote Logic Standalone Client
  • 5.
  • 6.
  • 7. Application Platforms in 2008 Defining Logic Containing and Connecting Logic Logic to Web Browser Accessing Data Data Access Using Logic Web Browser Standalone Client Remote Logic Logic to Logic Objects Workflows If … Then … Rules If … Then … If … Then …
  • 8. .NET Framework 3.0 Defining Logic Containing and Connecting Logic ASP.NET Accessing Data Using Logic Browser/AJAX/ XBAPs Windows Presentation Foundation (WPF) Remote Logic ADO.NET C#, VB, etc. Workflows Windows Workflow Foundation (WF) Rules WF Rules Engine Windows Communication Foundation (WCF)
  • 9. Java EE 5 Defining Logic Containing and Connecting Logic Accessing Data Using Logic Remote Logic Servlets/Java Server Pages (JSP) Browser/AJAX Standalone Client Java JDBC Java Persistence API (JPA) JAX-WS Remote Method Invocation (RMI) Enterprise JavaBeans 3.0 Java Message Service (JMS) Workflows Rules
  • 10. Open SOA Defining Logic Containing and Connecting Logic Accessing Data Using Logic Remote Logic Service Data Objects (SDO) Servlets/ Java Server Pages (JSP) Browser/AJAX Standalone Client Java, C++, etc. Workflows BPEL Service Component Architecture (SCA) Rules
  • 11.
  • 12. A Plausible Successor to J2EE 1.4 Defining Logic Containing and Connecting Logic Accessing Data Using Logic Remote Logic Servlets/ Java Server Pages (JSP) Browser/AJAX Swing/Eclipse Client Java Workflows Rules BPEL Various Service Component Architecture (SCA) Service Data Objects (SDO) Java Persistence API (JPA)
  • 13. Defining Logic: A Closer Look Defining Logic Containing and Connecting Logic Accessing Data Using Logic Objects Workflows If … Then … Rules If … Then … If … Then …
  • 14.
  • 15. Defining Logic: Workflows Workflow Engine 1) Execute first step 2) Execute second step 3) Execute next step . . .
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. BPEL Illustrating a Typical Implementation BPEL Execution Engine Workflow Graphical Process Design Tool Runtime Services
  • 22. WF Illustrating Its Components Workflow Other Activities BPEL 1.1 Library Host Process Base Activity Library (BAL) Runtime Engine Runtime Services Visual Studio 2005 WF Workflow Designer
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29. Containing Logic: A Closer Look Defining Logic Containing and Connecting Logic Logic to Logic Logic to Web Browser Accessing Data Using Logic
  • 30.
  • 31.
  • 32.
  • 33. Unifying Communication WCF Windows Communication Foundation API ASMX & WSE .NET Remoting Enterprise Services System. Messaging API Applications .NET Framework 2.0 MSMQ SOAP & WS-* Remoting binary protocol DCOM Protocol Others SOAP & WS-* WCF binary protocol MSMQ Protocol Applications .NET Framework 3.0
  • 34. Unifying Communication SCA Service Component Architecture API JAX-RPC Java RMI JMS API EJB Applications J2EE 1.4 Applications Open SOA Others SOAP & WS-* RMI binary protocol Queued messaging protocols Protocol Queued messaging protocols SOAP & WS-* RMI binary protocols Protocol Various protocols
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40. Illustrating Assembly: A Composite SCA Composite Component Component Component Service X Y Z Wire Y Reference Z Property Client X
  • 41.
  • 42.
  • 43. Accessing Data: A Closer Look Defining Logic Containing and Connecting Logic Accessing Data Data Access Using Logic
  • 44. Data Access Technology The Last Ten Years Java EE Open SOA Microsoft Key 1996 ADO JDBC EJB 1.0 Entity Beans 1998 EJB 2.0 Entity beans 2001 Java Persistence API (JPA) 2006 JAXB Service Data Objects (SDO) ObjectSpaces (cancelled) 2003 Java Data Objects (JDO) System.XML ADO.NET 2002 Relational access O/R mapping XML mapping Relational access and XML mapping Supplants EJB Entity beans and JDO
  • 45. Illustrating ADO.NET .NET Framework Data Provider .NET Framework Data Provider Application DBMS XML Document XML Document DataSet Serialized DataSet <XML … /> Tables
  • 46. Illustrating SDO .NET Framework Data Provider XML Document XML Document Application DBMS Data Access Service Data Access Service XML Document Other Data Source Data Access Service Serialized DataObjects <XML … /> Data Graph DataObjects
  • 47.
  • 48. A Projection for 2008 A Mainstream .NET Framework Application WCF Service WF Workflow ASP.NET AJAX WCF Service LINQ ADO.NET
  • 49. A Projection for 2008 A Mainstream Java EE/Open SOA Application Java SCA Component JSP/ AJAX Java SCA Component BPEL SCA Component SDO JPA
  • 50.
  • 51.
  • 52.
  • 53.  
  • 54.  
  • 55. © 2006 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.