Kapittel 1: Datamaskiner og programmeringsspråk. Java som første programmeringsspråk
|
|
- Ruben Arntsen
- 8 år siden
- Visninger:
Transkript
1 Kapittel 1: Datamaskiner og programmeringsspråk Forelesningsnotater for: Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag, ISBN Vi gir tillatelse til å bruke disse notatene i tilknytning til boken. Modifisert: 16/1/06 JFPS 1: Datamaskiner og programmeringsspråk 1-1/29 Emneoversikt Datamaskinens virkemåte Programmeringsspråk og programoversettelse: høy- og lavnivå språk Java-modell for progamutvikling og -utføring Kompilering og utføring av Java-program JFPS 1: Datamaskiner og programmeringsspråk 1-2/29
2 Mål med kurset: problemløsing på datamaskin Kursets mål er ikke å lære et bestemt programmeringsspråk (Java, C++, Ada, Simula, Lisp, Pascal) men å gi en introduksjon til programmering som aktivitet. Dette omfatter: systematisk problemanalyse konstruksjon av enkle databaserte systemer v.h.a. Java d.v.s. problemløsningsteknikker Valg av programmeringsspråk er et pragmatisk problem. Programmeringsmetodikk er i stor grad uavhengig av programmeringsspråk. JFPS 1: Datamaskiner og programmeringsspråk 1-3/29 Hva er et program? Et program er en oppskrift for å løse et problem på datamaskinen. Det er en sekvens av instruksjoner uttrykt i et spesifikt programmeringsspråk med presis syntaks og semantikk. Instruksjoner er skrevet (programmert, kodet) av en programmerer. Instruksjoner blir utført av en datamaskin, som utfører dem, vanligvis én om gangen. Eksempler: tekstbehandlingssystem, minibankprogram, videospill, billettbestillingsystem JFPS 1: Datamaskiner og programmeringsspråk 1-4/29
3 Syntaks, semantikk, pragmatikk Syntaks grammatiske regler Hvordan et program må skrives for at det overhodet kan utføres av en datamaskin. ren pugg Semantikk mening Meningen til ulike syntaktisk korrekte deler av språket. mer komplisert Pragmatikk riktig bruk Metoder og regler for hvordan en bør bruke språket på en fleksibel og forståelig måte. Programmeringsmetodologi. læres ved programmering og erfaring JFPS 1: Datamaskiner og programmeringsspråk 1-5/29 Programmeringsmetodikk: Objektorientert programmering (OOP) OOP går ut på å identifisere objekter, og hvordan disse samarbeider for å løse et problem. OOP-objekter er ment å modellere objekter fra virkeligheten de har både egenskaper og atferd. JFPS 1: Datamaskiner og programmeringsspråk 1-6/29
4 Læremåte for (;;) programmér; // alltid JFPS 1: Datamaskiner og programmeringsspråk 1-7/29 Datamaskinens virkemåte: analogi Apotek Arbeidsinstruks (oppskrifter) Internt lager Daglig leder Regnskap Eksternt lager Resept innlevering Resept utlevering Bruker JFPS 1: Datamaskiner og programmeringsspråk 1-8/29
5 Datamaskinens virkemåte Program Datamaskin hente-dekode-utføre syklus Internt lager (minne) Kontrollenhet (CPU) Aritmetisk/ Logisk enhet (ALU) Eksternt lager (disk) Lese-enhet (tastatur) Skrive-enhet (skjerm) Bruker JFPS 1: Datamaskiner og programmeringsspråk 1-9/29 Datamaskin og programvare: løk-modellen maskinvare vindusystem Java programmeringsverktøy Java program Lag av programvarer fører til maksimal utnyttelse av maskinkraft. har organisering i biblioteker og programmer. OS JFPS 1: Datamaskiner og programmeringsspråk 1-10/29
6 To utsnitt (views) av et program (som også er et objekt) grafisk brukergrensesnitt programvarer skjult v.h.a. grensesnitt A maskinvarer OS X/Windows Java program programmerer bruker JFPS 1: Datamaskiner og programmeringsspråk 1-11/29 Programoversettelse Høynivå språk x = y * z kildekode Assemblyspråk MOV y, R MUL z, R MOV R, x assemblykode Maskinspråk maskinkode Meningsbevarende oversettelse Kompilator er et program som oversetter kildekode til lavnivå kode JFPS 1: Datamaskiner og programmeringsspråk 1-12/29
7 Dataspråk Maskinspråk språket som datamaskinen utfører tett tilknyttet en bestemt maskinarkitektur sekvens av nuller og enere vanskelig for mennesker å forstå f.eks er en maskin instruksjon. Assembly språk navn for operasjoner, etc. som finnes i maskinspråk lavnivå: hver instruksjon (pakker minst mulig informasjon) tilsvarer en maskin instruksjon tett tilknyttet et bestemt maskinspråk fremdeles vanskelig for mennesker å forstå f.eks. MOV y, R Høynivå språk Høynivå: hver instruksjon tilsvarer mange lavnivå instruksjoner lettere for mennesker å forstå (eks. FORTRAN, Pascal, C, C++, Simula, Ada, Java) kan oversettes til mange lavnivå språk v.h.a. kompilatorer, f. eks. x = y * z JFPS 1: Datamaskiner og programmeringsspråk 1-13/29 Programoversettelse for Java Høynivå språk x = y * z Java kildekode Mellomliggende språk iload_2 iload_3 imul istore_1 Java byte-kode JFPS 1: Datamaskiner og programmeringsspråk 1-14/29
8 Java modell teksteditor Java kildekode fil* Java byte-kode lastes inn i minne Klasselaster Verifisering JVM: Java virtuellmaskin Java kompilator Interpreter operativsystem Java byte-kode fil* maskinvare Programoversettelse/ kompilering *filer lagres på sekundærlager (disk) Programutføring eller -kjøring oversetter hver Java byte-kode til maskinkode som utføres umiddelbart. JFPS 1: Datamaskiner og programmeringsspråk 1-15/29 Java plattformuavhengighet KOMPILERING: Java program Datamaskin 1 Java byte-kode Java byte-kode kompilator UTFØRING: Java byte-kode inndata fra bruker Datamaskin 1 utdata til bruker Virtuell maskin 1 Java byte-kode inndata fra bruker Datamaskin 2 utdata til bruker Virtuell maskin 2 Samme Java byte-kode kan kjøres på forskjellige datamaskiner med forskjellige Java virtuelle maskiner. JFPS 1: Datamaskiner og programmeringsspråk 1-16/29
9 Makinvarekonfigurasjon admiral Servere Arbeidsstasjoner veps brems bie bille Ut i verden gateway Laserskriver mygg JFPS 1: Datamaskiner og programmeringsspråk 1-17/29 Nettverk Et nettverk består av to eller flere datamaskiner som er koblet sammen slik at de kan utveksle data øker produktivitet og evne til å dele informasjon. LAN (Local Area Network): nettverk for lokalmiljø og med få datamaskiner. WAN (Wide Area Network): nettverk som kan bestå av flere LAN. Internett: Samling av flere nettverk som er koblet sammen. TCP/IP: protokoll for utveksling av informasjon på Internett. IP adresse: entydig adresse for å identifisere hver maskin på Internett, f.eks WWW (World Wide Web): Programvare som gjør det lettere å dele informasjon i et nettverk. hypertekst og hypermedia Web-leser (Web browser): Verktøy for å lese Web-dokumenter HTML: HyperText Markup Language brukt for å utforme Web-dokumenter. URL: Uniform Resource Locator entydig måte å spesifisere lokasjon av Webdokumenter. f.eks. HTTP: HyperText Transfer Protocol protokoll for kommunikasjon, brukt av Weblesere. JFPS 1: Datamaskiner og programmeringsspråk 1-18/29
10 Verktøy: Java Development Kit (JDK 5.0) Et sett med verktøy for programmering i Java, tilgjengelig for forskjellige plattformer. javac: java: javadoc: oversetter Java kildekode til Java byte-kode utfører Java byte-kode genererer API dokumentasjon i HTMLformat appletviewer: jdb: javah: javap: kjører snutter (applets) avlusing (debugging) av Java byte-kode genererer C header & stubs disassembler Java byte-kode trenger en teksteditor i tillegg for å skrive Java kildekode. JFPS 1: Datamaskiner og programmeringsspråk 1-19/29 State-of-the-art kurs i programmering Programmeringsmetodikk: Objektorientert programmering (OOP) Programmeringsspråk: Java Programmeringsverktøy: JDK 5.0 Maskinvare: Kraftige PC er JFPS 1: Datamaskiner og programmeringsspråk 1-20/29
11 Programmering er tidskrevende! Programmering krever tid/arbeid, men er gøy særlig det som har med grafikk å gjøre. Nøkkelen til suksess: programmér oppgavene arbeid jevnt med stoffet DET ER IKKE MULIG Å PUGGE! JFPS 1: Datamaskiner og programmeringsspråk 1-21/29 Programmeringsspråk: Java Java er et objektorientert programmeringsspråk. I Java kan du skrive to typer programmer: Programmer som kalles for snutter (applets), og er nedfelt i en web-side. En web-side er et dokument på Internetts World Wide Web (WWW) som kan "leses" ved hjelp av en web-browser eller web-leser (f.eks. Internet Explorer, Opera, Mozilla, Konquorer). Programmer som er selvstendige applikasjoner disse trenger ikke ekstra støtte for å kunne utføres. JFPS 1: Datamaskiner og programmeringsspråk 1-22/29
12 Java programstruktur og -miljø Et Java program er en samling av en eller flere klasser. Kildekode til klasser lagres i tekstfiler. Hver klasse kompileres til en egen.class-fil som består av Java byte-kode. klassedeklarasjon klassenavn metodedeklarasjon public class Hilsen { metodenavn public static void main(string[] args) { handlinger som skal utføres i sekvens parametere } } JFPS 1: Datamaskiner og programmeringsspråk 1-23/29 Et enkelt selvstendig program 1. // En liten hilsen 2. public class Hilsen { 3. public static void main(string[] args) { 4. System.out.println("Velkommen til Portveien 2!"); 5. } 6. } Utskrift på skjerm: Velkommen til Portveien 2! JFPS 1: Datamaskiner og programmeringsspråk 1-24/29
13 Linje 1: // En liten hilsen Énlinjes kommentar som brukes til å dokumentere program. Alt f.o.m. // og t.o.m. slutt på linjen har ingen betydning for programutføring. Program uten dokumentasjon er vanskelig å forstå. Linje 2: public class Hilsen { En klasse defineres med en deklarasjon som begynner med nøkkelord class. En klasse har navn. Identifikator Hilsen er navn på klassen. Klassedeklarasjoner er omsluttet av en blokk,{...}. Alt i et Java program må være inne i en klasse. Nøkkelord public angir synlighet av en klasse: klassen Hilsen er tilgjengelig til alle andre klasser. JFPS 1: Datamaskiner og programmeringsspråk 1-25/29 Linje 3: public static void main(string[] args) { Hvert selvstendig program må ha én metode med navn main for å bli utført. kroppen til en metode er omsluttet av en blokk, {...}. public Nøkkelord public angir synlighet av en metode. Metode main er tilgjengelig til alle andre klasser. static Metode main er deklarert som en statisk metode, dvs den tilhører klassen og ikke instanser av klassen (objekter). void Metoder returner vanligvis verdier. Metodedeklarasjon må da eksplisitt angi type til returnert verdi. Nøkkelord void angir at metoden ikke returnerer en verdi. main(string[] args) Parameterliste, (...), brukes til å overføre data til en metode. Metode main tar én parameter, args, som er en tabell av strenger (angitt ved String[]) JFPS 1: Datamaskiner og programmeringsspråk 1-26/29
14 args inneholder kommandolinje argumenter. Linje 4: System.out.println("Velkommen til Portveien 2!"); Setningen skriver streng "Velkommen til Portveien 2!" på skjermen. Klassen System har en statisk variabel out som betegner standard ut-enhet (vanligvis skjerm) for hvert program som utføres. Metoden println, som tilhører objektet out angitt ved punktum (.) notasjon, skriver ut argumentstreng sendt til den. Semikolon (;) avslutter en setning. JFPS 1: Datamaskiner og programmeringsspråk 1-27/29 Fremgangsmåten for å skrive og kompilere et program 1. SKRIV programmet v.h.a. en teksteditor. 2. Lagre filen og gi den et navn, f.eks. Hilsen.java Gå ut av teksteditor. 3. KOMPILER kildekode fil ved å gi kommando: javac Hilsen.java Hvis kompilator gir noen feilmelding gå tilbake til teksteditor (filen Hilsen.java), rett feilene, fortsett fra og med pkt. 3. ellers (ingen feilmeldinger). Kompilator har oversatt programmet og laget nye filer (bl.a. Hilsen.class) 4. KJØR programmet ved å gi kommando: java Hilsen Klassenavn må være identiske med filnavn (uten.java suffiks) Klassen må definere main() metode. JFPS 1: Datamaskiner og programmeringsspråk 1-28/29
15 Oppsummering: Å kjøre et selvstendig program 1 2 Utdata Velkommen til Portveien 2! Hilsen.java Kompilator javac Hilsen.class Tolker java 1 KOMPILER kildekode fil: javac Hilsen.java 2 KJØR programmet: java Hilsen JFPS 1: Datamaskiner og programmeringsspråk 1-29/29
Kapittel 1: Datamaskiner og programmeringsspråk
Kapittel 1: Datamaskiner og programmeringsspråk Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen
DetaljerKapittel 1: Datamaskiner og programmeringsspråk. Java som første programmeringsspråk
Kapittel 1: Datamaskiner og programmeringsspråk Forelesningsnotater for: Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag, 2003. ISBN 82-02-23274-0
DetaljerKapittel 1: Datamaskiner og programmeringsspråk
Kapittel 1: Datamaskiner og programmeringsspråk Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen
DetaljerKapittel 1. Datamaskiner og programmeringsspråk. 1.1 Programmering
Kapittel 1 Datamaskiner og programmeringsspråk Dette kapitlet er en kort introduksjon til programmering. Vi vil se på hvordan man skriver, bygger og kjører programmer, samt illustrere noen sentrale programmeringsbegrep
DetaljerKapittel 1. Datamaskiner og programmeringsspråk. 1.1 Hva er en datamaskin? En datamaskins bestanddeler
Kapittel 1 Datamaskiner og programmeringsspråk Dette kapitlet vil gi en kort innføring i begreper rundt programmering. Et enkelt programeksempel vil illustrere bruken av en del sentrale programmeringsbegreper.
Detaljer2 Om statiske variable/konstanter og statiske metoder.
Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.
DetaljerKapittel 7: Mer om arv
Kapittel 7: Mer om arv Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag,
DetaljerKapittel 5: Objektkommunikasjon
Kapittel 5: Objektkommunikasjon Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk
DetaljerHva er programmering?
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
DetaljerNOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl
NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 10/5-2011, Stein Krogdahl Oversikt over Javas class-filer og byte-kode Disse formatene ble planlagt fra start
DetaljerLitt om Javas class-filer og byte-kode
Litt om Javas class-filer og byte-kode INF 5110, 11/5-2010, Stein Krogdahl (Dessverre litt få figurer) Disse formatene ble planlagt fra start som en del av hele Java-ideen Bt Byte-koden gir portabilitet
DetaljerINF1000 EKSTRATILBUD. Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen
INF1000 EKSTRATILBUD Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen PLAN FOR DAGEN gjennomgå stoff fra uke 1-5(6), men med en litt annen tilnærming kun gjennomgått stoff, men vekt på konsepter og
DetaljerNOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse
NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 8/5-2012, Stein Krogdahl Byte-koden for Java og.nett (C#) http://en.wikipedia.org/wiki/java_bytecode_instruction_listings
DetaljerKapittel 13: Grafiske brukergrensesnitt INF 100. Java som første programmeringsspråk
Kapittel 13: Grafiske brukergrensesnitt Forelesningsnotater for: INF 100 Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag, 2003. ISBN 82-02-23274-0
DetaljerKapittel 8: Programutvikling
Kapittel 8: Programutvikling Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk
DetaljerOversikt. INF1000 Uke 1 time 2. Repetisjon - Introduksjon. Repetisjon - Program
Oversikt INF1000 Uke 1 time 2 Variable, enkle datatyper og tilordning Litt repetisjon Datamaskinen Programmeringsspråk Kompilering og kjøring av programmer Variabler, deklarasjoner og typer Tilordning
Detaljer2 Om statiske variable/konstanter og statiske metoder.
Gaustadbekkdalen, januar 22 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår i primærlageret når
DetaljerKodegenerering del 3: Tilleggsnotat fra AHU Samt litt om class-filer og byte-kode INF5110 V2007. Stein Krogdahl, Ifi UiO
Kodegenerering del 3: Tilleggsnotat fra AHU Samt litt om class-filer og byte-kode INF5110 V2007 Stein Krogdahl, Ifi UiO ASU, kap 9.5: Vi generer kode for én og én basal blokk Da er det lett å holde orden
DetaljerJavas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)
Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode) Disse foilene er pensum INF 5110, 30/4-2013, Stein Krogdahl Byte-koden for Java og.nett (C#) kan leses her: http://en.wikipedia.org/wiki/java_bytecode_instruction_listings
DetaljerOblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59
Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Formål Formålet med denne oppgaven er å gi trening i hele pensum og i å lage et større program. Løsningen du lager skal være
DetaljerKapittel 1 En oversikt over C-språket
Kapittel 1 En oversikt over C-språket RR 2015 1 Skal se på hvordan man En innføring i C Skriver data til skjermen Lese data fra tastaturet Benytter de grunnleggende datatypene Foretar enkle matematiske
DetaljerIntroduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus
Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus Kategorisering av programmeringsspråk? Deklarativ vs. imperativ Lav nivå vs. høy nivå Kompilert vs. tolket
DetaljerOversikt. Informatikk. INF1000: Grunnkurs i objektorientert programmering. Utenom INF1000 Informasjon & hjelp
INF1000: Grunnkurs i objektorientert programmering Uke 0, høst 2014 Oversikt Informatikk - hva & hvorfor? Datasystemer, maskinvare, programmer Objektorientert programmering i INF1000 Programmeringsspråket
DetaljerTOD063 Datastrukturer og algoritmer
TOD063 Datastrukturer og algoritmer Øving : 3 Utlevert : Uke 7 Innleveringsfrist : 26. februar 2010 Klasse : 1 Data og 1 Informasjonsteknologi Gruppearbeid: 2-3 personer pr. gruppe. Oppgave 1 Vi skal lage
DetaljerOperativsystemer og grensesnitt
Operativsystemer og grensesnitt Ulike måter å bruke OS'et på Application Program Interface (API) Applikasjoner (ofte C-programmer) som f.eks. emacs, som bruker tjenestene i OS ved å kalle på funksjoner
DetaljerGenerelt om operativsystemer
Generelt om operativsystemer Operativsystemet: Hva og hvorfor Styring av prosessorer (CPU), elektronikk, nettverk og andre ressurser i en datamaskin er komplisert, detaljert og vanskelig. Maskinvare og
Detaljer13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER
.9.22 LITT OM OPPLEGGET INF EKSTRATILBUD Stoff fra uke - 2. September 22 Siri Moe Jensen Målgruppe: De som mangler forståelse for konseptene gjennomgått så langt. Trening får du ved å jobbe med oppgaver,
DetaljerINF 1000 høsten 2011 Uke september
INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus 1 INF1000 undervisningen Forelesningene: Første
DetaljerForelesning inf Java 1
Forelesning inf1000 - Java 1 Tema: Javas historie Bestanddelene i et Java-program Programvariabler Ole Christian Lingjærde, 22. august 2013 Ole Chr. Lingjærde Institutt for informatikk 22. august 2013
DetaljerINF1000 undervisningen INF 1000 høsten 2011 Uke september
INF1000 undervisningen INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Forelesningene: Første
DetaljerKapittel 15: Grafiske brukergrensesnitt: Enkel GUI. Del I
Kapittel 15: Grafiske brukergrensesnitt: Enkel GUI Del I Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf
DetaljerLæringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc
1 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 2 https://www.youtube.com/watch? v=nkiu9yen5nc 3 Læringsmål og pensum Mål Lære om
DetaljerKapittel 15: Grafiske brukergrensesnitt: Enkel GUI. Del I
Kapittel 15: Grafiske brukergrensesnitt: Enkel GUI Del I Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf
DetaljerAv Stein Gjessing, Institutt for informatikk, Universitetet i Oslo
Gaustadbekkdalen, januar 27 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår inne i primærlageret
Detaljer6108 Programmering i Java. Leksjon 1. Introduksjon til programmering og til Java
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
DetaljerKort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon
Kort om meg INF1000 Uke 2 Variable, enkle datatyper og tilordning Fredrik Sørensen Kontor: Rom 4311-NR, Informatikkbygget Brukernavn/e-post: fredrso@ifi.uio.no Utdanning: Dataingeniør, 2000 Cand.Scient,
Detaljer23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.
Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen
DetaljerForelesning inf Java 1
Forelesning inf1000 - Java 1 Tema: Javas historie Bestanddelene i et Java-program Programvariabler Ole Christian Lingjærde, 22. august 2012 Litt Java-historikk The Green Team I 1991 opprettet Sun Microsystems
DetaljerKompilering Statiske Syntaksanalyse Feilsjekking Eksempel Oppsummering
Dagens tema Hva er kompilering? Hvordan foreta syntaksanalyse av et program? Hvordan programmere dette i Java? Statiske metoder og variabler Hvordan oppdage feil? Kildekode Hva er kompilering? Anta at
DetaljerOversikt. INF1000 Uke 2. Repetisjon - Program. Repetisjon - Introduksjon
Oversikt INF1000 Uke 2 Variable, enkle datatyper og tilordning Litt repetisjon Datamaskinen Programmeringsspråk Kompilering og kjøring av programmer Variabler, deklarasjoner og typer Tilordning Uttrykk
DetaljerTDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang
2 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 3 https://www.youtube.com/watch? v=nkiu9yen5nc 4 Læringsmål og pensum Mål Lære om
DetaljerINF1000: Forelesning 7. Konstruktører Static
INF1000: Forelesning 7 Klasser og objekter del 2 Konstruktører Static UML REPETISJON 2 Repetisjon Verden består av objekter av ulike typer (klasser). Ofte er det mange objekter av en bestemt type. Objekter
DetaljerIntro til WWW, HTML5 og CSS
Intro til WWW, HTML5 og CSS Håkon Tolsby 20.08.2015 Håkon Tolsby 1 World Wide Web Webserver: Programvare som distribuerer websider og/eller maskin hvor programmet kjører Webbrowser (nettleser): Program
DetaljerProgrammeringsspråket C
Programmeringsspråket C Bakgrunn Implementasjon av Unix ved AT&Ts laboratorium i Palo Alto 1960 75. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI standard i 1988; omtrent alle følger
Detaljerpublic static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren
Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en
DetaljerKapittel 9: Sortering og søking Kort versjon
Kapittel 9: Sortering og søking Kort versjon Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen
DetaljerProgrammeringsspråket C
Programmeringsspråket C Programmeringsspråket C Laget til implementasjon av Unix ved AT&Ts Bell labs i Palo Alto 1969 73. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI-standard
DetaljerIntroduksjon til objektorientert programmering
Introduksjon til objektorientert programmering Samt litt mer om strenger og variable INF1000, uke6 Ragnhild Kobro Runde Grunnkurs i objektorientert programmering Strategi: Splitt og hersk Metoder kan brukes
DetaljerINF1000: Forelesning 7
INF1000: Forelesning 7 Klasser og objekter del 2 Konstruktører Static UML REPETISJON 2 Repetisjon Repetisjon forts. Verden består av objekter av ulike typer (klasser). Ofte er det mange objekter av en
DetaljerJSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:
Fra sist JSP - 2 Installasjon av Web-tjener Et enkelt JSP-script HTML statisk Forms Tags Ønsker dynamiske nettsider: Klientside-script/programmering Javascript, vbscript, applets Tjenerside-script/programmering
DetaljerDagens tema Kapittel 8: Objekter og klasser
Dagens tema Kapittel 8: Objekter og klasser Hva er objekter og klasser? Programmering med objekter Klassedeklarasjoner Generering av objekter Tilgang til elementer i objektene Objekt- og klassevariable
DetaljerINF1000 : Forelesning 1 (del 2)
INF1000 : Forelesning 1 (del 2) Java Variable og tilordninger Heltall, desimaltall og sannhetsverdier Utskrift på skjerm Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet
DetaljerTDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python
TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Læringsmål og pensum Mål Vite hva et
DetaljerKapittel 8: Sortering og søking
Kapittel 8: Sortering og søking Forelesningsnotater for: Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk, 2003. ISBN 82-02-23274-0 http://www.ii.uib.no/~khalid/jfps/
DetaljerForkurs INF1010. Dag 2. Andreas Færøvig Olsen Gard Inge Rosvold Institutt for Informatikk, 14.
Forkurs INF1010 Dag 2 Andreas Færøvig Olsen (andrefol@ifi.uio.no) Gard Inge Rosvold (gardir@ifi.uio.no) Institutt for Informatikk, 14. januar 2016 Forkurs INF1010 - dag 2 Feilmeldinger 2 Forkurs INF1010
Detaljerpublic static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren
Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en
DetaljerInnhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java
INF høsten 2 Uke 4: 3. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Mål for uke 4: Innhold uke 4 Repetisjon m/ utvidelser:
DetaljerKapittel 11: Unntakshåndtering. Java som første programmeringsspråk
Kapittel 11: Unntakshåndtering Forelesningsnotater for: Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag, 2003. ISBN 82-02-23274-0 http://www.ii.uib.no/~khalid/jfps/
DetaljerVelkommen til. INF våren 2016
Velkommen til INF1010 - våren 2016 Denne uken (onsdag og torsdag): Om INF1010 Java datastrukturer Klasser med parametre i Java Stein Gjessing Institutt for informatikk Universitetet i Oslo 1 1 INF1010
DetaljerHvordan en prosessor arbeider, del 1
Hvordan en prosessor arbeider, del 1 Læringsmål Kompilator, interpret og maskinkode CPU, registre Enkle instruksjoner: de fire regnearter Mer informasjon om temaet Internett Lokalnett (LAN) Mitt program
DetaljerProgrammering i C++ Løsningsforslag Eksamen høsten 2005
Programmering i C++ Eksamen høsten 2005 Simen Hagen Høgskolen i Oslo, Avdeling for Ingeniørutdanning 7. desember 2005 Generelt Denne eksamensoppgaven består av tre oppgaver, pluss en ekstraoppgave. Det
DetaljerProgrammeringsspråket C
Programmeringsspråket C Programmeringsspråket C Implementasjon av Unix ved AT&Ts laboratorium i Palo Alto 1960 75. Navnet kommer fra BCPL B C. Opphavsmannnen heter Dennis Ritchie. ANSI-standard i 1988;
DetaljerKonstruktører. Bruk av konstruktører når vi opererer med "enkle" klasser er ganske ukomplisert. Når vi skriver. skjer følgende:
Konstruktører Bruk av konstruktører når vi opererer med "enkle" klasser er ganske ukomplisert. Når vi skriver Punkt p = new Punkt(3,4); class Punkt { skjer følgende: int x, y; 1. Det settes av plass i
DetaljerFra Python til Java, del 2
Fra Python til Java, del 2 Hvordan kjøre Java? På Ifis maskiner På egen maskin Et eksempel Array-er For-setninger Lesing og skriving Metoder Biblioteket Hva trenger vi egentlig? Å kjøre Java For å kunne
DetaljerIntroduksjon til programmering og programmeringsspråk
Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus https://code.org/ Veldig høy-nivå programmering med Scratch End-user programming Overtone, Tidal, etc., bygger
DetaljerDebugging. Tore Berg Hansen, TISIP
Debugging Tore Berg Hansen, TISIP Innhold Innledning... 1 Å kompilere og bygge et program for debugging... 1 Når debugger er i gang... 2 Symbolene i verktøylinjen... 3 Start på nytt... 3 Stopp debugging...
DetaljerKapittel 8: Sortering og søking INF100
Forelesningsnotater for: Kapittel 8: Sortering og søking INF100 Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk, 2003. ISBN 82-02-23274-0 http://www.ii.uib.no/~khalid/jfps/
DetaljerKapittel 8: Sortering og søking INF100
Forelesningsnotater for: Kapittel 8: Sortering og søking INF100 Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk, 2003. ISBN 82-02-23274-0 http://www.ii.uib.no/~khalid/jfps/
DetaljerDel 1 En oversikt over C-programmering
Del 1 En oversikt over C-programmering 1 RR 2016 Starten C ble utviklet mellom 1969 og 1973 for å re-implementere Unix operativsystemet. Er et strukturert programmeringsspråk, hvor program bygges opp av
Detaljer156C. Algoritmer og maskinspråk. IT1101 Informatikk basisfag. Maskinspråk: det maskinen forstår. Assembler / assemblerspråk
IT1101 Informatikk basisfag I dag Programmeringsspråk Problemer med maskinspråk I dag: 5.1-5.3 Fra lavnivå til høynivå programmeringsspråk - utvikling Kompilator / tolker Programmeringsparadigmer Tradisjonelle
DetaljerObligatorisk Innlevering 2
Obligatorisk Innlevering 2 INF5110 - Kompilatorteknikk Våren 2017 Frist 07.05.2017 23:59 Dette er den andre av to oppgaver våren 2017. Den bygger videre på det som er gjort i den første innleveringen.
DetaljerLøsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011)
Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag til oppgave 7, 8, og 9 mangler Klasser og objekter (kap. 8.1-8.14 i "Rett på Java" 3. utg.) NB! Legg merke til at disse
DetaljerEksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert programmering i Java I
Universitetet i Bergen Det matematisk naturvitenskapelige fakultet Institutt for informatikk Side 1 av 6 Bokmål Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert
DetaljerKapittel 11: Unntakshåndtering. Java som første programmeringsspråk
Kapittel 11: Unntakshåndtering Forelesningsnotater for: Java som første programmeringsspråk Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag, 2003. ISBN 82-02-23274-0 http://www.ii.uib.no/~khalid/jfps/
DetaljerØving 0 - Xcode TDT4102
Øving 0 - Xcode TDT4102 Frivillig Øving Mål for denne øvingen: Bli kjent med programmeringsverktøy Lage et første program kun med teksteditor og kompilator Lage et første program med Xcode Denne øvingen
DetaljerTre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm
Mer om easyio Mer om forgreninger Løkker 7. september 2004 Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo Java 4 1 Tre måter å lese fra terminal Først:
DetaljerUkeoppgaver 1: 30. aug 3. sep (INF Høst 2010)
Ukeoppgaver 1: 30. aug 3. sep (INF1000 - Høst 2010) Et første møte med Java (kapittel 1 og 2.1 2.3 i læreboka, "Rett på Java" 2. utg.) Mål I første terminalstue-time skal du greie å skrive dine første
DetaljerVelkommen til INF5110 Kompilatorteknikk
Velkommen til INF5110 Kompilatorteknikk 15. januar 2013 Kursansvarlige: Stein Krogdahl [steink@ifi.uio.no] Ragnhild Kobro Runde [ragnhilk@ifi.uio.no] Henning Berg (oblig-ansvarlig) [hennb@ifi.uio.no] Kursområdet:
DetaljerEksekveringsrekkefølgen (del 1) Oppgave 1. Eksekveringsrekkefølgen (del 2) Kommentar til oppgave 1. } // class Bolighus
// class Bygning Oppgave 1 System.out.println( Bolighus ); // class Bolighus Hva blir utskriften fra dette programmet? class Blokk extends Bolighus{ // class Blokk IN105subclassesII-1 Eksekveringsrekkefølgen
DetaljerKom i gang med programmering i Java
Kom i gang med programmering i Java Dette dokumentet forteller hvordan du skal komme i gang med programmering inkludert nedlasting av den programvare du trenger samt oppsett av disse samt en del innstillinger
DetaljerOversikt. Hva er programmering & Java forkurset til INF1000. Hva er en datamaskin. Arne Maus Inst for Informatikk Univ. i Oslo
Oversikt Hva er programmering & Java forkurset til INF1000 Arne Maus Inst for Informatikk Univ i Oslo I) Hva er en datamaskin Hvordan får vi den til å gjøre det vi vil Et program er en oppskrift til maskinen
DetaljerINF5110. Oblig 2 presentasjon
INF5110 Oblig 2 presentasjon Informasjon Oppgaven Semantikksjekk Kodegenerering Bytecode-biblioteket Ant-targets Oppsummering Oversikt Informasjon Oblig 2 tilgjengelig på kurssiden Patch med testfiler
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Eksamen i : Eksamensdag : Torsdag 2. desember 2004 Tid for eksamen : 09.00 12.00 Oppgavesettet er på : Vedlegg : Tillatte hjelpemidler
DetaljerEKSAMEN 6109 OBJEKTORIENTERT PROGRAMMERING 5609 OBJEKTORIENTERT PROGRAMMERING
Høgskolen i Telemark EKSAMEN 6109 OBJEKTORIENTERT PROGRAMMERING 5609 OBJEKTORIENTERT PROGRAMMERING 02.12.2013 Tid: Målform: Sidetall: Hjelpemidler: Merknader: 9-13 for eksamen i 6102 (7.5 studiepoeng)
DetaljerJava. INF1000 : Forelesning 2. Ulike varianter for ulike behov. Java Standard Edition (Java SE) Java:
Variable og tilordninger Heltall, desimaltall og sannhetsverdier Kompilering og kjøring Utskrift på skjerm Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo
DetaljerForelesning inf1000 - Java 1
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
DetaljerIN våren 2019 Onsdag 16. januar
IN1010 - våren 2019 Onsdag 16. januar Java Objekter og klasser Stein Gjessing Universitetet i Oslo 1 1 IN1010: Objektorientert programmering Hva er et objekt? Hva er en klasse? Aller enkleste eksempel
DetaljerINF Oblig 2 semantikksjekk og kodegenerering
INF5110 - Oblig 2 semantikksjekk og kodegenerering Magnus Haugom Christensen Instituttet for Informatikk Universitetet i Oslo 27. Mars - 2012 Oversikt Informasjon Oppgaven Semantikksjekk Kodegenerering
DetaljerIN våren 2018 Tirsdag 16. januar
IN1010 - våren 2018 Tirsdag 16. januar Java Objekter og klasser Stein Gjessing Universitetet i Oslo 1 1 IN1010: Objektorientert programmering Hva er et objekt? Hva er en klasse? Aller enkleste eksempel
DetaljerINF1000 : Forelesning 4
INF1000 : Forelesning 4 Kort repetisjon av doble (nestede) løkker Mer om 1D-arrayer Introduksjon til 2D-arrayer Metoder Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk Universitetet
Detaljeri=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 Repetisjon: arrayer Tema: Løkker Arrayer Metoder Ole Christian Lingjærde,. september Deklarere og opprette array - eksempler: int[] a = new int[]; String[] a = new String[]; I
DetaljerDagens tema: 12 gode råd for en kompilatorskriver. Sjekking av navn. Lagring av navn. Hvordan finne et navn?
Dagens tema: 12 gode råd for en kompilatorskriver Hva skal gjøres med navn? Sjekking av navn Hvordan sjekke navn? Testutskrifter 12 gode råd En kompilator må også sjekke riktig navnebruk: Det må ikke forekomme
DetaljerForelesning inf Java 4
Forelesning inf1000 - Java 4 Tema: Løkker Arrayer Metoder Ole Christian Lingjærde, 12. september 2012 Ole Chr. Lingjærde Institutt for informatikk, 29. august 2012 1 Repetisjon: arrayer Deklarere og opprette
DetaljerTDT4102 Prosedyreog objektorientert programmering Vår 2016
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyreog objektorientert programmering Vår 2016 Øving 0 for Mac Frist: Ingen (frivillig øving)
DetaljerGenerelt om operativsystemer
Generelt om operativsystemer Hva er problemet? Styring av maskinvare og ressurser tilknyttet en datamaskin er komplisert, detaljert og vanskelig Maskinvare, komponenter og programvare endres og forbedres
DetaljerDagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen
Dagens temaer Fra kapittel 4 i Computer Organisation and Architecture Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen Register Transfer Language (RTL) Instruksjonseksekvering Pipelining
Detaljeri=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
Repetisjon: nesting av løkker Kort repetisjon av doble (nestede) løkker Mer om D-arrayer Introduksjon til D-arrayer Metoder Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: 13. juni 2006 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 5
DetaljerInf1000 uke 5 18.sept. 2007
En klasse er noe - en metode gjør noe Inf1000 uke 5 18.sept. 2007 Metoder Arne Maus, Gruppen for objektorientering, modellering og språk (OMS) Inst. for informatikk, Univ i Oslo 1 Metoder: Vi deler opp
DetaljerKom forberedt til tirsdag. INF1000 Tips til obligatorisk oppgave 4. Noen generelle tips. Oblig4: Komme igang
Kom forberedt til tirsdag INF1000 Tips til obligatorisk oppgave 4 Kikk på prøveeksamen fra 2004 http://www.uio.no/studier/emner/matnat/ifi/inf1000/h 07/undervisningsmateriale/proveeksamen-H2004.pdf Tittel:
Detaljer