SlideShare a Scribd company logo
1 of 52
Download to read offline
Java and NetBeans
Brian Leonard
Senior Software Engineer
Sun Microsystems, Inc.
Who Am I?
• Working at Wells Fargo when I first learned of Java
in 1995
• Joined NetDynamics in 1997
> the first Java application server - proprietary
• Acquired by Sun in 1998
> J2EE standardized the application server space
> Worked on the Reference Implementation
> Joined the tools group in 2005
Agenda
• Java
> Java Technology Background & Overview
> J2ME & Java Card
> J2EE & Web Services
> Cool Examples
• Sun and Free Open Source Software
• NetBeans IDE
1991 –
Duke gets on
the stage with
Oak on *7 from
Project Green
1996 –
JavaOne
1999 –
J2 enters with
the “Family”
Servers
Servers
Java 2
Enterprise
Edition
(J2EE)
Java 2
Standard
Edition
(J2SE)
Optional
Packages
Optional
Packages
Java 2 Micro Edition (J2ME)
Java Virtual Machine KVM
CLDC
CDC
MIDP
Foundation Profile
Personal Profile
Java
Card
APIs
CardVM
Desktop
machines
Desktop
machines
High-end
consumer
devices
High-end
consumer
devices Low-end
consumer
devices
Low-end
consumer
devices
Smart-
cards
Smart-
cards



2002 –
J2ME, J2SE
J2EE leads the
adoption of WS
and Mobility
1995 –
The world
gets to know
about Java in
the form of
HotJava 2005 -
Java Turns
10
The Set-Top TV You Never Saw
*7 ("StarSeven")
● Green Team predicted convergence of digitally controlled consumer
devices and computers.
● Produced *7 App aimed at TV set-top box and video-on-demand
industries
● “Oak” processor-independent language for heterogeneous devices
built around networking
Computing before Java
Operating System
Hardware
Compile
Executable
C or
Fortran
Source
Link
Relocatable
Platform
To Port Source code
• Some times the source code is portable – One source
can be compiled on different systems – different
flavors of Unix
• But, need to compile and test separately for each
supported platform
Java – Portable Code : WORA
Write Once Run Anywhere
Compile
Java
Source Java Byte
Code
Operating System
Hardware
Virtual Machine
Platform
Hardware
Operating System
HTML Portable Content for Browsers
Operating System
Hardware
Browser
HTML
Platform
Java + HTTP
 Portable, Networked Systems
