JAVA1 H 1. KENNISMAKING MET JAVA EN DE ONTWIKKELOMGEVINGEN 1. ONTSTAANSGESCHIEDENIS VAN JAVA Java: ontworpen in 1990 door Sun Microsystems voor de programmering van electronische apparatuur. Voor 1995 had bijna niemand ervan gehoord.
JAVA2 H 1. KENNISMAKING MET JAVA EN DE ONTWIKKELOMGEVINGEN 1. ONTSTAANSGESCHIEDENIS VAN JAVA (vervolg) Java (OAK) is in 1990 ontworpen voor de programmering van allerlei intelligente elektronische gebruikersapparatuur. Elektronische apparatuur bevat chips. Een chip kan -> gegevens onthouden -> een reeks van instructies automatisch uitvoeren = programma Een programma wordt uitgevoerd door een andere chip, de processor. Probleem : begrijpt enkel zijn eigen specifieke machinecode! -> onleesbaar voor de mens (0 en 1)
JAVA3 H 1. KENNISMAKING MET JAVA EN DE ONTWIKKELOMGEVINGEN 1. ONTSTAANSGESCHIEDENIS VAN JAVA (vervolg) Oplossing: programma schrijven in een hogere programmeertaal (Cobol, Java, Pascal,…) -> een compiler (vertaler) zal het programma omzetten naar een specifieke machinecode Probleem: het programma is platformafhankelijk (= combinatie van een bepaald type processor met een bepaald besturingssysteem)
JAVA4 H 1. KENNISMAKING MET JAVA EN DE ONTWIKKELOMGEVINGEN 1. ONTSTAANSGESCHIEDENIS VAN JAVA (vervolg) Oplossing: Java 1. Elk Java-programma wordt door een compiler vertaald naar een soort TUSSENTAAL (=JAVA-bytecode), die betrekkelijk dicht tegen machinecode aanleunt. 2. De tussentaal wordt begrijpelijk gemaakt voor een specifieke processor, door deze van een programma te voorzien (=JAVA VIRTUAL MACHINE). Een JVM is een tamelijk klein programma (256 Kb), vermits het vertalen niet zo’n grote klus is. JAVA is platformonafhankelijk!
JAVA5 2. APPLICATIE EN APPLET 2.1 Er bestaan twee soorten Java-programma’s: Applicatie: cfr. programma’s in C++ (vb. Word, tekenprogramma,…) wordt bewaard en uitgevoerd op lokale PC uitvoerbaar mits JVM, geen webbrowser nodig kan bestanden op schijf maken, lezen en verwijderen
JAVA6 2. APPLICATIE EN APPLET 2.1 Er bestaan twee soorten Java-programma’s: Applet: maakt deel uit van een webpagina en zorgt voor de interactiviteit van de pagina -> wordt meestal bewaard op een PC op afstand uitvoerbaar mits webbrowser ( + JVM) of applet-viewer geen bestandsverwerking mogelijk
JAVA7 2.2 APPLICATIE - voorbeeld import java.lang.*; public class Som extends Object { public static void main( String[] args) { int x = 2, y = 3, som; som = x * x + y * y; System.out.println("Som = "+ som); try { Thread.currentThread().sleep(5000); } catch (InterruptedException e) {}; }
JAVA8 UITVOERING APPLICATIE
JAVA9 2.3 APPLET - voorbeeld import java.applet.*; import java.awt.*; public class Applet1 extends Applet { private Font f = new Font(“TimesRoman”,Font.BOLD,36); public void paint(Graphics g) {g.setFont(f); g.setColor(Color.red); g.drawString(“Een bijzonder eenvoudige applet”,20,150); }
JAVA10 UITVOERING APPLET
JAVA11 Java-programma (Som.java) Compilatie Java byte-code (Som.class) Internet Java byte-code (Som.class) verwerking interpreter 2.4 DE 5 FASEN-APPLICATIE compiler verificatie Schematisch:
JAVA12 DE 5 FASEN-APPLICATIE 1.Met een editor het java-programma intypen en bewaren met extensie.java -> Som.java 2.Het programma compileren met het commando javac. Het resultaat is een file met extensie.class (= bytecode). -> javac Som.java geeft Som.class 3.Het programma (de.class-file) wordt geladen in het geheugen. 4.Wanneer het programma klassen van het net download, wordt de bytecode geverifieerd. 5. Het programma wordt uitgevoerd, door gebruik te maken van de Java-vertaler, via het commando java -> java Som
JAVA13 Computer die bezocht wordt Java-programma (Applet1.java) Compilatie Java byte-code (Applet1.class) Internet Schematisch: Java byte-code Applet1.class verwerking Browser omgeving interpreter Java virtuele machine verificatie Uw computer 2.5 DE 5 FASEN - APPLET compiler
JAVA14 DE 5 FASEN-APPLET 1.Met een editor de java-applet intypen en bewaren met extensie.java -> Applet1.java 2.De applet compileren met het commando javac. Het resultaat is een file met extensie.class (= bytecode). -> javac Applet1.java geeft Applet1.class 3.De applet (de class-file) bevindt zich normaal op een computer op afstand en gebruikers hebben er toegang tot via het World Wide Web. Een HTML - document verwijst naar een Java-applet (zie p.11) en deze wordt vervolgens gedownload op uw eigen PC. De applet wordt uit dezelfde directory gehaald als waar de HTML-file in zit. De meeste browsers ondersteunen echter JAVA 2 niet!
JAVA15 DE 5 FASEN-APPLET (vervolg) 4.Voor de applet wordt uitgevoerd, wordt de bytecode geverifieerd. 5.De applet wordt uitgevoerd, door de vertaler die in de browser ingebouwd moet zijn of vanaf de commando-lijn met de zgn. appletviewer = applet container: -> appletviewer Applet1.html De appletviewer is een minimale browser, die enkel de referentie naar de applet kan interpreteren ( - en -tag) en de rest van het HTML-document negeert!
JAVA16 Invoer <APPLET CODE= “Applet1.class” WIDTH=426 HEIGHT=266> HTML-CODE : Applet1.html
JAVA HET JAVA PLATFORM Java API Applet1.class Java Virtual Machine Operating system + Hardware
JAVA18 3. ONTWERPDOELEN (1) JAVA is eenvoudiger dan C++ heeft een automatische garbage collection is klein is object georiënteerd is betrouwbaar
JAVA19 JAVA is veilig is architectuurneutraal is portable heeft een goede performance is multithreaded ONTWERPDOELEN (2)
JAVA20 4. WAT HEB JE NODIG ? o een editor, bijv. Notepad of Wordpad o een compiler oeen JVM o een browser of applet-viewer Compiler + JVM = JAVA DEVELOPMENT KIT (JDK) of JAVA 2 Software Development Kit (Java 2 SDK) ( Sinds 1995 zijn er verschillende versies van JDK verschenen: versie 1.0, versie 1.1, versie 1.2, versie 1.3, versie 1.4 Elke versie kan weer subversies hebben. De versies vanaf versie 1.2 worden ook aangeduid met het Java 2 platform.
JAVA21 4. WAT HEB JE NODIG ? (vervolg) Bouwen we een volledige omgeving rond de programmeertaal, zodat de ontwikkelingstijd nodig voor het schrijven van een programma sterk wordt gereduceerd, dan verkrijgen we een zogenaamde geïntegreerde ontwikkelomgeving, Integrated Development Environment of IDE. Veel gebruikte IDE: Jbuilder 3 ( Forte ( Visual Cafe 3 van Symantec, ….