Forelesning inf1000 - Java 1



Like dokumenter
Forelesning inf Java 1

Forelesning inf Java 1

som jobbet nærmest døgnet rundt i 18 måneder i Menlo Park i California for å forberede den neste bølgen innen computing.

Litt Java-historikk. Litt Java-historikk. Ulike varianter for ulike behov. Litt Java-historikk. The Green Team

INF1000 : Forelesning 1 (del 2)

Java. INF1000 : Forelesning 2. Ulike varianter for ulike behov. Java Standard Edition (Java SE) Java:

Hvordan installere Java og easyio på Windows

Hvordan laste ned og installere Java på Windowsplattformen

Oversikt. Informatikk. INF1000: Grunnkurs i objektorientert programmering. Utenom INF1000 Informasjon & hjelp

Tre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm

Kom i gang med programmering i Java

i=0 Repetisjon: arrayer Forelesning inf Java 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker 0*0 0*2 0*3 0*1 0*4

Forelesning inf Java 4

Oversikt. INF1000 Uke 1 time 2. Repetisjon - Introduksjon. Repetisjon - Program

INF1000 : Forelesning 4

i=0 i=1 Repetisjon: nesting av løkker INF1000 : Forelesning 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker j=0 j=1 j=2 j=3 j=4

Installere JBuilder Foundation i Windows XP

Litt mer om uttrykk: ++ og -- INF1000 : Forelesning 4. Oppgave. Blokker. 0 udefinert udefinert. Alternativ 2 Postfiks-operator

Java 3. Litt om Java-teknologien. Fortsette innføringen i språket Java Idag: variable, uttrykk, lese fra terminal, forgreninger. 31.

Java. Java 3. Ulike varianter for ulike behov

Forelesning inf Java 5

Forelesning inf Java 5

Kort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon

2 Om statiske variable/konstanter og statiske metoder.

Litt administrativt. Informatikk studiet og INF1000. Etter denne forelesningen skal du. INF1000: Grunnkurs i objektorientert programmering

Installere JBuilder Foundation i Mandrake Linux 10.0

Fra Python til Java, del 2

Ukeoppgaver 1: 30. aug 3. sep (INF Høst 2010)

Hvordan oppdatere Java.

Kort repetisjon av doble (nestede) løkker Mer om 1D-arrayer Introduksjon til 2D-arrayer Metoder

