Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.

Liknende presentasjoner


Presentasjon om: "Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else."— Utskrift av presentasjonen:

1 Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1 Introduksjon Forutsetninger for å lese læreboka side 2 Gjør deg kjent med læreboka og web-siden!side 3 Hva er et program?side 4 Vi kan betrakte datamaskinen som ”lagdelt”side 5 Et lite program (en applikasjon)side 6-7 Fra kildekode til kjørbart programside 8-9 Livsløpet til programmerside 10 Hva med objektene?side 11 Å lage et program er en prosessside 12 Tre typer Java-programmerside 13 Å kjøre en appletside 14

2 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 2 Forutsetninger for å lese læreboka •Du har vært datamaskinbruker en stund. Du kjenner godt til –bruk av Windows inkl. Windows Utforsker, bruk av utklippstavle, etc. –begrepene fil, katalog og underkatalog •Du vet litt om betydningen av en fils etternavn, eksempler: –Windows programfiler har etternavn exe. –Filer med endelse doc er datafiler - input til programmet Word. –Merk forskjellen mellom programfil og datafil. •Du har noe erfaring med bruk av Internett. •Windows har grafisk brukergrensesnitt. •MS-DOS-ledetekst er et eksempel på et tekstlig brukergrensesnitt, der vi skriver kommandoer for å navigere blant filene. En stor fordel å kunne noen slike kommandoer. •Du vet litt om datamaskinens oppbygging: –mikroprosessor –primærminne (RAM) og sekundærminne

3 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 3 Gjør deg kjent med læreboka og web-siden! •Web-siden: •Hvert kapittel har følgende oppbygging: –Læringsmål –Tekstdelen av kapitlet •De fleste underkapitlene avsluttes med små oppgaver. De viktigste av disse er satt opp i tilknytning til det aktuelle temaet i denne serien av foiler. Løsning til oppgavene finnes på web-siden. •Alle nummererte eksempelprogrammer ligger på web-siden, slik at du kan laste dem ned og kjøre dem på din egen maskin. –Til slutt i hvert kapittel: •Repetisjonsoppgaver, som dekker de viktigste emnene av kapitlet •Programmeringsoppgaver. Løsning til mange av disse ligger på web-siden. Liste med forklaring av nye begreper i kapitlet. •Og husk: Det er ikke mulig å lese seg til å bli en god programmerer. Du må programmere mye.

4 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 4 Hva er et program? •Et program er en sekvens med bestemte handlinger som kan utføres mange ganger. •”Program” fra hverdagslivet: –Å knytte sko – en innøvd sekvens –Å lage en ukjent matrett, må bruke oppskrift •Program for datamaskiner –Du har mange ferdige program på datamaskinen din: tekstbehandler, regneark, osv. –Sekvensen av handlinger (programmet) er beskrevet i et bestemt språk som maskinen forstår. Dette er gjort av mennesker. –Formålet med denne boka er at du skal lære å skrive slike programmer. –Vi skal bruke et bestemt språk som heter Java. Andre programmeringsspråk er Pascal og C++. –En del forenklet kan man si at språk for datamaskiner skiller seg fra vanlige språk ved at •antall ord er svært lite. I Java er det 48 ord, men det er mulig å definere nye ord. •et ord eller en setning har kun én, helt veldefinert, betydning. •ordene må settes sammen etter en meget streng syntaks. Eksempelvis kan et komma der det skulle vært punktum få store konsekvenser.

5 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 5 Vi kan betrakte datamaskinen som ”lagdelt” Grafisk vindussystem Kommandoskall Kjerne fopen, fclose C:\DOS> dir et lite antall kommandoer som jobber direkte med innmaten i datamaskinen tekstlig brukergrensesnitt, mange mulige kommandoer, hver av dem svarer til flere kjerne-kommandoer Skillet mellom lagene er ikke like tydelig i alle systemer. I noen systemer er skillet så godt at man uten videre kan skifte mellom f.eks. flere vindussystemer.

6 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 6 Et lite program (en applikasjon) •Vi skriver inn programmet som ren tekst. •Vi kan ikke legge inn formatering, f.eks. kursiv, forskjellige størrelser på bokstaver, etc. •Vi bruker derfor ikke en tekstbehandler, men en teksteditor, når vi skriver inn programmer. Notisblokk er én teksteditor, WinEdit en annen, og TextPad en tredje:

