Java Software Platform

Embed Size (px)

Citation preview

  • 7/31/2019 Java Software Platform

    1/24

  • 7/31/2019 Java Software Platform

    2/24

    PRESENTATION OUTLINE

    A Brief History of Java (Firas)

    Javas Architecture (Taiye)

    Strengths and Weaknesses of Java (Juliana)

    Java and the Developing World (Masum)

    The Future of the Java Platform? (Benjamin )

    2

  • 7/31/2019 Java Software Platform

    3/24

    3

  • 7/31/2019 Java Software Platform

    4/24

    Java is a programming language and environment invented by James

    Gosling and his team in 1994.

    The syntax of Java is almost same as C++.

    Java is purely Object Oriented programing language and all code is writteninside a class and everything is an object.

    Object-oriented programming focuses on the state and behavior ofindividual objects.

    Sun Microsystems released the first public implementation of Java as Java

    JDK 1.0 in 1995.

    4

  • 7/31/2019 Java Software Platform

    5/24

    In 1991, Sun Microsystems were

    thinking about the future of computing.Their research indicated the next big

    thing would be intelligent consumer

    devices.

    Green Project to create a prototype

    for a consumer device.

    After 18 months, the Green Projectteam emerged with a device that theycalled Star7. Essentially, it worked like

    todays PDA (though it was a lot bigger)and had an animated, color touchscreen.

    The USP of Star7 was theprogramming language that made

    it work.

    5

  • 7/31/2019 Java Software Platform

    6/24

    James Gosling, created the language Oak after a large oak tree outside his officewindow.

    At the end and during visiting to some coffee they decide to call this languageJAVA (name of kind of caf).

    Java finally became the official name. In 1993, when the internet start to gain popularity, the Green Team shiftdevelopment focus to incorporate this.

    Why ?

    A long list of features makes Java an excellent programming language.

    Java can be described as simple, object oriented, interpreted, portable,robust, secure, multithreaded, and high performance.

    Beyond this, it also saves time and money and solves some important problems.

    6

  • 7/31/2019 Java Software Platform

    7/247

  • 7/31/2019 Java Software Platform

    8/24

    JDK 1.0 (January 23, 1996)(JAVA DEVELOPMENT KIT).

    JDK 1.1 (February 19, 1997): Java was largely beingimproved and purified for specific programmability on a computer. Hadearned acceptance in the Internet market.

    J2SE 1.2 )(Java Platform, Standard Edition)(December 8, 1998): Java version 1.2 was by far the mostreadily, robust, and stable version of Java and was one the mainreasons for the success of the Java technology.

    J2SE 1.3 (May 8, 2000).

    J2SE 1.4 (February 6, 2002).

    J2SE 5.0 (September 30, 2004) With Java like languages

    being built by competitors, Java had to reinvent itself completely (notjust the brand, but the internal workings of its compiler and the JVM) torender it faster than alternatives (Java Development Path. 2012.).

    Java SE 6 (December 11, 2006): Involving morecustomers and developers into the development for the focus on both,the brand and the platform, and support for the JAX- WS web servicesstack.

    Java SE 7 (July 28, 2011).

    javacodespot.blogspot.com/p/java-history.html8

    http://javacodespot.blogspot.com/p/java-history.htmlhttp://javacodespot.blogspot.com/p/java-history.htmlhttp://javacodespot.blogspot.com/p/java-history.htmlhttp://javacodespot.blogspot.com/p/java-history.html
  • 7/31/2019 Java Software Platform

    9/249

  • 7/31/2019 Java Software Platform

    10/24

    JAVAARCHITECTU

    RE

    Language

    JVM

    JAVA API

    Class File

    10

  • 7/31/2019 Java Software Platform

    11/24

    JAVA

    ARCHITECTURE

    Java VirtualMachine (JVM)

    Its a machine on whichall Java programs run

    It converts Javabytecode into machinelanguage and executesit.

    Found on any Javaplatform.

    Java Class File

    It can run on anyplatform and OS thathas JVM

    Contains everythingJVM needs to knowabout one Java classfile or interface

    Function: it helpsmake Java suitablefor networks

    Java Language

    Excellent language for developing network-based applicationsPromotes the re-use of code resulting in better productivity fordevelopers

    Java API

    Core functionality of the programming languageOffers a set of classes and interfaces that comes with the JDKFunction: Provides a standard way to access functionalities contained within a code library.11

  • 7/31/2019 Java Software Platform

    12/24

    JAVA PLATFORMS PERSONALUSE

    Java Standard Edition (Java SE)

    Includes classes that support thedevelopment of Java web services

    Provides the foundation for Java

    EE

    Java applications that are foundon desktops, servers and real timeenvironments

    Java SE 7 is the current version

    Java Micro Edition (JavaME)

    Has a flexible user interface,security model.

    Environment for mobile andembedded devices (mobilephones, PDAs)

    Currently running on over 3billion phones and counting.

    12

  • 7/31/2019 Java Software Platform

    13/24

    JAVA PLATFORMS BUSINESS USE

    JavaFX Platform

    Easy creation and deployment ofRIA written in JavaFX Script

    Serve as clients to Java EEplatform

    Java Enterprise Edition (Java

    EE)

    It helps in developing anddeploying portable, robust, scalable,and secure server-side Java

    applications.

    Offers a set of classes andinterfaces that comes with the JDK

    Provides web services and APIsfor implementing Web 2.0

    applications.

    13

  • 7/31/2019 Java Software Platform

    14/24

    14

  • 7/31/2019 Java Software Platform

    15/24

    Object-oriented: allows to create modular programs and reuse code(write once, run anywhere)

    Platform-independent: compatible with any software, hardware andOS

    Secure: e.g safe to allow 3rd party application to run on mobiledevices

    Robust: reliable

    Multithreaded: perform several tasks

    simultaneously

    15

  • 7/31/2019 Java Software Platform

    16/24

    Performance: perceived to be slow andmemory consuming

    Software maintenance and Update systemnot automated unless program initiated, thisoften leaves Java for private users with

    security issues.

    Not enough applications: lack of effectivebusiness model

    Competition: Symbian OS and Linux

    16

  • 7/31/2019 Java Software Platform

    17/24

    17

  • 7/31/2019 Java Software Platform

    18/24

    Mobile phone is the only tool poor

    have to communicate with outsideworld.

    The ability of Java to run on low costmobile phones made it possible toshare the benefit of ICTs with them.

    Masawa a Java Application Marketmade it possible to use Java basedapplication for development.

    Video Source: http://masawa.org

    APPLICATION OF JAVA FOR DEVELOPMENT

    18

  • 7/31/2019 Java Software Platform

    19/24

    19

  • 7/31/2019 Java Software Platform

    20/24

    20

  • 7/31/2019 Java Software Platform

    21/24

    Java has a standardised Run-timeenvironment allowing for

    standardised development

    This makes it attractive to theopen-source developer.

    Recent increase in mobile users

    has shifted focus of Java ontomobile code.

    New development of mobilefocused projects such as Masawasocially beneficial.

    The Java Market

    100+ different hardware platformssupported million Java desktop installations

    2 million additional downloads per day Used by all of the Fortune 100 companies 5.5 billion Java cards

    2.6 billion Java-enabled cell phones 250 partner cell phone carriers 100,000+ Java ME applications

    40 million TVs and Blu-ray players

    (taken from http://drdobbs.com/jvm/223101669?pgno=1 )

    MOBILE APPLICATIONS

    Example of Samsung mobile Java platformhome screen, with application icons

    21

    http://drdobbs.com/jvm/223101669?pgno=1http://drdobbs.com/jvm/223101669?pgno=1http://drdobbs.com/jvm/223101669?pgno=1http://drdobbs.com/jvm/223101669?pgno=1http://drdobbs.com/jvm/223101669?pgno=1
  • 7/31/2019 Java Software Platform

    22/24

    Java has long been integrated

    within GIS.

    Much of the software designedfor GIScience Applications arewritten in a language compatiblewith the Java platform.

    Most notably, python, which isintegrated into the largest of theGIScience software suites ERSIArcInfo.

    ArcIMS is a spatial mapping

    platform that is combined withAFIRS (automated featureinformation retrieval system)

    An example of mobileimplementation is in the USA

    where they have introduced agovernment scheme to educatefarmers about irrigationresponses and cropmanagement.

    GEOGRAPHIC INFORMATION SYSTEMS

    22

  • 7/31/2019 Java Software Platform

    23/24

    Recently Sun Microsystems was

    acquired by Oracle Corporation

    The Oracle corporations history is

    mainly focused on Enterprise Softwareand database management systems.

    Since ownership change, Oracle hasdiscontinued OpenSolaris, an opensource operating system, andStarOffice

    Javas focus on open-sourcedevelopment made it a popular choice inEducational institutions in the past.

    Institutions may prefer to use other

    platforms such as HTML 5, which havelarge focus on client-orientateddevelopment structures such as ApplesAppStore.

    Other predictions about Javas futureinclude the divergence into Enterprisesoftware systems and integration withinoracles existing database products

    ORACLE ACQUISITION

    Oracle has also filed a lawsuit againstGoogle concerning patents it acquiredfrom Sun Microsystems fordevelopment of their Android Mobile

    device operating System.23

  • 7/31/2019 Java Software Platform

    24/24

    Thank you for listening.

    Any Questions?

    24