Java overview 20131022

Uploaded on

Java …

This slide is a shot overview to Java from start up to now. Where we were? Where we are? Where we’re going? Know how. Was hold in Lindholmen October, 2013

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Java > where we were? > where we are? > where we’re going? & know how
  • 2. About me: Java developer since 1995 CEO Solid Beans AB CEO Matchup AB Java Instructor for PrimeFaces Nordic agent Event organizer jDays Event organizer Android Forum Göteborg
  • 3. Where we were? In June 1991: James Gosling starts working on an interpreter (called "Oak"), which, several years later is renamed "Java." Source File Compiler Executable File
  • 4. Where we were? In August 1991: - A small group of Sun engineers called the "Green Team“, led by James Gosling, demonstrates basic user interface ideas and graphics system to Suns co-founders - They believed that the next wave in computing was the union of digital consumer devices and computers
  • 5. Where we were? From 1991 to 1995: Events & evolution such as: - Mosaic 1.0, the first graphical browser for the Internet, is released - Interactive Cable TV - Java compiler in Java has been implemented (James had previously implemented it in C) - Java compatible browsers (Netscape)
  • 6. Where we were? From 1991 to 1995: This concept was too much advanced for the industry at the time BUT it was just right for the Internet, which was just starting to take off. In 1995, the team announced that the Netscape Navigator Internet browser would integrate with Java technology.
  • 7. Where we were? So: - The first programming language was created, a cross-platform computing environment NOT tied to any particular operating system or microprocessor! - Applications written in Java will run anywhere - Eliminating incompatibility between operating systems and versions of operating systems.
  • 8. Where we were? Java Iterpreter Java Virtual Machine Compiler Operating System Interpreter Windows Interpreter Unix Interpreter MacOS
  • 9. Where we were? Java Technology consists of: - Java Language: used to develop software for mobile devices, browser-run applets, games, desktop, enterprise (server-side), and scientific applications - Java Platform: consists of Java Virtual Machine (JVM) responsible for hardware abstraction - Java Tools: like java compiler
  • 10. Where we were? Java Development Kit 1.0 was released on January 23, 1996 JDK API
  • 11. Where we were? JDK releases: - 1995 Alpha & Beta - 1996 JDK 1.0 > Basic support for AWT - 1997 JDK 1.1 > JavaBeans, RMI, AWT, JDBC, servlets, JNDI, EJB - 1998 Java 1.2 > Reflection, Swing, Java Collections Framework, plug-in, … Becomes known as Java 2, Port to Linux.
  • 12. Where we were? - 1999 XML support, JavaServer Pages, Java Editions (J2ME, J2SE, J2EE) … - 2000 J2SE 1.3 RMI/CORBA, JavaSound, … - 2002 J2SE 1.4 … - 2004 J2SE 5 New languages futures, @ … - 2006 Java SE 6 - 2011 Java SE 7 - 2014/01/23 Java SE 8 Final Release Candidate
  • 13. Where we are? - 9 Million Java Developers Worldwide - #1 Choice for Developers - #1 Development Platform - 3 Billion Mobile Phones Run Java - 100 Percent of Blu-ray Disc Players Ship with Java - 97 Percent of Enterprise Desktops Run Java - 5 Billion Java Cards in use - 7 Billion Java Cards sold - 89% of desktops run java - 125 million TV devices run java Source: JavaOne 2013 Strategy Keynote
  • 14. Where we are? Also Many embedded devices are based on Java: set-top boxes, printers, web cams, games, car navigation systems, lottery terminals, medical devices, parking payment stations, etc
  • 15. Where we are? - Java is not a new programming language any more. - From early 1995 until now we have seen how it has developed from a JDK (Java Development Kit) to Java EE (Enterprise Edition) and new Java Open Source frameworks and technologies. - At the beginning, Java was about a few packages and APIs you could use to solve small problems. But, what about now, when Java has branched out into several technologies and Open Source frameworks?
  • 16. Where we are? There are four Java Platforms: 1) Java Standard Edition (Java SE) 2) Java Enterprise Edition (Java EE) 3) Java Micro Edition (Java ME) 4) JavaFX ME SE EE JavaFX
  • 17. Where we are?
  • 18. Where we are? Java SE
  • 19. Where we are? Java EE Built on top of the Java SE platform, for developing and running large-scale, multi-tiered, scalable, reliable, and secure network applications
  • 20. Where we are? Java ME - APIs & small virtual machine for running java programming language applications on small devices, like mobile phones. - A subset of the JavaSE API - Java ME applications are often clients of Java EE platform services
  • 21. Where we are? Java FX: a platform for creating rich internet applications using a lightweight user-interface API
  • 22. Where we’re going? Open Source Many APIs & tools o o o o o o o o o o o o o o o o o o Ajax AOP Bloggers Build system Business Intelligent ByteCode Libraries CMS (Content Management System) Cache Solutions Charting & Reporting Tools Chat servers Code analyzer Code Coverage Tools Collection Libraries Command line interpreters Database Connection Pools ERP & CRM Software Eclipse plugins Expressions language Spring Primefaces Hibernate ... OPEN SOURCE
  • 23. Where we’re going? Open Source Many APIs & tools o o o o o o o o o o o o o o o o o o Financial Software Forum Software HTML parsers IDEs Tracking software JEE frameworks JDBC drivers JMS JMX tools scheduler Localization & Internationalization Tools Logging tools Mail clients Network clients/servers NoSQL Databases PDF Libraries Parser Generators Persistence Frameworks Portals
  • 24. Where we’re going? Open Source Many APIs & tools o o o o o o o o o o o o Project management tools SQL clients Scripting Languages Search engine Security & Cryptography tools Control Tools Swing Frameworks & Components Template Engines Testing tools Text processing UML & Modeling Validation frameworks o Web frameworks o o o o o o o Web mail clients Web servers Web services tools Web testing tools Wiki engines XML parser XML UI Toolkits o o o o o o o ... .... ...... ........ .......... ........... ............
  • 25. Where we’re going? Open Source Many APIs & tools Open Source Web frameworks Struts JPublish Turbine Jucas Tapestry MyFaces WebWork (Struts 2) WebOnSwing Cocoon VRaptor Spring MVC IceFaces (JSF library) Maverick RichFaces (JSF library) Echo PrimeFaces (JSF library) Play! Swinglets SOFIA Wicket Verge Swingweb
  • 26. Where we’re going? Open Source Many APIs & tools Open Source Web frameworks Trimpath Junction Brill Macaw jZeno Makumba ztemplates Calyxo Aranea Web Framework RIFE Google Web Toolkit DWR Hamlets JOSSO Aurora JAT ThinWire OpenXava Pustefix Click RSF Stripes Roma Meta Framework
  • 27. Where we’re going? Open Source Many APIs & tools Open Source Web frameworks Mentawai wingS fleXive Helma jWic Vaadin Flower framework Wro4j Vroom Anvil Induction Japple Sombrero ... AribaWeb JVx Pandora SK
  • 28. Where we’re going? Open Source New languages build on JVM
  • 29. Where we’re going? Open Source New languages build on JVM Why Scala over Java: - Increased productivity due to reduced verbosity - Developers can mix and match imperative and functional programming paradigms as needed - Built-in functionality for parallelism and concurrency
  • 30. Where we’re going? Open Source New languages build on JVM
  • 31. Where we’re going? Open Source New languages build on JVM
  • 32. Opportunity or concerns Now, we have a problem to solve: “there are too many choices” How do we select now? - Opportunity? - Concern?
  • 33. SW Engineering Many factors are involved in SW engineering!
  • 34. Know how! - Usability: focusing on end users - Focusing on problems: not technologies, tools and platforms, select the easiest ones - Be realistic: obtainable competence - Make a list of what is important for your Software lifecycle. Identify/prioritize them & then select - You can change your mind: most of your technology choices can change
  • 35. Know how! - Easy & Quick: select a SW that you know to be easier and quicker to prototype. - Standard vs. Open Source: check the open source products licenses. Open Source != Free Software - Start with capabilities, not implementations - Cost: consider the total cost - Involve your team early - Testing and deployment: software that makes testing difficult should be avoided
  • 36. Know how! - Avoid Lock-in: e.g. if SW has limitation, runs on a certain Operative System or environment - New versus existing software: reuse
  • 37. Thank you for listening More Java? visit November, 26-27, Gothenburg