code + transport
Java
HTTP
Portable
Code
Internet transport
Java: Portable code
• Executable portable browser code: Applet
> Stored on Server
> Executed on Client Browser
• Implications
> Platform Independent
> Revolution in Software Distribution
Sun
announces
Java and
HotJava at
SunWorld '95.
Netscape
announces its
intention to
license Java for
use in
Netscape
browser.
Why did Java become Popular
• Familiar & Simple – like C, C++
• Object-Oriented language
• Portable -
> executes anywhere Java Virtual Machine exists
• Robust, Secure
• Garbage Collection – No memory leaks
• Distributed
> Network Ready
Java: Desktop Client Platform
• Java code executes anywhere JVM exists
> Browser
> Operating System
> Chip
• Implications
> Write it once, Run it anywhere
> The language itself is the platform!
Java: The Revolution
J2EE
Server
Component
Client
Desktop
Applet
Paradigm
1500+
600
~5
# Books
2,000,000
700,000
~30
#Programmers
1999
1997
1994
Java 2005
4,500,000
Web
Services &
Mobility
2500+
The Java™ Platform
High-End
Server
Java Technology
Enabled Desktop
Workgroup
Server
Java Technology
Enabled Devices
The Java
TM
Platform
Optional
Packages
Java 2
Enterprise
Edition
(J2EE)
Java 2
Standard
Edition
(J2SE)
JVM Card VM
Optional
Packages
Personal
Profile
Foundation Profile
CDC
MIDP
CLDC
KVM
Java 2 Platform Micro Edition
(J2METM
)
Java
Card
Personal
Basis Profile
The Java
TM
Platform
Optional
Packages
Java 2
Enterprise
Edition
(J2EE)
Java 2
Standard
Edition
(J2SE)
JVM Card VM
Optional
Packages
Personal
Profile
Foundation Profile
CDC
MIDP
CLDC
KVM
Java 2 Platform Micro Edition
(J2METM
)
Java
Card
Personal
Basis Profile
Example J2ME™ Technology
Wireless Device Stack
Mobile
Information
Device
Profile
KVM
KVM + J2ME Core APIs
DSP chip
(e.g., ARM)
J2ME core APIs
Your
MIDlet
Yellow Pages, train
schedules and ticketing,
games…
UI, HTTP
networking...
minimized Java™ Virtual
Machine
32-bit RISC, 256K ROM,
256K Flash, 64K RAM
J2ME apps
at java.com
Expense tracker,
Financial data,
auction bidding,
plane schedules,
online price checker,
yellow pages
games…
TV:
J2ME™ Devices Today
i85s
A009
A 008
I50sx
i55rx
i80s
i95cl
A388 T720
T280i
A820
V60i V66i
i90c
388c A835
E380
I58sr
T725
V600 V67
TP226
9290
7650
7210 3410 6310i
6600
3585 3590 6610
6800 3510i 3650 9210 9210i
8910i
665
0
N-Gage
SL45i SL42
M50 M46
C55
CT56 MT50
S56 S55
I300
SCH
X250
SCH
X350 Rainbow
SCH
460
N400 I330
Nexio
S300
SCH-X110 SCH
X120
SCH
X140
SCH
X570
SCH
X600
SCH
X700
SCH
X130
SCH
X230
SCH
S100
SPH
S4209 SO503i
Clie
P800
A3014S SO504i T62U
CX-300L
iBook
Cnain
2000 Ez-X1
5350 Cnain
2100
CX300L
G8000SD1100
SD2100
Info
Comm VX1
U10
I90c SE
5100
J2ME™ Devices Today
C452CA
Cassiopei
a
A3012CA
iPaq
F503is F503i F504i C451H
C3001H SH-P300 QCP 6035
C3002K
D503i D05 FOMA
D2101v D06
Trium
Eclipse
N503i N503is FOMA
N2002
N05 FOMA
N2051
N504i N504i
J-K51
P503i P503is
FOMA
P2101v
C3003P
J-P51
GD87 P2002
C3011SA
J-SA51
A3011SA
A3015SA
SCP-4900
SH07
Zaurus
SH08
SH51
SH0
9
SH5
2
2101V
GX10
T06
A3013T C5001T
T0
7
Blackberry
5810
Treo 280
i705
Blackberry
6510
Blackberry
6710
Details on these and other J2ME devices:
http://wireless.java.sun.com/device
MIDP 2.0 Game APIs
javax.microedition.lcdui.game
 APIs for the development of rich
gaming content
 Networked or single player
 Optimized by device
The Java
TM
Platform
Optional
Packages
Java 2
Enterprise
Edition
(J2EE)
Java 2
Standard
Edition
(J2SE)
JVM Card VM
Optional
Packages
Personal
Profile
Foundation Profile
CDC
MIDP
CLDC
KVM
Java 2 Platform Micro Edition
(J2METM
)
Java
Card
Personal
Basis Profile
Smart cards for digital identity
Plastic
card
Contact
pad
Gold wiring
Epoxy fill
ROM w/JVM
ROM,
Operating
system
EEPROM,
Application
Memory
CryptoProcessor
CPU
RAM
EEPROM
CPU + memory chip
for secure processing and storagee
Can be Used for security keys and
security algorithms
1970
PDP-8/I
1/4 Mhz
8K of RAM
Less horsepower
than Java Card
5 Mhz
2 KB of RAM
Java Card examples
• Belgium, Malaysia,Thailand:
Electronic National Identity card
• Switzerland: SWISSCOM GSM
operator 500,000 JavaCards
• Taiwan Health care Id
• Singapore's Road Toll
• U.S. Department of Defense
• American Express, Visa
The Java
TM
Platform
Optional
Packages
Java 2
Enterprise
Edition
(J2EE)
Java 2
Standard
Edition
(J2SE)
JVM Card VM
Optional
Packages
Personal
Profile
Foundation Profile
CDC
MIDP
CLDC
KVM
Java 2 Platform Micro Edition
(J2METM
)
Java
Card
Personal
Basis Profile
Client
Client
Client
Client
Client
Client
Tier
Enterprise
Information
Tier
Middle
Tier
Enterprise
Information
Systems (EIS):
Relational
Database,
Legacy
Applications,
ERP Systems
Enterprise
JavaBeans™
Enterprise
JavaBeans
Other Services:
JNDI, JMS,
JavaMail™
J2EE
Application
Server
Web
Server
JSP,
Servlets
Firewall
J2EE is End-to-End Solution
HTML/XML
J2EE™ Platform Specification
JNDI
J2SE
JMS
RMI/IIOP
JDBC
Database
App
Client
App Client
Container
HTTP/
HTTPS
J2SE
RMI
J2SE
JNDI
JMS
RMI/IIOP
JDBC
JTA
JavaMail
JAF
JNDI
JMS
RMI/IIOP
JDBC
JTA
JavaMail
JAF
HTTP/
HTTPS
Applet
Container
Applet JSP Servlet EJB
Web Container EJB™ Container
RMI
J2SE
Components
Components run within Container
Container.
Container
Container provides Runtime environment,
Runtime environment, J2SE
J2SE ™
™ & J2EE™
& J2EE™
APIs,
APIs, and remote communication
remote communication
eBay Architecture: How to Go…
Microsoft IIS
eBayISAPI.dll
MSXML
…to here?
From there…
J2EE™ Container
Web Container
Presentation Tier
EJB™
Container
Business Tier
Integration Tier
Services
Configuration
Logging
Security
 Monolithic
 Proprietary
 Layered
 Loosely coupled
 Modular, Standards
