DISYS
Introduction to Java
[Link]
© 2018 Digital Intelligence Systems, LLC.
What is Java ?
• Java is a computer programming that is object-oriented, and specifically designed to have as
few implementation dependencies as possible.
• It is intended to let application developers "write once, run anywhere" (WORA), meaning
that code that runs on one platform does not need to be recompiled to run on another.
• It’s the current “hot” language
• It’s more platform independent
• this makes it great for Web programming
• Java is every where, it's on desktop, it's on mobile, it's on card, almost everywhere
• OS independent
• It’s comparatively more secure/precise
© 2018 Digital Intelligence Systems, LLC
LLC. 2
What is object-oriented language?
• Object-oriented programming (OOP) is a programming that represents concepts as
"objects" that have data fields (attributes that describe the object) and associated
procedures known as methods.
• Real-world objects share two characteristics: They all have state and behavior.
• Ex: Bicycles have state (current gear, current pedal cadence, current speed) and
behavior (changing gear, changing pedal cadence, applying brakes).
• Identifying the state and behavior for real-world objects is a great way to begin
thinking in terms of object-oriented programming.
© 2018 Digital Intelligence Systems, LLC. 3
Typical Outline
1 – Presentation Tier (Front End)
2 – Business Logic (Middle Tier)
3 – Database (Back End)
The Java Language exist primarily in
Middle tier (Business Logic Tier)
© 2018 Digital Intelligence Systems, LLC. 4
Presentation Tier (Front End)
• HTML/CSS
• JavaScript
• JSF (JavaServer Faces)
• Ajax
• CSS 3 (Cascading Style Sheet)
• HTML 5
• Flash/Flex
• Photoshop
© 2018 Digital Intelligence Systems, LLC. 5
Middle Tier(Business Logic)
• Java/J2EE
• JSP
• Servlets
• Spring
• Struts
• JMS (Java Message Service )
• Web Services
• SOA
© 2018 Digital Intelligence Systems, LLC. 6
Middle Tier(Data Access)
• JDBC
• ODBC
• Spring JDBC
• Hibernate
© 2018 Digital Intelligence Systems, LLC. 7
Database (Back End)
Relational Database (RDBMS):
• Oracle
• MySQL
• DB2
• Microsoft SQL Server
• Sybase
• Informix
© 2018 Digital Intelligence Systems, LLC. 8
MVC (Model – View - Controller) Architecture
•View – Presentation Tier
• Controller – Presentation Tier
• Model – Everything below Presentation Tier.
The view sends updates to the controller, the
controller updates the model, and the view gets
updated directly from the model
© 2018 Digital Intelligence Systems, LLC. 9
SDLC - Software Development Lifecycle
(Waterfall, Agile/Scrum, non-programmer roles)
© 2018 Digital Intelligence Systems, LLC. 10
Common Developer Roles
Front end Developer:
I. May or may not be a Java programmer.
II. Works at the presentation tier (front end)
III. Must know HTML/CSS very well
Back end Developer:
I. Works primarily the middle tier.
II. Does not work with the front end.
III. Must have experience with data access.
Front-to-Back Developer:
I. Must know HTML/CSS.
II. Must have experience with MVC
III. Must have experience with Data Access.
IV. Commands the highest pay rates
© 2018 Digital Intelligence Systems, LLC. 11