for (int i=0; i<3; i++) { for (int j=0; j<5; j++) { System.out.print(i*j); System.out.println();

1. NetBeans IDE: Lage en enkel mobilapplikasjon

LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke September 2012 Siri Moe Jensen EKSEMPLER

Body Mass Index (BMI) INF1000 : Forelesning 3. Ferdig program (forts.) Ferdig program

Kapittel 1: Datamaskiner og programmeringsspråk

Installasjon av Nett-TV-meter Trinn for trinn

4. Installasjonsveiledning. Experior - rich test editor for FitNesse -

INF1000 : Forelesning 3

Eksempel: Body Mass Index (BMI) Forelesning inf Java 3. Ferdig program (første del) Ferdig program (siste del)

Java 4. Mer om easyio Mer om forgreninger Løkker. 7. september 2004

Oversikt. INF1000 Uke 2. Repetisjon - Program. Repetisjon - Introduksjon

Skriv ordbøker og litteratur på Tegnspråk med en nett-tjener i lommeformat! For ivrige Tegnskrift (SignWriting )- brukere!

INF 1000 høsten 2011 Uke september

INF1000 undervisningen INF 1000 høsten 2011 Uke september

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

INF1000 (Uke 5) Mer om løkker, arrayer og metoder

Fra Python til Java. En introduksjon til programmeringsspråkenes verden. Dag Langmyhr

Læringsmål og pensum. v=nkiu9yen5nc

Praktisk informasjon. Repetisjon: While-løkker. I dag. INF1000 (Uke 5) Mer om løkker, arrayer og metoder. Oblig 2 er lagt ut

I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker. Tre måter å lese fra terminal. Tre måter å lese fra terminal.

Velkomment til å installere BAS21

Brukerveiledning digital eksamen via WISEflow

Velkommen til. INF våren 2016

Forkurs INF1010. Dag 1. Andreas Færøvig Olsen Tuva Kristine Thoresen

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000

Løsningsforslag ukeoppg. 2: 31. aug - 6. sep (INF Høst 2011)

Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang

Kom i gang med Python

Bruk av class Scanner, FileWriter og Formatter som alternativ til EasyIO i INF1000.

Introduksjon til dataanlegget ved Institutt for informatikk. Marc Bezem Institutt for informatikk Universitetet i Bergen

Installasjonsveiledning Oppgradering av tidligere versjon

Brukerveiledning for identifisering med BankID

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl

Øving 0 - Xcode TDT4102

Ole Christian Lingjærde, 12. september 2013

IN1010. Fra Python til Java. En introduksjon til programmeringsspråkenes verden Dag Langmyhr

Forelesning inf Java 4

Avinstallere Java: Windows 7 og eldre versjoner

Kom i gang med. Kreativitet Programmering Gøy

Enkle generiske klasser i Java

Leksjon 2. Setninger og uttrykk

Leksjon 2. Setninger og uttrykk

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000

Dagens forelesning. Java 13. Rollefordeling (variant 1) Rollefordeling (variant 2) Design av større programmer : fordeling av roller.

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

Brukerveiledning digital eksamen i FLOWlock

Kapittel 1. Datamaskiner og programmeringsspråk. 1.1 Programmering

Eksamen med begrenset Internett-tilgang

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python

Repetisjon: operatorene ++ og -- Java 5. Nøtt. Oppgave 1 (fra forrige gang) 0 udefinert udefinert. Alternativ 1 Prefiks-operator

Denne brukerguiden beskriver hvordan man går frem for å spille simuleringen Hjørne pushback på web.

I dag skal vi se på. INF 1000 (uke 2) Variabler, tilordninger og uttrykk. Gruppene starter denne uken! Klart for første oblig

INF1000 (Uke 4) Mer om forgreninger, While-løkker

Kort om kursene IN1900, MAT-IN1105, IN-KJM1900

Kapittel 1: Datamaskiner og programmeringsspråk

INF1000 Eksamensforberedelser og -tips. Høst 2014 Siri Moe Jensen

Brukerveiledning digital eksamen via FLOWlock

I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker. Tre måter å lese fra terminal. Repetisjon. Mer om forgrening While-løkker

Dagens tema Kapittel 8: Objekter og klasser

INF1000 EKSTRATILBUD. Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen

Eksempel: Body Mass Index (BMI)

Brukerveiledning digital eksamen via FLOWlock

OPPGAVESETT 1 INTRO. Delta på andre forelesning i emnet, der hovedkomponentene til datamaskinen blir introdusert. Ta notater!

Hurtiginnføring PC, Mac og Android

INF1000: Forelesning 11. Oppgave 2. Oppgave 1. Husk å melde deg på prøveeksamen i INF1000! Ole Christian Lingjærde 7.november 2006

Velkommen som ny bruker av Uni Økonomi!

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet

Brukerhåndbok Nett-TV-meter

Transkript:

Litt Java-historikk Forelesning inf1000 - Java 1 Tema: Javas historie Bestanddelene i et Java-program Programvariabler Ole Christian Lingjærde, 22. august 2012 The Green Team I 1991 opprettet Sun Microsystems en arbeidsgruppe som jobbet nærmest døgnet rundt i 18 måneder i Menlo Park i California for å forberede den neste bølgen innen computing. Resultat: Programmeringsspråket Oak En demo for en interaktiv fjernkontroll for hjemmeunderholdningsssystemer. Poenget var å vise hvordan man kunne styre digitale "dingser" som spillkonsoll, digital kabel-tv (video on demand), osv. Ideen ble ingen suksess. Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 James Gosling 2 Litt Java-historikk Litt Java-historikk Framveksten av Internett Rundt midten av 90-tallet kom Internett for fullt, og Java-teamet brukte Oak-teknologien til å lage en nettleser i 1994 som de kalte WebRunner (etter filmen Blade Runner). Nettleseren ble senere omdøpt til HotJava. Første nettleser med dynamisk innhold og animasjon. Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 3 Java 1.0 Ble annonsert i 1995. Med Java menes: Et programmeringsspråk En programpakke (JDK) som må være installert på maskinen din før du kan utvikle/kjøre Java-programmer. Java er gratis og siste versjon kan til enhver tid lastes ned fra javasoft.com. Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 4

Ulike varianter for ulike behov Java Standard Edition (Java SE) To sentrale begreper: Java Runtime Environment (JRE) System for å kjøre kompilerte Javaprogrammer. Java Card Java Embedded Java for Mobile Devices Java SE Standard Edition Java EE Enterprise Edition Java Development Kit (JDK) JRE + system for å utvikle Java- programmer (kompilere, feilsøke, dokumentere, m.m.) INF 1000 I tillegg til dette kan man legge til egne pakker som gir økt funksjonalitet. I INF1000 brukes det en slik pakke, med navn easyio. Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 5 Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 6 Installasjon av Java på egen maskin Kompilere, kjøre For å installere Java på egen maskin: TRINN 1: Installere Java SE Development Kit Se følgende nettsted: http://www.mn.uio.no/ifi/tjenester/it/hjelp/startpakke/ På siden finner du egen lenke til programvare for INF1000. Merk: Java følger med Mac OS X. TRINN 2: Installere INF1000-pakken easyio Tilleggsfunksjonalitet som benyttes i undervisningen. Kan hentes fra samme nettsted som ovenfor. MittProgram.java Programfil (lages av deg i en teksteditor) javac MittProgram.java KOMPILERE MittProgram.class Kompilert program ("class-fil") java MittProgram KJØRE (EKSEKVERE) For mer om easyio, les appendiks A i læreboka Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 7 Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 8

Kompilere og kjøre i Linux, Windows, Mac OS X 1. Åpne et terminalvindu/kommandovindu 2. Endre filområde (directory) til der programfilen ligger 3. Kompiler med javac MittProgram.java 4. Kjør med java MittProgram Alle programmer må starte med class (det kan stå public foran) Bestanddelene i et Java-program Dette er s navn og kan velges fritt av oss class MittProgram { int u; u = 2; Her starter innmaten i Forteller at er kjørbart Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 9 Her slutter innmaten i Her er instruksjonene i Mer om denne linjen senere - men merk at vi alltid trenger den Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 10 Eksempel: Utskrift på skjerm Program som produserer utskrift i kommandovinduet: Her kommer utskriften i et eget vindu: Eksempel 2: Utskrift på skjerm class MittProgram { System.out.println("Velkommen til UiO"); System.out.print("og velkommen til "); System.out.println("INF 1000"); Test import javax.swing.*; class MittProgram2 { JOptionPane.showMessageDialog(null, "Velkommen til UiO"); Test Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 11 Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 12

Merk Variabler (minneplasser) Vi kan reservere plass i datamaskinens hukommelse til et heltall: Instruksjoner i Java følger en presis syntaks. Spesielt interesserte kan finne Java Language Specification her (dette er ikke pensum): http://docs.oracle.com/javase/specs/ Trykkfeil (f.eks. at det står clas i stedet for class) vil gjøre at instruksjonen ikke blir forstått, eller (verre) at den gjør noe annet enn det som var intensjonen. sett av plass til et heltall (engelsk: integer) gi plassen navnet "lengde" Vi kan fylle plassen (= variabelen) med en verdi: lengde = 14; slutt på instruksjonen leses "settes lik" eller "gis verdien" Vi kan senere avlese/bruke verdien: int svar; svar = lengde * 2; Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 13 Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 14 Variabler Variabel-deklarasjoner Etter at vi har reservert plass i minnet til en variabel, f.eks. slik: så kan vi endre verdien til variabelen så mange ganger vi vil, f.eks.: lengde = 14; lengde = 434; lengde = lengde + 2; lengde = lengde; Hva skjer egentlig når vi skriver lengde = lengde + 2;? I detalj: 1. Verdien som ligger i variabelen lengde hentes fram (f.eks. 434) 2. En ny verdi regnes ut ved å legge til 2 (434 + 2 = 436) 3. Variabelen lengde gis den nye verdien (436) Instruksjoner av typen int alder; int vekt; int personnummer; kalles variabel-deklarasjoner. Vi kunne erstattet de tre instruksjonene ovenfor med: int alder, vekt, personnummer; (NB: komma mellom variablene) Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 15 Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 16

Variabeldeklarasjoner Neste gang Variable kan deklareres hvor som helst i et program, og de kan endres hvor som helst etter at de er deklarert. Variable har ingen verdi rett etter en deklarasjon: lengde = lengde + 1; // Ulovlig! Vi kan gi variable en verdi når vi deklarerer dem: int lengde = 4; lengde = lengde + 1; // Lovlig Vi kan også vente med å gi en variabel verdi:... lengde = 4; lengde = lengde + 1; // Lovlig Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 17 Mer om programvariable og beregningsuttrykk Forgreninger i programmer (if-else) Litt Input/Output (I/O) Fram til da: Gjør deg kjent med kurssidene Husk frivillig mini-forkurs nå på torsdag/fredag Studiestragegikurs torsdag 14.15-16.00 Obligatoriske gruppetimer starter mandag/tirsdag Les pensum FØR forelesningen Ole Chr. Lingjærde Institutt for informatikk 22. august 2012 18