based
Java + HTTP + XML
 Portable, Networked Systems
code + data + transport
Java
XML
HTTP
Portable
Code
Portable
Data
Internet transport
• A method for loosely coupled integration
between applications
• Messaging and Interfaces to applications
• Example of Service Oriented Architecture
– Service Consumers
– Service Providers
What Are Web Services?
Inventory
WSDL
WSDL
SOAP
SOAP
XML
XML
Billing
Web
Services
Interface
Web
Services
Interface
Service Consumer Service Provider
SOAP
SOAP
• Patients ID
• Professional ID
• Provider Info
• Encounter
Information
Identification and treatment data
Brazilian National Health Project
Data and Information Captured
Point-of-Care
Device Servers
 130M inhabitants
Mars Rovers Mission
Collaborative Information Portal
• Provide a central place to
access mission information
• Provide a Mars time clock
• Navigate, search, and view
mission data, plans, reports and
schedules from various
perspectives
• Provide notification of updates
of various mission data
Agenda
• Java
> Java Technology Background & Overview
> J2ME &Java Card
> J2EE & Web Services
> Cool Examples
• Sun and Free Open Source Software
• NetBeans IDE
What is Open Source
• Open Source != Open Standards
• Licensed to protect right to...
> Fork
> Modify
> Redistribute
• It's about Community
> Massive peer review means higher overall
quality
> Profit-driven (proprietary) software first exists not
to be excellent, but to make money
Sun and Open Source
• Contributed more to the OSS community then any
other vendor
>
>
>
>
Contributes on many others
Join java.net
Agenda
• Java
> Java Technology Background & Overview
> J2ME & Java Card
> J2EE & Web Services
> Cool Examples
• Sun and Free Open Source Software
• NetBeans IDE
What's an IDE?
Integrated Development Environment - a set
of tools that aid application development
Why Do I Care?
Because IDEs eliminate the tedious parts of
coding, allowing you to focus on solving the
problem.
How So?
• By being aware of your code syntax
• By showing errors as you type
How So?
• By understanding the Java APIs, even the
one's you create
How So?
• By:
>Compiling your code
>Automating repetitive tasks
>Automatically creating classes, methods
and properties
>Providing an interactive debugger
>Refactoring your code
>Integrating with source code repositories
>Integrating with application servers
What is NetBeans?
• Free Open Source Pure JavaTM
IDE
• Modular and Extensible
• Supports things you have to pay for in other IDEs
http://www.netbeans.org
Where is NetBeans?
NetBeans History
• Started in 1996 as a student project at Charles
Univeristy in Prague (originally called Xelfi)
• Most of these same students (now Sun employees)
are still working on NetBeans today.
NetBeans History
• The original plan was to develop network-enabled
JavaBeans, hence the name NetBeans.
• In 1999, Sun acquired NetBeans, and briefly
renamed it “Forte for Java”
• In 2000, Sun open sourced NetBeans.
> Although a large contributor to open source projects,
NetBeans was Sun's first sponsored project.
> netbeans.org web site was launched
• In 2001, The Platform was born
> A generic desktop application suitable for any purpose
NetBeans 4.1 – It Just Works
• Intuitive User Interface & Usability
• Supports the latest Java APIs (5.0)
• Your Ant script is your project
• Unit testing – a natural part of development
• Integrated CPU & Memory Profiler
• J2ME Mobility Support
• J2EE & Web Services Support
D
e
m
o
Resources
• Sun's Java Web sites
> http://java.com
> http://java.sun.com
> http://java.net
> http://www.netbeans.org
• The Story of Java Platform
> http://java.sun.com/java2/whatis/
Brian Leonard
bleonard@sun.com
Java and NetBeans