7 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 7 Programmet SkrivTekst.java /* * SkrivTekst.java VBH * * Skriver ut tekst mange ganger. * */ class SkrivTekst { public static void main(String[] args) { System.out.println("Vårt første program..."); for (int i = 0; i < 10; i ++) System.out.println("Nå skal vi lære Java!"); } klassenavn kommentarer filnavn samme som klassenavnet, med etternavn java skriv en linje gjennomfør det som kommer etterpå 10 ganger Vårt første program... Nå skal vi lære java! resultat fra kjøring av programmet

8 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 8 Fra kildekode til kjørbart program •Programkoden vi skriver inn kalles kildekode. •Det er en god vane å legge kildekoden på en fil med samme navn som klassen. Mange verktøy krever at det er slik. Filnavnet må ha endelsen java. Her: SkrivTekst.java. Pass på store og små bokstaver. •Java-programmer må oversettes til bytekode. •Bytekoden kan kjøres på mange forskjellige typer maskiner. –Nødvendig når appleter lastes ned fra Internett. •Java-tolkeren oversetter til aktuell maskinkode. •Programmer skrevet i andre programmeringsspråk oversettes ofte direkte til maskinkode (det språket som mikroprosessoren benytter). Kildekode, HeiVerden.java Bytekode, HeiVerden.class. class HeiV... public static... ¤() KompileringKjøring med tolker

9 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 9 Hvordan kjøre programmet (applikasjonen)? •Vi trenger –Et program som oversetter fra kildekode til bytekode: javac.exe –Et program som tolker bytekode, og sørger for at programmet blir kjørt: java.exe - (Java-tolkeren). •I et MS-DOS-vindu: –Antar at filen SkrivTekst.java ligger på katalogen c:\javaprogrammer. –Flytt til denne katalogen: •c:\windows>cd c:\javaprogrammer •c:\javaprogrammer> javac SkrivTekst.java •c:\javaprogrammer> java SkrivTekst •Kjøreresultatet kommer i et MS-DOS-vindu, og ser slik ut (æ, ø og å ser egentlig litt ”rare” ut): •I et verktøy/editor: –Mange editorer lar deg kompilere og kjøre direkte fra det vinduet der du skriver inn teksten. Vårt første program... Nå skal vi lære java! I boka, nederst side 36, står det at du må skrive source1.5 etter javac. Dette er ikke nødvendig fra og med versjon beta2 av kompilatoren.

10 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 10 Livsløpet til programmer 1.Problemanalyse –Hvilke oppgaver skal programmet kunne utføre? Hvilke ytre rammer legger begrensninger på systemet? Krav til maskinvare og arbeidsmiljø? –Resultat: Kravspesifikasjonen. Kravspesifikasjonen er en kontrakt mellom oppdragsgiver og den som skal lage systemet. –Vi sammenligner med husbygging: Hva ønsker beboerne? Hvilke krav stiller kommunen og naboene? Hva slags hus passer på den tomta som er valgt osv. 2.Design –Hvordan skal lage programmet? Nå skal alle problemer knyttet til programskrivingen løses. Vi må vite at det er mulig å lage programmet. –Jamfør husbygging: Bestem størrelsen på grunnflata, antall etasjer, grovskisse av romfordelingen osv. Bestem detaljene i romstrukturen. Innredning av kjøkken og bad. 3.Overgang til programkode (implementasjon) –Skriv programkoden. Prøv ut mindre deler underveis. Etter at enkeltdelene er testet, tester vi ut hele programsystemet. –Jamfør husbygging: Bygg huset etter tegningene. Bygningskontrollen passer på at byggingen skjer etter tegninger og forskrifter. 4.Installasjon og testing –Programsystemet installeres hos oppdragsgiver og testes ut der. –Jamfør husbygging: Beboerne flytter inn. De har ofte en garantiperiode på ett år overfor byggefirmaet. 5.Vedlikehold –Alle program som brukes trenger å vedlikeholdes. Brukeren oppdager ting han ønsker annerledes, eller nye funksjoner skal legges inn. Feil må rettes opp. –Jamfør husbygging: Rom må tapetseres om, røropplegg må skiftes ut osv.

11 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 11 Hva med objektene? •Verden rundt oss består av objekter. •Objektene i problemanalysefasen –Program for en bank: kontoer og kunder er objekter. –Program for et idrettslag: Medlemmene og konkurransene er objekter. •Objektene i designfasen –Beskriver objektene ved å oppgi data og adferd. Eksempler: •kontonavn, kontonummer og slado •det skal være mulig å sette inn og ta ut penger –Spesifiserer dataformater og detaljerer atferden. Eksempler: •navn skal deles i fornavn og etternavn, eventuelle melommnavn er en del av fornavnet •innskudd krever opplysninger om beløpet som skal settes inn •Objektene i implementasjonsfasen –Beskriver objektene i et kodespråk som datamaskinen forstår

12 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 12 Å lage et program er en prosess •En iterativ prosess –Det å bygge hus og det å lage programmer er ofte en iterativ prosess. –Det betyr at vi gjør erfaringer på et nivå som medfører at vi må gå tilbake og gjøre endringer på et tidligere nivå. –Det kan vise seg at arkitektens romfordeling er umulig å få til. Arkitekttegningene (designet) må forandres. Tilsvarende kan det være programløsninger som er umulig å implementere. •En inkrementell prosess –Dette betyr at man gjør helt ferdig en del av systemet før man fortsetter med en annen del. –Spesielt aktuelt dersom ny og ukjent teknologi tas i bruk. Da gjennomløper man trinn 1-4 for den mest kritiske delen av systemet først. –Inkrementell utvikling kan også bety inkrementelle leveranser og dermed kan oppdragsgiver ta i bruk deler av systemet av gangen.

13 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 13 Tre typer Java-programmer •For programmering av web –Når du henter en web-side over Internett, overføres siden fra en tjenermaskin (maskinen der siden ligger) til en klientmaskin (din maskin). –Du leser web-siden ved hjelp av et program som kalles en nettleser (f.eks. Netscape eller Microsoft Explorer). –Appleter •Siden kan referere til en (litt spesiell) programfil som ligger på tjenermaskinen. •Programfilen overføres til klientmaskinen, og web-leseren kjører programmet. Et slikt program er en applet og ligger på en fil med etternavn class. –Servleter •Dette er programmer som kjører på tjenermaskinen. Programmet lager siden som sendes til deg, der og da, og aktiviseres når tjeneren mottar din forespørsel. •En slik side kan for eksempel vise resultatet av et databasesøk. •JavaServer Pages (JSP) er en teknologi som forenkler produksjonen av slike sider. •Applikasjoner –Dette er ”vanlige program”, har ikke noe med Internett å gjøre. –Har ikke etternavn exe, men class. –Kjøres ved hjelp av et program som heter java. –De aller fleste programmene i denne boka er applikasjoner. Appleter og JSP er tema for henholdsvis kapitlene 18 og 21.

14 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 14 Å kjøre en applet •En HTML-fil må inneholde en referanse til appleten: – •Anta at HTML-filen heter EnkelApplet.html. Den kan kjøres på flere måter: –Med programmet appletviewer: •Fra MS-DOS-ledetekst: >appletviewer EnkelApplet.html •Fra verktøy: Du har applet-kildekoden i vinduet. Du ber om kompilering og kjøring av denne. Da blir det gjerne laget en meget enkel html-filen automatisk, og denne kjøres med appletviewer. •appletviewer viser bare appleten, ikke det som ligger rundt denne i web-siden. – Filen kan åpnes i en nettleser ved at du klikker på den: •D:\temp\EnkelApplet.html –Filen kan hentes fra en web-tjener (”Lenker” på bokas hjemmeside): •http://www2.tisip.no/boker/java/eksempler/EnkelApplet.html

15 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, 3.utgave, Stiftelsen TISIP og Gyldendal Akademisk Kapittel 1, side 15 Før du går videre må du gjøre deg kjent med det verktøyet du skal bruke for å lage Java-programmer. Foreta eventuell nedlasting og installasjon, dersom dette ikke allerede er gjort for deg. Se vedlegg A. Sørg for at du får programmet på side 31| i boka til å fungere, slik at utskriften blir som vist på side 33. Dersom du bruker SDK fra Sun, følg f.eks. oppskriften side Finn fram til bokas web-side og gjør deg kjent med den. Last ned løsningene til småoppgavene.


Laste ned ppt "Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else."

Liknende presentasjoner


Annonser fra Google