6108 Programmering i Java Leksjon 1 Introduksjon til programmering og til Java Hva er programmering? 1. Hva er et program? 2. Hva skal programmeres? 3. Hva er en programmerer? Programmering i Java - Leksjon 1 2 1
1. Hva er et program? Program Et (data)program er en oppskrift til en datamaskin. Dvs. et sett av instruksjoner som detaljert beskriver hvordan en oppgave skal utføres av datamaskinen. Eksempel på dagligdagse program : Matoppskrift Monteringsanvisning Strikkeoppskrift Partitur Programmering i Java - Leksjon 1 3 1. Hva er et program? Tilbake Programmering i Java - Leksjon 1 4 2
1. Hva er et program? Eksempel: Hva foregår her tro? Programmering i Java - Leksjon 1 5 1. Hva er et program? Eksempel: Hva foregår her tro? Programmering i Java - Leksjon 1 6 3
1. Hva er et program? Fra ide til resultat, via program og maskin Programmering i Java - Leksjon 1 7 Hva skal programmeres? 2. Hva skal programmeres? Oppgaver som man ønsker utført/løst ved bruk av en maskin. For eksempel: Omregning mellom utenlandsk valuta og norske kroner Holde orden på adresser/kontakter Søke etter spesifikk informasjon Kjøp og salg via nettsider Utarbeide værvarsel Drifte en datamaskin (operativsystem) Programmering i Java - Leksjon 1 8 4
Prinsippskisse: Datamaskin 2. Hva skal programmeres? Programmering i Java - Leksjon 1 9 2. Hva skal programmeres? Programmering i Java - Leksjon 1 10 5
2. Hva skal programmeres? ENIAC Programmering i Java - Leksjon 1 11 3. Hva er en programmerer? Person som kan programmeringsspråk modellere kommunisere kvalitetssikre effektivisere Kvinne? Verdens første programmerer var lady Ada Byron, 1815 52 Programmering i Java - Leksjon 1 12 6
Hvordan kan maskiner utføre program? Hvordan utforme instrukssjonssett (program)? Problemløsning, språk, skrivesaker Hvordan gjøres program tilgjengelig for maskin? Tekstbehandler og Java verktøy (Sublime og JDK) Hvordan kommuniserer program under utførelse? Brukerdialog inndata/utdata, grafikk, filer, etc. Programmering i Java - Leksjon 1 13 (Programmerings ) språk Syntaks Ordforråd og grammatikk (regler for setningsbygging) Se oversikt over Java ord Semantikk Meningsinnholdet i setningene Pragmatikk Bruken av språket (elegant, effektivt, situasjonstilpasset, etc.) Hvilke programmeringsspråk har dere hørt om? Programmeringsspråk Programmering i Java - Leksjon 1 14 7
Lukk opp vinduet! Programmeringsspråk Typisk setning: Imperativ / Kommando Tilbake Programmering i Java - Leksjon 1 15 Pragmatikk Pragma er gresk og betyr sak. Pragmatikk er læren om hvordan vi velger å bruke språket, alt etter sak eller situasjon. Vi kommuniserer best (i forhold til hva vi ønsker å oppnå) hvis vi vet når vi skal snakke, hva vi skal si, og hvordan vi skal si det. Hvis vi vil ha noen til å lukke et vindu for oss, har vi mange uttrykksmåter å velge blant. Den mest direkte er å bruke imperativ: "Lukk vinduet!" Imperativ er ikke effektiv i alle situasjoner. Vi kan være litt mindre direkte: "Kan du lukke vinduet?" På tross av spørsmålsformen håper vi ikke bare på et "ja" til svar. Vi håper på handling: Lukking av vinduet. "Så kaldt det er her!", er enda en måte å be noen om å lukke vinduet. Vel å merke hvis det er kaldt ute. Tilbake Programmering i Java - Leksjon 1 16 8
Programmeringsspråk Se side 403 Tilbake Programmering i Java - Leksjon 1 17 Programmeringsspråk Fra Simula Alle objektorienterte språks mor: Norsk(1967) Kristen Nygaard Ole Johan Dahl Til Java Sun/USA (1995) James Gosling Språkhierarki 18 9
Programmeringsspråk Programmering i Java - Leksjon 1 19 Programmeringsspråk Kildekode... Legges i en fysisk fil på maskinen Skrives i en tekstbehandler Uttrykkes i et språk og på en måte som "vi kan forstå" Fila må etterbehandles (oversettes og utføres) av spesialprogram slik at maskinen kan forstå programmet Se programproduksjon Programmering i Java - Leksjon 1 20 10
Programmeringsspråk I Java skiller vi mellom ulike typer program: Applikasjoner Selvstendige program som kjøres med alle rettigheter på aktuell maskin Appleter Program som kjøres i nettleser med klart begrensede rettigheter (bl.a. kan de ikke lese fra eller skrive til fil) Programmering i Java - Leksjon 1 21 Sandkassemodellen i Java C:\windows Programmeringsspråk lpt1 System.out AppletContext /etc/passwd Suspekt applet får ikke tilgang til alle ressurser på datamaskinen Programmering i Java - Leksjon 1 22 11
Programeksempel Det første java programmet Programmering i Java - Leksjon 1 23 Programeksempel Det første java programmet skrevet i Sublime Programmering i Java - Leksjon 1 24 12
Programeksempel Det første java programmet utførelse / programkjøring Programmering i Java - Leksjon 1 25 6108 Programmering i Java Slutt på introduksjon Programmering i Java - Leksjon 1 26 13