More Related Content

Similar to JavaAndNetBeans.pdf

Azure en Nutanix: your journey to the hybrid cloud
Azure en Nutanix: your journey to the hybrid cloudAzure en Nutanix: your journey to the hybrid cloud
Azure en Nutanix: your journey to the hybrid cloudICT-Partners
 
Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)Matt Bynum
 
Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)Matt Bynum
 
01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro editioncorneliuskoo
 
Tehran's 1st Android bootcamp - Part2
Tehran's 1st Android bootcamp - Part2Tehran's 1st Android bootcamp - Part2
Tehran's 1st Android bootcamp - Part2Mohsen Mirhoseini
 
Proposal Finished
Proposal  FinishedProposal  Finished
Proposal FinishedTrevor Moon
 
WS-* Specifications Update 2007
WS-* Specifications Update 2007WS-* Specifications Update 2007
WS-* Specifications Update 2007Jorgen Thelin
 
eMagic-Data Center Management System
eMagic-Data Center Management SystemeMagic-Data Center Management System
eMagic-Data Center Management SystemSandesh Sonar
 
Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010Nokia
 
Building a Reliable Remote Communication Device with Java ME8 [CON2285]
Building a Reliable Remote Communication Device with Java ME8 [CON2285]Building a Reliable Remote Communication Device with Java ME8 [CON2285]
Building a Reliable Remote Communication Device with Java ME8 [CON2285]Leonardo De Moura Rocha Lima
 
Introduction to java
Introduction to java Introduction to java
Introduction to java Java Lover
 
Slides bootcamp21
Slides bootcamp21Slides bootcamp21
Slides bootcamp21dxsaki
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Ryan Cuprak
 
AAI-1304 Technical Deep-Dive into IBM WebSphere Liberty
AAI-1304 Technical Deep-Dive into IBM WebSphere LibertyAAI-1304 Technical Deep-Dive into IBM WebSphere Liberty
AAI-1304 Technical Deep-Dive into IBM WebSphere LibertyWASdev Community
 

Similar to JavaAndNetBeans.pdf (20)

Azure en Nutanix: your journey to the hybrid cloud
Azure en Nutanix: your journey to the hybrid cloudAzure en Nutanix: your journey to the hybrid cloud
Azure en Nutanix: your journey to the hybrid cloud
 
Android architechture
Android architechtureAndroid architechture
Android architechture
 
Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)
 
Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)Demystifying Software Defined Networking (SDN)
Demystifying Software Defined Networking (SDN)
 
01 java 2 micro edition
01 java 2 micro edition01 java 2 micro edition
01 java 2 micro edition
 
Tehran's 1st Android bootcamp - Part2
Tehran's 1st Android bootcamp - Part2Tehran's 1st Android bootcamp - Part2
Tehran's 1st Android bootcamp - Part2
 
SunMicroSystems
SunMicroSystemsSunMicroSystems
SunMicroSystems
 
Java withrealworldtechnology
Java withrealworldtechnologyJava withrealworldtechnology
Java withrealworldtechnology
 
Proposal Finished
Proposal  FinishedProposal  Finished
Proposal Finished
 
WS-* Specifications Update 2007
WS-* Specifications Update 2007WS-* Specifications Update 2007
WS-* Specifications Update 2007
 
Symbian os
Symbian osSymbian os
Symbian os
 
eMagic-Data Center Management System
eMagic-Data Center Management SystemeMagic-Data Center Management System
eMagic-Data Center Management System
 
Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010
 
Building a Reliable Remote Communication Device with Java ME8 [CON2285]
Building a Reliable Remote Communication Device with Java ME8 [CON2285]Building a Reliable Remote Communication Device with Java ME8 [CON2285]
Building a Reliable Remote Communication Device with Java ME8 [CON2285]
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
 
