Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of...
Transcript of Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of...
![Page 1: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/1.jpg)
Simon Ritter
Technology Evangelist
Sun Microsystems, Inc.
Java Everywhere
![Page 2: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/2.jpg)
Agenda
● Data● Web Services● Java● Ease of Development● Summary
![Page 3: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/3.jpg)
Data
![Page 4: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/4.jpg)
Waves of the Internet
An Internetof Computers
An Internet of ThingsThat Embed Computers
An Internetof Things
108
1011
1014
![Page 5: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/5.jpg)
Things - 1014
Computers 108
Embedded Computers 1011
Desktops
PhonesPhonesTVsTVs
CarsCars
GamesGames
SwitchesSwitches
PackagesPackages
ThermostatsThermostats
IP v6IP v4
Clients
Functions
Organization
ProtocolsIP Layer
Waves of the Internet
ClothesClothes
![Page 6: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/6.jpg)
Things - 1014
Computers 108
Embedded Computers 1011
Desktops
Transfers Transactions Content Telemetry ControlTransfers Transactions Content Telemetry Control
Clients
Functions
Organization
Protocols
Waves of the Internet
IP v6IP v4 IP Layer
SwitchesSwitches
PackagesPackages
ThermostatsThermostats
ClothesClothesPhonesPhones
TVsTVs
CarsCars
GamesGames
![Page 7: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/7.jpg)
Things - 1014
Computers 108
Embedded Computers 1011
Desktops
Client/Server
Web Web ApplicationsApplications
Web Web ServicesServices
FractalFractal
PolyarchicalPolyarchical
N-tier
FTP
Telnet HTTP
XRPC/XDRSMTP
Clients
Functions
Organization
Protocols
SOAPSOAP
RMI/IIOPRMI/IIOP
JiniJini
IdentityIdentity
UDDIUDDI
LDAPLDAP
JXTAJXTA
Waves of the Internet
IP v6IP v4 IP Layer
PhonesPhonesTVsTVs
CarsCars
GamesGames
SwitchesSwitches
PackagesPackages
ThermostatsThermostats
ClothesClothes
Transfers Transactions Content Telemetry ControlTransfers Transactions Content Telemetry Control
![Page 8: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/8.jpg)
Auto-ID
![Page 9: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/9.jpg)
RFID: The New Barcode
● Radio Frequency Identity Tags● Data can be changed● No line of site required● 96-bits is plenty of storage
![Page 10: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/10.jpg)
Lots Of Possibilities...
● Supply chain management● Parcel tracking● Refrigerator/oven● Washing machine● Personalised advertising● Use your imagination...
![Page 11: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/11.jpg)
Three “Laws” of Computing● Moore's Law– Computing power doubles every 18
months● Gilder's Law– Network bandwidth capacity doubles
every 12 months● Metcalfe's Law (Net Effect)– Value of network increases exponentially
as number of participants increases
![Page 12: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/12.jpg)
Platform EvolutionCatchCatch
PhrasePhrase
The NetworkThe NetworkIs the ComputerIs the Computer
ObjectsObjectsLegacy to Legacy to the Webthe Web
The Computer The Computer Is theIs the
NetworkNetwork
Network of Network of Embedded Embedded
ThingsThingsNetworkNetworkof Thingsof Things
ScaleScale
When/PeakWhen/Peak
LeafLeafProtocol(s)Protocol(s)
Directory(s)Directory(s)
SessionSession
100s100s 1,000s1,000s 1,000,000s1,000,000s 10,000,000s10,000,000s 100,000,000s100,000,000s 100,000,000s100,000,000s
1984/19871984/1987 1990/19931990/1993 1996/19991996/1999 2001/20032001/2003 1998/20041998/2004 2004/20072004/2007
XX XX +HTTP+HTTP(+JVM)(+JVM)
+XML+XMLPortalPortal
+RM+RM UnknownUnknown
NS, NS+NS, NS+ +CDS+CDS +LDAP(*)+LDAP(*) +UDDI+UDDI +Jini+Jini +?+?
RPC, XDRRPC, XDR +CORBA+CORBA +CORBA,+CORBA,RMRM
+SOAP,+SOAP,XMLXML
+RM/Jini+RM/Jini +?+?
SchematicSchematic
![Page 13: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/13.jpg)
Web Services
![Page 14: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/14.jpg)
Design Patterns: Web Application
Business Systems
DB Server
App Server
Web Server
BrowserClient
Web Application
J2EE
J2SE/J2ME
![Page 15: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/15.jpg)
Design Patterns: Web Service
Bus.Sys.
DB
App
Web
Browser
Context and Identity(LDAP, Policy, Liberty)
J2EE
J2SE/J2ME
XML(UDDI, SOAP)
Web Service
![Page 16: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/16.jpg)
Web Services Adoption
● 1st phase– Concerted deployment internally within an
organization
● 2nd phase– Selective deployment with outside business
partners
● 3rd phase– Wider deployment with outside business
partners
![Page 17: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/17.jpg)
First Generation Web Services
● XML based● Message-based● Language independent● Dynamically located● Accessed over the internet● Loosely coupled● Using standard protocols
![Page 18: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/18.jpg)
Web Services Inhibitors● Basic web services designed for RPC– B2B is different– Reliability– Choreography– Security
● Performance– XML massively degrades network performance– ASN.1 being considered
● Politics!– Too many standards– Royalties?
![Page 19: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/19.jpg)
Java
![Page 20: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/20.jpg)
1991 – Duke gets onthe stage withOak fromProject Green
1996 –JavaOne 1999 –
Java2 enters withthe “Family”
Se rv ersSe rv ers
Ja va 2Enterp rise
Edi tio n(J2 EE )
Ja va 2Stand ard
Edi tio n(J2 SE )
Opt iona lPackag es
Opt iona lPackag es
Jav a 2 Mic ro E dit ion ( J2M E)
Jav a Virtua l Mac hine KV M
CLDCCDC
MIDPFounda tion P rof ile
Pers ona l Pr of ile
JavaCar dAP Is
Card VM
Des kto pm ach in es
Des kto pm ach in es
High-e ndconsume rdevices
High-e ndconsume rdevices Low-e nd
consume rdevices
Low-e ndconsume rdevices
Sm art-card s
Sm art-card s
2003 – Java Everywhere
1995 – The worldgets to knowabout Java.The applet is born.
A Brief History of Java
![Page 21: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/21.jpg)
Java™ 2 PlatformServ ersServ ers
Ja va 2Enterp rise
Edition(J2 EE)
Ja va 2Stan dardEdition(J2 SE)
Opt ionalPac kage s
Opt ionalPac kage s
Java 2 Mi cro Editi on (J2 ME)
Java Vir tual Mach ine KVM
CLDCCDC
MI DPFou ndati on Profil e
Perso nal Pro file
JavaCardAPIs
Ca rdVM
Des ktopmachines
Des ktopmachines
High- endcons um erdev ice s
High- endcons um erdev ice s Low -end
cons um erdev ice s
Low -endcons um erdev ice s
Smart-ca rds
Smart-ca rds
![Page 22: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/22.jpg)
Java Stats● Java in 100% of Fortune 500 companies– 78% of executives view Java as the choice for web
services● Java installed on 550 million desktops● 150 Java enabled mobile phone models● More than 3 million Java developers● JRE is second most popular download on
the internet● Java is widely recognised consumer
brand– Most non-techies associate it with Microsoft!
![Page 23: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/23.jpg)
JavaCard, the World's Most Widely Deployed Identity Solution
● 300M deployed (and growing)
● 95% of smart card market
● Every GSM phone
● Defense Department
● National Health Insuranceof Taiwan - 22M Users
● Amex, Citigroup, Providian
● Everyone over 12 in Belgium
![Page 24: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/24.jpg)
Java Community Process● Executive committee● Java Specification Request– Currently 224+ Requests
● Expert Group– Interested companies/individuals
● Public Review● Reference Implementation● Compatability Test Kit– Sun/Apache scholarship fund
![Page 25: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/25.jpg)
The Java Community: Strength in Numbers
● Java programmers: – 2.5 million, as of 2001 (source: Gartner)– Prediction of 4 million by 2003 (source: IDC)
● Java in universities:– 78% teach Java, 50% require Java (source: The Middleware Company)
● Java usage is expected to grow 29.4% in 2003 alone– (source: IDC Worldwide Developer Model, via
http://www.devx.com/judgingjava/articles/skills/ )
![Page 26: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/26.jpg)
Sun's “mantra”
● Innovate– 2/3 of Sun's R&D is in software
● Cooperate on Standards and Specs.– Java Community Process
● Produce reference implementations– Java Web Services Developer Pack
● Integrate into products– Sun ONE products
![Page 27: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/27.jpg)
JDK Themes● 1.0 – First Release● 1.1 – New event model● 1.2 – Performance, New APIs● 1.3 – Performance, Hot Spot● 1.4 – Performance, Reliability, Availability● 1.5 – Performance, Ease of development
![Page 28: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/28.jpg)
JDK 1.5, “Tiger”● Next major J2SE release– Biggest impact on language since JDK1.0
● Themes & features still under design● Will go through the JCP ALL FEATURES ARE TENTATIVE
![Page 29: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/29.jpg)
JDK 1.5 Themes● Compatibility, Compatibility, Compatibility!● Quality● Monitoring and Manageability● Performance and Scalability● Client for XML and Web Services● Ease of Development
![Page 30: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/30.jpg)
Monitoring & Manageability● JMX Management API (JSR-003)– Support for CIM/WBEM and SNMP
● JVM Monitoring & Management API– JSR-174– Local API, but also mapped to JMX– New JVM profiling API (JSR-163)– replaces experimental JVMPI
![Page 31: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/31.jpg)
Performance Related● More support for big heaps– Improved concurrent/parallel collection
● Yet more HotSpot tuning● Faster startup time● Reduced footprint
![Page 32: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/32.jpg)
Selected Language Updates● Generics (JSR-014)● Metadata (JSR-175)● Iterating over collections● Enumerated types● Autoboxing of primitive types● Support for importing constants● Memory Model clarifications
![Page 33: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/33.jpg)
JDK 1.5 Miscellany ... ● Unicode 3.1 – 2 unicode values for each surrogate char
● Java Isolation API (JSR-121)● API for javac compiler● Disconnected JDBCTM RowSets (JSR-114)
● New File System interface
● Perhaps: asynchronous I/O
● printf !!!!
![Page 34: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/34.jpg)
J2EE 1.5● More web service standards– SOAP 1.2, WSDL 1.2?– WS-Security? XML DSIG? XML ENC?
● JSRs in progress– JSR-173 – Streaming API for XML– JSR-181 – Web Services Metadata– JSR-183 – Web Services Message Security
● Ease of development– Replace deployment descriptor with Metadata– Java Server Faces
![Page 35: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/35.jpg)
Developer Tools● Project Rave● Project Relator● Project ACE
![Page 36: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/36.jpg)
Summary
![Page 37: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/37.jpg)
Sun as a Disruptive Innovator
1980 1990 2000
![Page 38: Java Everywhere · Summary. Data. Waves of the Internet An Internet of Computers An Internet of Things That Embed Computers An Internet of Things 108 1011 ... Executive committee](https://reader030.fdocuments.us/reader030/viewer/2022040912/5e8644830b270b62fd0ff3e9/html5/thumbnails/38.jpg)
Java Everywhere
● Freedom of choice– Write once, run anywhere
● Open Standard– JCP
● Constantly evolving– New features to ease development
● Still the best programming language