Sunstate
SunstateSunstate
Sunstate
 
Slides bootcamp21
Slides bootcamp21Slides bootcamp21
Slides bootcamp21
 
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
 
JavaOne 2010 Keynote
JavaOne 2010 Keynote JavaOne 2010 Keynote
JavaOne 2010 Keynote
 
AAI-1304 Technical Deep-Dive into IBM WebSphere Liberty
AAI-1304 Technical Deep-Dive into IBM WebSphere LibertyAAI-1304 Technical Deep-Dive into IBM WebSphere Liberty
AAI-1304 Technical Deep-Dive into IBM WebSphere Liberty
 

Recently uploaded

Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 

Recently uploaded (20)

Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 

JavaAndNetBeans.pdf

  • 1. Java and NetBeans Brian Leonard Senior Software Engineer Sun Microsystems, Inc.
  • 2. Who Am I? • Working at Wells Fargo when I first learned of Java in 1995 • Joined NetDynamics in 1997 > the first Java application server - proprietary • Acquired by Sun in 1998 > J2EE standardized the application server space > Worked on the Reference Implementation > Joined the tools group in 2005
  • 3. Agenda • Java > Java Technology Background & Overview > J2ME & Java Card > J2EE & Web Services > Cool Examples • Sun and Free Open Source Software • NetBeans IDE
  • 4. 1991 – Duke gets on the stage with Oak on *7 from Project Green 1996 – JavaOne 1999 – J2 enters with the “Family” Servers Servers Java 2 Enterprise Edition (J2EE) Java 2 Standard Edition (J2SE) Optional Packages Optional Packages Java 2 Micro Edition (J2ME) Java Virtual Machine KVM CLDC CDC MIDP Foundation Profile Personal Profile Java Card APIs CardVM Desktop machines Desktop machines High-end consumer devices High-end consumer devices Low-end consumer devices Low-end consumer devices Smart- cards Smart- cards    2002 – J2ME, J2SE J2EE leads the adoption of WS and Mobility 1995 – The world gets to know about Java in the form of HotJava 2005 - Java Turns 10
  • 5. The Set-Top TV You Never Saw *7 ("StarSeven") ● Green Team predicted convergence of digitally controlled consumer devices and computers. ● Produced *7 App aimed at TV set-top box and video-on-demand industries ● “Oak” processor-independent language for heterogeneous devices built around networking
  • 6. Computing before Java Operating System Hardware Compile Executable C or Fortran Source Link Relocatable Platform
  • 7. To Port Source code • Some times the source code is portable – One source can be compiled on different systems – different flavors of Unix • But, need to compile and test separately for each supported platform
  • 8. Java – Portable Code : WORA Write Once Run Anywhere Compile Java Source Java Byte Code Operating System Hardware Virtual Machine Platform Hardware Operating System
  • 9. HTML Portable Content for Browsers Operating System Hardware Browser HTML Platform
  • 10. Java + HTTP  Portable, Networked Systems code + transport Java HTTP Portable Code Internet transport
  • 11. Java: Portable code • Executable portable browser code: Applet > Stored on Server > Executed on Client Browser • Implications > Platform Independent > Revolution in Software Distribution
  • 12. Sun announces Java and HotJava at SunWorld '95. Netscape announces its intention to license Java for use in Netscape browser.
  • 13. Why did Java become Popular • Familiar & Simple – like C, C++ • Object-Oriented language • Portable - > executes anywhere Java Virtual Machine exists • Robust, Secure • Garbage Collection – No memory leaks • Distributed > Network Ready
  • 14. Java: Desktop Client Platform • Java code executes anywhere JVM exists > Browser > Operating System > Chip • Implications > Write it once, Run it anywhere > The language itself is the platform!
  • 15. Java: The Revolution J2EE Server Component Client Desktop Applet Paradigm 1500+ 600 ~5 # Books 2,000,000 700,000 ~30 #Programmers 1999 1997 1994 Java 2005 4,500,000 Web Services & Mobility 2500+
  • 16. The Java™ Platform High-End Server Java Technology Enabled Desktop Workgroup Server Java Technology Enabled Devices
  • 17. The Java TM Platform Optional Packages Java 2 Enterprise Edition (J2EE) Java 2 Standard Edition (J2SE) JVM Card VM Optional Packages Personal Profile Foundation Profile CDC MIDP CLDC KVM Java 2 Platform Micro Edition (J2METM ) Java Card Personal Basis Profile
  • 18. The Java TM Platform Optional Packages Java 2 Enterprise Edition (J2EE) Java 2 Standard Edition (J2SE) JVM Card VM Optional Packages Personal Profile Foundation Profile CDC MIDP CLDC KVM Java 2 Platform Micro Edition (J2METM ) Java Card Personal Basis Profile
  • 19. Example J2ME™ Technology Wireless Device Stack Mobile Information Device Profile KVM KVM + J2ME Core APIs DSP chip (e.g., ARM) J2ME core APIs Your MIDlet Yellow Pages, train schedules and ticketing, games… UI, HTTP networking... minimized Java™ Virtual Machine 32-bit RISC, 256K ROM, 256K Flash, 64K RAM
  • 20. J2ME apps at java.com Expense tracker, Financial data, auction bidding, plane schedules, online price checker, yellow pages games… TV:
  • 21. J2ME™ Devices Today i85s A009 A 008 I50sx i55rx i80s i95cl A388 T720 T280i A820 V60i V66i i90c 388c A835 E380 I58sr T725 V600 V67 TP226 9290 7650 7210 3410 6310i 6600 3585 3590 6610 6800 3510i 3650 9210 9210i 8910i 665 0 N-Gage SL45i SL42 M50 M46 C55 CT56 MT50 S56 S55 I300 SCH X250 SCH X350 Rainbow SCH 460 N400 I330 Nexio S300 SCH-X110 SCH X120 SCH X140 SCH X570 SCH X600 SCH X700 SCH X130 SCH X230 SCH S100 SPH S4209 SO503i Clie P800 A3014S SO504i T62U CX-300L iBook Cnain 2000 Ez-X1 5350 Cnain 2100 CX300L G8000SD1100 SD2100 Info Comm VX1 U10 I90c SE 5100
  • 22. J2ME™ Devices Today C452CA Cassiopei a A3012CA iPaq F503is F503i F504i C451H C3001H SH-P300 QCP 6035 C3002K D503i D05 FOMA D2101v D06 Trium Eclipse N503i N503is FOMA N2002 N05 FOMA N2051 N504i N504i J-K51 P503i P503is FOMA P2101v C3003P J-P51 GD87 P2002 C3011SA J-SA51 A3011SA A3015SA SCP-4900 SH07 Zaurus SH08 SH51 SH0 9 SH5 2 2101V GX10 T06 A3013T C5001T T0 7 Blackberry 5810 Treo 280 i705 Blackberry 6510 Blackberry 6710 Details on these and other J2ME devices: http://wireless.java.sun.com/device
  • 23. MIDP 2.0 Game APIs javax.microedition.lcdui.game  APIs for the development of rich gaming content  Networked or single player  Optimized by device
  • 24. The Java TM Platform Optional Packages Java 2 Enterprise Edition (J2EE) Java 2 Standard Edition (J2SE) JVM Card VM Optional Packages Personal Profile Foundation Profile CDC MIDP CLDC KVM Java 2 Platform Micro Edition (J2METM ) Java Card Personal Basis Profile
  • 25. Smart cards for digital identity Plastic card Contact pad Gold wiring Epoxy fill ROM w/JVM ROM, Operating system EEPROM, Application Memory CryptoProcessor CPU RAM EEPROM CPU + memory chip for secure processing and storagee Can be Used for security keys and security algorithms
  • 26. 1970 PDP-8/I 1/4 Mhz 8K of RAM Less horsepower than Java Card 5 Mhz 2 KB of RAM
  • 27. Java Card examples • Belgium, Malaysia,Thailand: Electronic National Identity card • Switzerland: SWISSCOM GSM operator 500,000 JavaCards • Taiwan Health care Id • Singapore's Road Toll • U.S. Department of Defense • American Express, Visa
  • 28. The Java TM Platform Optional Packages Java 2 Enterprise Edition (J2EE) Java 2 Standard Edition (J2SE) JVM Card VM Optional Packages Personal Profile Foundation Profile CDC MIDP CLDC KVM Java 2 Platform Micro Edition (J2METM ) Java Card Personal Basis Profile
  • 30. J2EE™ Platform Specification JNDI J2SE JMS RMI/IIOP JDBC Database App Client App Client Container HTTP/ HTTPS J2SE RMI J2SE JNDI JMS RMI/IIOP JDBC JTA JavaMail JAF JNDI JMS RMI/IIOP JDBC JTA JavaMail JAF HTTP/ HTTPS Applet Container Applet JSP Servlet EJB Web Container EJB™ Container RMI J2SE Components Components run within Container Container. Container Container provides Runtime environment, Runtime environment, J2SE J2SE ™ ™ & J2EE™ & J2EE™ APIs, APIs, and remote communication remote communication
  • 31. eBay Architecture: How to Go… Microsoft IIS eBayISAPI.dll MSXML …to here? From there… J2EE™ Container Web Container Presentation Tier EJB™ Container Business Tier Integration Tier Services Configuration Logging Security  Monolithic  Proprietary  Layered  Loosely coupled  Modular, Standards based
  • 32. Java + HTTP + XML  Portable, Networked Systems code + data + transport Java XML HTTP Portable Code Portable Data Internet transport
  • 33. • A method for loosely coupled integration between applications • Messaging and Interfaces to applications • Example of Service Oriented Architecture – Service Consumers – Service Providers What Are Web Services? Inventory WSDL WSDL SOAP SOAP XML XML Billing Web Services Interface Web Services Interface Service Consumer Service Provider SOAP SOAP
  • 34. • Patients ID • Professional ID • Provider Info • Encounter Information Identification and treatment data Brazilian National Health Project Data and Information Captured Point-of-Care Device Servers  130M inhabitants
  • 35. Mars Rovers Mission Collaborative Information Portal • Provide a central place to access mission information • Provide a Mars time clock • Navigate, search, and view mission data, plans, reports and schedules from various perspectives • Provide notification of updates of various mission data
  • 36. Agenda • Java > Java Technology Background & Overview > J2ME &Java Card > J2EE & Web Services > Cool Examples • Sun and Free Open Source Software • NetBeans IDE
  • 37. What is Open Source • Open Source != Open Standards • Licensed to protect right to... > Fork > Modify > Redistribute • It's about Community > Massive peer review means higher overall quality > Profit-driven (proprietary) software first exists not to be excellent, but to make money
  • 38. Sun and Open Source • Contributed more to the OSS community then any other vendor > > > > Contributes on many others
  • 40. Agenda • Java > Java Technology Background & Overview > J2ME & Java Card > J2EE & Web Services > Cool Examples • Sun and Free Open Source Software • NetBeans IDE
  • 41. What's an IDE? Integrated Development Environment - a set of tools that aid application development
  • 42. Why Do I Care? Because IDEs eliminate the tedious parts of coding, allowing you to focus on solving the problem.
  • 43. How So? • By being aware of your code syntax • By showing errors as you type
  • 44. How So? • By understanding the Java APIs, even the one's you create
  • 45. How So? • By: >Compiling your code >Automating repetitive tasks >Automatically creating classes, methods and properties >Providing an interactive debugger >Refactoring your code >Integrating with source code repositories >Integrating with application servers
  • 46. What is NetBeans? • Free Open Source Pure JavaTM IDE • Modular and Extensible • Supports things you have to pay for in other IDEs http://www.netbeans.org
  • 48. NetBeans History • Started in 1996 as a student project at Charles Univeristy in Prague (originally called Xelfi) • Most of these same students (now Sun employees) are still working on NetBeans today.
  • 49. NetBeans History • The original plan was to develop network-enabled JavaBeans, hence the name NetBeans. • In 1999, Sun acquired NetBeans, and briefly renamed it “Forte for Java” • In 2000, Sun open sourced NetBeans. > Although a large contributor to open source projects, NetBeans was Sun's first sponsored project. > netbeans.org web site was launched • In 2001, The Platform was born > A generic desktop application suitable for any purpose
  • 50. NetBeans 4.1 – It Just Works • Intuitive User Interface & Usability • Supports the latest Java APIs (5.0) • Your Ant script is your project • Unit testing – a natural part of development • Integrated CPU & Memory Profiler • J2ME Mobility Support • J2EE & Web Services Support D e m o
  • 51. Resources • Sun's Java Web sites > http://java.com > http://java.sun.com > http://java.net > http://www.netbeans.org • The Story of Java Platform > http://java.sun.com/java2/whatis/