14.1 Internationale programmer

Størrelse: px
Starte visningen fra side:

Download "14.1 Internationale programmer"

Transkript

1 14.1 Internationale programmer Når et program skal anvendes af flere kulturer og sprog opstår behov for at programtekster, beløb og datoangivelser afhænger af landet og sproget, og man må i gang med at internationalisere og lokaliseret programmet. Internationalisering består i at gøre programmet sprogneutralt, ved at sørge for at al formatering og fortolkning af tal-, beløbs-, dato- og tidsangivelser sker afhængigt af sproget, og at al sproglig tekst er flyttet til resursefiler. Lokalisering består i at oversætte resursefilerne til et bestemt sprog Formatering af tal- og tidsangivelser DateFormat formaterer Date-objekter til strenge (og den anden vej). public class BenytDateFormat public static void main(string arg[]) DateFormat klformat, datoformat, dkf; klformat = DateFormat.getTimeInstance(DateFormat.FULL); datoformat = DateFormat.getDateInstance(DateFormat.LONG); dkf = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.SHORT); Date tid = new Date(); System.out.println( "Kl :"+ klformat.format(tid) ); System.out.println( "Dato :"+ datoformat.format(tid) ); System.out.println( "Tid :"+ dkf.format(tid) ); Kl : 23:57:34 CEST Dato : 25. juni 2001 Tid : :57 På samme måde formateres/fortolkes tal ved at bede om et formateringsobjekt der klarer netop denne form for tal: public class BenytNumberFormat public static void main(string arg[]) NumberFormat fmt1 = NumberFormat.getInstance(); NumberFormat fmt2 = NumberFormat.getCurrencyInstance(); NumberFormat fmt3 = NumberFormat.getPercentInstance(); double tal = ; System.out.println( fmt1.format(tal) ); System.out.println( fmt2.format(tal) ); System.out.println( fmt3.format(tal) ); 1.234,568 kr 1.234, % Ovenstående programmer er kørt med danske sprogindstillinger. Med amerikanske sprogindstillinger bliver uddata i stedet: 1, $1, ,457%

2 Tekstindhold i resursefiler Programmet BenytDateFormat er allerede halvt internationaliseret, idet tidsangivelserne er sprogspecifikke. Lad os nu fuldbyrde programmet ved at lægge tekstindholdet ud i en resursefil. Det gøres således: public class BenytDateFormatMedResurser public static void main(string arg[]) ResourceBundle res = ResourceBundle.getBundle("Tekster"); DateFormat klformat, datoformat, dkf; klformat = DateFormat.getTimeInstance(DateFormat.FULL); datoformat = DateFormat.getDateInstance(DateFormat.LONG); dkf = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.SHORT); Date tid = new Date(); System.out.println( res.getstring("kl_")+ klformat.format(tid) ); System.out.println( res.getstring("dato_")+ datoformat.format(tid) ); System.out.println( res.getstring("tid_")+ dkf.format(tid) ); Kl : 23:57:34 CEST Dato : 25. juni 2001 Tid : :57 Filen Tekster.properties indeholder de oprindelige tekster i nøgle-værdi-par. Disse vil blive brugt hvis der ikke findes resursefiler for det pågældende sprog: Tid_=Tid \: Kl_=Kl \: Dato_=Dato \: Lad os nu lokalisere programmet til engelsk. Det består i at vi opretter Tekster_en.properties med de engelske tekster: Tid_=Time \: Kl_=Time of day\: Dato_=Date \: Starter vi derefter programmet med engelske sprogindstillinger (fra UNIX med kommandoen LC_CTYPE=en java BenytDateFormatMedResurser) får vi uddata: Time of day: 12:43:02 AM CET Date : June 25, 2001 Time : Jun 25, :43 AM Når programmet skal finde en programtekst ud fra sprogindstillingerne sker det ved at Binære resursefiler I stedet for at gemme teksterne i tekstfiler kan de også som binære.class-filer (oversatte.java-filer). Hvis de findes, vil de binære resursefiler blive brugt fremfor tekstfilerne. Man skal ikke rette Binære resursefiler laves ved at arve fra ListResourceBundle og angive nøgle-værdi-parrene i et array. Her er Tekster-resurserne igen, men nu i javafilen Tekster.java public class Tekster extends ListResourceBundle static final Object[][] contents = new String[][] "Kl_", "Kl : ", "Dato_", "Dato: ", "Tid_", "Tid : " ; public Object[][] getcontents() return contents;

3 Her er Tekster_en.java: public class Tekster_en extends java.util.listresourcebundle static final Object[][] contents = new String[][] "Kl_", "Time of day : ", "Dato_", "Date : ", "Tid_", "Time : " ; public Object[][] getcontents() return contents; Avanceret tekstformattering Det er klart at man ikke kommer langt med internationalisering af sit program hvis man ikke i resursefilerne kan angive tekster med parametre. I disse parametre kan være tal- og tidsangivelser af forskellig form. Til dette bruges MessageFormat-klassen. MessageFormat tager en formatteringsstreng og et array af argumenter og returnerer en streng med argumenterne formatteret. Herunder bruger vi det samme sæt argumenter og prøver med forskellige formatteringsstrenge. public class BenytMessageFormat public static void main(string[] args) // Object[] a = new Date(), "A", new Double(0.75), new Integer(2), new Integer(5) ; String[] s = "Klokken 0,time d. 0,date var der 4 tilhørere i sal 1.", "Klokken 0,time,short d. 0,date,long.", "Klokken 0,time,h:mm a d. 0,date,short.", "Samlet pris: 2,number,currency.", "Avance: 2,number,percent.", "Der kom 2,choice,0ikke en sjæl! 1en person 2to personer 2<2 personer.", "Der kom 3,choice,0ikke en sjæl! 1en person 2to personer 2<3 personer.", "Der kom 4,choice,0ikke en sjæl! 1en person 2to personer 2<4 personer.", ; for (int i=0; i<s.length; i++) System.out.println( MessageFormat.format(s[i],a) ); Klokken 11:08:03 d var der 5 tilhørere i sal A. Klokken 11:08 d. 31. januar Klokken 11:08 AM d Samlet pris: kr 0,75. Avance: 75%. Der kom ikke en sjæl!. Der kom to personer. Der kom 5 personer. MessageFormat forstår følgende syntaks (EBNF?? -diagram): messageformatpattern := string ( "" messageformatelement "" string )* messageformatelement := argument "," elementformat elementformat := "time" "," datetimestyle "date" "," datetimestyle "number" "," numberstyle "choice" "," choicestyle datetimestyle := "short" "medium"

4 "long" "full" dateformatpattern numberstyle := "currency" "percent" "integer" numberformatpattern choicestyle := choiceformatpattern MessageFormat anvender NumberFormat, DateFormat og ChoiceFormat til at hjælpe med formatteringen. ChoiceFormat afgører ud fra et tal hvilken del af dens formatteringsstreng der skal vises (kan fornemmes af ovenstående eksempel Selv bestemme sproget Land og sprog repræsenteres ved et Locale-objekt. Normalt fungerer et program kun på eet sprog af gangen, og så er det ikke nødvendigt at bekymre sig om Locale-objektet. Ved opstart af et program opretter Java et Locale-objekt, der svarer til sprogindstillingerne på maskinen (på mit UNIX-system ud fra miljøvariablen LC_CTYPE). Dette Locale-objekt bruges til al formatering og lignende. Det kan fås med Locale.getDefault(). Ønsker man at ændre standardsproget gøres det med Locale.setDefault(Locale nyt). Ønsker man mere kontrol over sproget kan man oprette et Locale-objekt selv: Første parameter i konstruktøren er sprogkoden (f.eks. da, sv, no, en, fr), anden parameter landekode (f.eks. DK, GB, DE, FR, en tom streng "" kan også bruges). Dette objekt bruges til fremskafning af formateringsobjekter til det pågældende sprog: public class BenytDateFormat2 public static void main(string arg[]) DateFormat klformat, datoformat; Locale fransk = new Locale("fr","FR"); klformat = DateFormat.getTimeInstance(DateFormat.SHORT,fransk); datoformat = DateFormat.getDateInstance(DateFormat.LONG,fransk); Date tid = new Date(); System.out.println( "Kl: "+ klformat.format(tid) ); System.out.println( "Dato: "+ datoformat.format(tid) ); Kl: 14:34 Dato: 15 juillet 2001

5 14.2 Status for lokalisering af Java Tids- og talformater Java understøtter dansk fuldt ud Systemmeddelelser Java mangler resursefiler til dansk. Vindues-systemet størrelse (byte) 3964 nov 25 01:05./java/awt/resources/awt.properties 4436 nov 25 01:05./java/awt/resources/awt_de.properties 4728 nov 25 01:05./java/awt/resources/awt_es.properties 4788 nov 25 01:05./java/awt/resources/awt_fr.properties 4516 nov 25 01:05./java/awt/resources/awt_it.properties 4293 nov 25 01:05./java/awt/resources/awt_ja.properties 4242 nov 25 01:05./java/awt/resources/awt_ko.properties 4222 nov 25 01:05./java/awt/resources/awt_sv.properties 4022 nov 25 01:05./java/awt/resources/awt_zh_CN.properties 4015 nov 25 01:05./java/awt/resources/awt_zh_TW.properties Udklip af den svenske /10/01 1.9, 10/01/99 AWT-specific properties Modifier names AWT.shift=Skift AWT.control=Ctrl AWT.alt=Alt AWT.meta=Meta AWT.altGraph=Alt Graph Key names AWT.enter=Enter AWT.backSpace=Backsteg AWT.tab=Tabb AWT.cancel=Avbryt AWT.clear=Ta bort AWT.pause=Paus AWT.capsLock=Caps Lock AWT.escape=Esc AWT.space=Mellanslag AWT.pgup=Page Up AWT.pgdn=Page Down AWT.end=End AWT.home=Home AWT.left=V\u00e4nsterpil AWT.up=Upp\u00e5tpil AWT.right=H\u00f6gerpil AWT.down=Ned\u00e5tpil JAR-værktøjet (minder om ZIP) 2647 nov 25 01:05./sun/tools/jar/resources/jar.properties 2987 nov 25 01:05./sun/tools/jar/resources/jar_de.properties 2936 nov 25 01:05./sun/tools/jar/resources/jar_es.properties 3206 nov 25 01:05./sun/tools/jar/resources/jar_fr.properties 2887 nov 25 01:05./sun/tools/jar/resources/jar_it.properties 7107 nov 25 01:05./sun/tools/jar/resources/jar_ja.properties 4747 nov 25 01:05./sun/tools/jar/resources/jar_ko.properties 2886 nov 25 01:05./sun/tools/jar/resources/jar_sv.properties 3798 nov 25 01:05./sun/tools/jar/resources/jar_zh_CN.properties 3524 nov 25 01:05./sun/tools/jar/resources/jar_zh_TW.properties Udklip af den svenske fil: error.cant.open=\ kan inte \u00f6ppna: 0 error.illegal.option=\ Ogiltigt alternativ: 0 error.bad.option=\ Ett av alternativen -ctxu m\u00e5ste anges. error.bad.cflag=\ 'c'-flaggan kr\u00e4ver att indatafilerna anges! error.bad.uflag=\ 'u'-flaggan kr\u00e4ver att manifest- eller indatafilerna anges! error.nosuch.fileordir=\ 0 : Det finns ingen s\u00e5dan fil eller katalog. error.write.file=\ Det uppstod ett fel vid skrivning till befintlig jar-fil. error.create.dir=\ 0 : Det gick inte att skapa n\u00e5gon katalog. error.incorrect.length=\ ogiltig l\u00e4ngd vid bearbetning: 0 out.added.manifest=\ extra manifestfil Videregående programmering Lektion Status for lokalisering af Java

6 out.update.manifest=\ uppdaterad manifestfil out.ignore.entry=\ ignorerar posten 0 Printerdialoger 3604 nov 25 01:05./sun/awt/print/resources/pdialog.properties 3710 nov 25 01:05./sun/awt/print/resources/pdialog_de.properties 3756 nov 25 01:05./sun/awt/print/resources/pdialog_es.properties 4011 nov 25 01:05./sun/awt/print/resources/pdialog_fr.properties 3596 nov 25 01:05./sun/awt/print/resources/pdialog_it.properties 5629 nov 25 01:05./sun/awt/print/resources/pdialog_ja.properties 4944 nov 25 01:05./sun/awt/print/resources/pdialog_ko.properties 3694 nov /03/06 button.cancel=avbryt button.help=hj\u00e4lp button.ok=ok button.print=skriv ut button.print.mnemonic=p button.save=spara... button.save.mnemonic=v checkbox.collate=sortera checkbox.collate.mnemonic=l checkbox.duplex=duplex checkbox.duplex.mnemonic=d. \td checkbox.titlesheet=titelsida: checkbox.titlesheet.mnemonic=t \td checkbox.tumble=tumble checkbox.tumble.mnemonic=u combobox.printers=[skapa lista \u00f6ver skrivare] dialog.title=skriv ut label.color=f\u00e4rg: label.commands=kommandon: label.commands.mnemonic=m label.copies=antal kopior: label.copies.mnemonic=c. \td label.landscape=liggande label.landscape.mnemonic=n\td label.options=alternativ: label.orientation=riktning: label.pages=sidor: label.paper=papper: Fil-vælger 1336 nov 25 01:05./com/sun/java/swing/plaf/motif/resources/motif.properties 1383 nov 25 01:05./com/sun/java/swing/plaf/motif/resources/motif_sv.properties 1148 nov 25 01:05./com/sun/java/swing/plaf/windows/resources/windows.properties 1158 nov 25 01:05./com/sun/java/swing/plaf/windows/resources/windows_sv.properties 1346 nov 25 01:05./com/sun/java/swing/plaf/windows/resources/windows_zh_CN.properties 1345 nov 25 01:05./com/sun/java/swing/plaf/windows/resources/windows_zh_TW.properties 193 nov 25 01:05./com/sun/jndi/cosnaming/jndiprovider.properties 943 nov 25 01:05./com/sun/jndi/ldap/jndiprovider.properties 2170 nov 25 01:05./javax/accessibility/resources/accessibility.properties 2443 nov 25 01:05./javax/accessibility/resources/accessibility_de.properties 2598 nov 25 01:05./javax/accessibility/resources/accessibility_es.properties 2785 nov 25 01:05./javax/accessibility/resources/accessibility_fr.properties 2538 nov 25 01:05./javax/accessibility/resources/accessibility_it.properties 3802 nov 25 01:05./javax/accessibility/resources/accessibility_ja.properties 3410 nov 25 01:05./javax/accessibility/resources/accessibility_ko.properties 2316 nov 25 01:05./javax/accessibility/resources/accessibility_sv.properties 2852 nov 25 01:05./javax/accessibility/resources/accessibility_zh_CN.properties 3043 nov 25 01:05./javax/accessibility/resources/accessibility_zh_TW.properties 3322 nov 25 01:05./javax/swing/plaf/basic/resources/basic.properties 3630 nov 25 01:05./javax/swing/plaf/basic/resources/basic_de.properties 3556 nov 25 01:05./javax/swing/plaf/basic/resources/basic_es.properties 3668 nov 25 01:05./javax/swing/plaf/basic/resources/basic_fr.properties 3488 nov 25 01:05./javax/swing/plaf/basic/resources/basic_it.properties 4438 nov 25 01:05./javax/swing/plaf/basic/resources/basic_ja.properties 3998 nov 25 01:05./javax/swing/plaf/basic/resources/basic_ko.properties 3450 nov 25 01:05./javax/swing/plaf/basic/resources/basic_sv.properties 3828 nov 25 01:05./javax/swing/plaf/basic/resources/basic_zh_CN.properties 3989 nov 25 01:05./javax/swing/plaf/basic/resources/basic_zh_TW.properties 1379 nov 25 01:05./javax/swing/plaf/metal/resources/metal.properties 1435 nov 25 01:05./javax/swing/plaf/metal/resources/metal_de.properties 1430 nov 25 01:05./javax/swing/plaf/metal/resources/metal_es.properties 1476 nov 25 01:05./javax/swing/plaf/metal/resources/metal_fr.properties 1424 nov 25 01:05./javax/swing/plaf/metal/resources/metal_it.properties 1639 nov 25 01:05./javax/swing/plaf/metal/resources/metal_ja.properties 1548 nov 25 01:05./javax/swing/plaf/metal/resources/metal_ko.properties 1396 nov 25 01:05./javax/swing/plaf/metal/resources/metal_sv.properties 1638 nov 25 01:05./javax/swing/plaf/metal/resources/metal_zh_CN.properties 1586 nov 25 01:05./javax/swing/plaf/metal/resources/metal_zh_TW.properties Videregående programmering Lektion Status for lokalisering af Java

Virkefeltsregler i Java

Virkefeltsregler i Java Virkefeltsregler i Java int i; int k; Sequence s; int j; What s in a name? Brian spillede blændende i søndags! Skolen ligger i Viby Ring til Kirsten og sig at... Et navn fortolkes i en kontekst og konteksten

Læs mere

University of Southern Denmark Syddansk Universitet. DM503 Forelæsning 11

University of Southern Denmark Syddansk Universitet. DM503 Forelæsning 11 DM503 Forelæsning 11 Generics Pakker Exceptions Indhold Generics Nedarvning og Generics Generics Nedarvning og Generics Husk Box fra sidst Generics public class Box {! private T object;! public void

Læs mere

Anvendelse af metoder - Programmering

Anvendelse af metoder - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Anvendelse af metoder - Programmering En forhåbentlig rigtig god forklaring på hvad metoder er og hvordan de anvendes. Lidt om private og public, retur

Læs mere

Kursus i OOP og Java. Kursus i Objektorienteret programmering i Java

Kursus i OOP og Java. Kursus i Objektorienteret programmering i Java Kursus i OOP og Java Kursus i Objektorienteret programmering i Java Åben Dokumentlicens Dette foredragsmateriale er under Åben Dokumentlicens (ÅDL) Du har derfor lov til frit at kopiere dette værk Bruger

Læs mere

Eksempel: Skat i år 2000

Eksempel: Skat i år 2000 Kursus 02199: Programmering afsnit 2.1-2.7 Anne Haxthausen IMM, DTU 1. Værdier og typer (bl.a. char, boolean, int, double) (afsnit 2.4) 2. Variable og konstanter (afsnit 2.3) 3. Sætninger (bl.a. assignments)

Læs mere

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 Opgavebesvarelsen skal afleveres som enten en printerudskrift eller som et passende dokument sendt via email til fjj@noea.dk. Besvarelsen skal

Læs mere

Videregående programmering i Java

Videregående programmering i Java Videregående programmering i Java Dag 9 Andre designmønstre Andre designmønstre: Uforanderlig, Fluevægt, Lagdelt Initialisering, Komposit/Rekursiv Komposition, Kommando/Ændring Fremlæggelse af programmering/status

Læs mere

Ugeseddel 4 1. marts - 8. marts

Ugeseddel 4 1. marts - 8. marts Ugeseddel 4 1. marts - 8. marts Læs følgende sider i kapitel 6 i lærebogen: s. 233 258 og s. 291 317 (afsnit 6.3 overspringes). Begynd at overveje, hvad afleveringsopgaven skal omhandle. Læs vejledningen,

Læs mere

Tree klassen fra sidste forelæsning

Tree klassen fra sidste forelæsning Programmering 1999 Forelæsning 12, fredag 8. oktober 1999 Oversigt Abstrakte klasser. Grænseflader. Programmering 1999 KVL Side 12-1 Tree klassen fra sidste forelæsning class Tree { int age; // in years

Læs mere

DM01 DM01. 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 11

DM01 DM01. 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 18/3-2003. Side 1 af 11 DM01 DM01 3. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 18/3-2003 Side 1 af 11 DM01 Indholdsfortegnelse: BILAG:...2 1 FORMÅL:...3 2 KLASSER:...4 2.1 DILEMMA:...4 2.1.1 METODER:...4

Læs mere

DANMARKS TEKNISKE UNIVERSITET

DANMARKS TEKNISKE UNIVERSITET DANMARKS TEKNISKE UNIVERSITET Skriftlig prøve, 14. december 2018, 4 timer Side 1 af 18 Kursus navn: 02101 Indledende Programmering Kursus : 02101 Tilladte hjælpemidler: Ikke-digitale skriftlige hjælpemidler

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 2 DM502 Forelæsning 2 Repetition Kompilere og køre Java program javac HelloWorld.java java HeloWorld.java Debugge Java program javac -g HelloWorld.java jswat Det basale Java program public class HelloWorld

Læs mere

Threads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java

Threads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Denne guide er oprindeligt udgivet på Eksperten.dk Threads i Java Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Den forudsætter

Læs mere

Test af It-komponent

Test af It-komponent Test af It-komponent I programmeringssproget Java Programmet Login service Elev: Mads Funch Klasse 2.4 Mat, It, Programmering Skole: Roskilde Tekniske Gymnasium HTX Underviser: Karl Dato: 31-08-2016 Side

Læs mere

Java Klasse nedarvninger

Java Klasse nedarvninger Denne guide er oprindeligt udgivet på Eksperten.dk Java Klasse nedarvninger Et let lille overblik i hvordan klasse nedarvning virker i java Skrevet den 07. dec 2011 af mochners I kategorien Programmering

Læs mere

Civilingeniøreksamen 49104 12. januar 2001. Skriftelig prøve den 12. januar 2001 Kursusnummer 49104

Civilingeniøreksamen 49104 12. januar 2001. Skriftelig prøve den 12. januar 2001 Kursusnummer 49104 Skriftelig prøve den 12. januar 2001 Kursusnummer 49104 Kursusnavn: Programmering. Tilladte hjælpemidler: Alle skriftlige hjælpemidler Opgavesættet består af fire opgaver, der har følgende vægtning: Opgave

Læs mere

BRP 6.9.2006 Kursusintroduktion og Java-oversigt

BRP 6.9.2006 Kursusintroduktion og Java-oversigt BRP 6.9.2006 Kursusintroduktion og Java-oversigt 1. Kursusintroduktion 2. Java-oversigt (A): Opgave P4.4 3. Java-oversigt (B): Ny omvendings -opgave 4. Introduktion til næste kursusgang Kursusintroduktion:

Læs mere

Aftenskole i programmering sæson Flere registreringer. Sæson 2 - Lektion 8

Aftenskole i programmering sæson Flere registreringer. Sæson 2 - Lektion 8 Flere registreringer Sæson 2 - Lektion 8 I sidste uge Vi så hvordan vi kan navigere med en UINavigationController Vi så hvordan vi lavede nogle hjælpe klasser med funktioner vi skulle bruge flere steder

Læs mere

Løsning af møntproblemet

Løsning af møntproblemet Løsning af møntproblemet Keld Helsgaun RUC, oktober 1999 Antag at tilstandene i problemet (stillingerne) er repræsenteret ved objekter af klassen State. Vi kan da finde en kortest mulig løsning af problemet

Læs mere

class Time { int hours, min; } } Time t1; // Erklær variabel af type Time class Time1 { public static void main(string[] args) { Time t1; t1.

class Time { int hours, min; } } Time t1; // Erklær variabel af type Time class Time1 { public static void main(string[] args) { Time t1; t1. Programmering 1999 Forelæsning 4, fredag 10. september 1999 Klasser og objekter Felter, konstruktorer, this Eksempler på klasser: Time, Appointment Eksempler på metoder i Time og Appointment Klassefelter:

Læs mere

Klasser og objekter. (Afsnit i manualen)

Klasser og objekter. (Afsnit i manualen) Klasser og objekter (Afsnit 4 + 5 i manualen) Grundbegreber Klasser og objekter beskrivelse oprettelse Attributter og metoder tilstand opførsel Indkapsling afskærmning datarepræsentationsuafhængighed Klasser

Læs mere

O l e 3 1 2. 2 \n I b 1 1 1 1 7 \n. Ole 312.2 Ib 11117 TT_EOF. Ole 312.2. Ib 11117. Overview Tekstfiler, tegn og brikker

O l e 3 1 2. 2 \n I b 1 1 1 1 7 \n. Ole 312.2 Ib 11117 TT_EOF. Ole 312.2. Ib 11117. Overview Tekstfiler, tegn og brikker Programmering 1999 Forelæsning 8, fredag 24. september 1999 Overview Tekstfiler, tegn og brikker StreamTokenizer: indlæsning fra tekstfiler Formateret udskrift Programmering 1999 KVL Side 8-1 Tekstfiler

Læs mere

Hvad er Objekter - Programmering

Hvad er Objekter - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som

Læs mere

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne.

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne. Exercise 1: Opgave 9.1 på CodeJudge. a) Lav klasserne Cirkel, Rektangel og Kvadrat, som implementerer vedhæftede interface From.java (se CodeJudge). Lav Rektangel før du laver Kvadrat. Kan du bruge nedarvning

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3 DM502 Forelæsning 3 Indlæsning fra tastatur Udskrift til skærm Repetition Beregning af middelværdi Gentagelse med stop-betingelse (while) Heltalsdivision Division med nul Type-casting ( (double) ) Betinget

Læs mere

Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik

Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik Datalogi C, RUC Forelæsning 22. november 2004 Henning Christiansen Syntaks og syntaksgenkendelse, særligt regulære udtryk og tilstandsmaskiner og lidt om anvendelser i bioinformatik Dagens program Hvad

Læs mere

class subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree.

class subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree. Programmering 1999 Forelæsning 11, tirsdag 5. oktober 1999 Oversigt Klasse-hierarkier: superklasser og subklasser Nedarvning Polymorfi Programmering 1999 KVL Side 11-1 Hierarkier En klasse repræsenterer

Læs mere

Singleton pattern i C#

Singleton pattern i C# Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i C# Denne artikel beskriver Singleton pattern og implementation i C#. Den forudsætter kendskab til C# men ikke til Singleton. Der er

Læs mere

Klasser og nedarvning

Klasser og nedarvning Datalogi C, Efterår 2004 OH er, forelæsning 21/9-2004 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Opgaven til senere: Generalisere

Læs mere

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Denne guide er oprindeligt udgivet på Eksperten.dk Prepared Statements Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Skrevet den 18. Feb 2010

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4 DM502 Forelæsning 4 Flere kontrolstrukturer for-løkke switch-case Metoder Indhold Arrays og sortering af arrays String-funktioner for-løkke Ofte har man brug for at udføre det samme kode, for en sekvens

Læs mere

Jacob Christiansen, Institut for MAtematik og DAtalogi, Syddansk Universitet, Odense

Jacob Christiansen, Institut for MAtematik og DAtalogi, Syddansk Universitet, Odense 7 DM -. Obligatoriske Opgave Løsning af ligningssystem vha. fipunktmetoden Jacob Christiansen, 8 moffe@imada.sdu.dk Institut for MAtematik og DAtalogi, Syddansk Universitet, Odense. Opgaven Der skal implementeres

Læs mere

DATALOGI 0GB. Skriftlig eksamen mandag den 7. juni 2004

DATALOGI 0GB. Skriftlig eksamen mandag den 7. juni 2004 Københavns Universitet bacheloruddannelsen i datalogi side 1 af 6 DATALOGI 0GB Skriftlig eksamen mandag den 7. juni 2004 Dette opgavesæt består af 6 nummererede sider. Eksamensdeltagerne bør straks sikre

Læs mere

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med

Læs mere

Singleton pattern i Java

Singleton pattern i Java Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i Java Denne artikel beskriver Singleton pattern og implementation i Java. Den forudsætter kendskab til Java men ikke til Singleton.

Læs mere

Programmering 1999 KVL Side 5-4. Klassen Time: metoder. Metoder i objektet giver mulighed for at ændre tilstanden, eller kigge på tilstanden.

Programmering 1999 KVL Side 5-4. Klassen Time: metoder. Metoder i objektet giver mulighed for at ændre tilstanden, eller kigge på tilstanden. Programmering 1999 Forelæsning 5, tirsdag 14. september 1999 Oversigt Mere om klasser og objekter Klassefelter: static Konstante felter: final Indkapsling og synlighed: private og public Overlæsning af

Læs mere

Videregående Programmering Obligatorisk opgave - 3. semester, efterår 2004

Videregående Programmering Obligatorisk opgave - 3. semester, efterår 2004 Overvågningssystem Beskrivelse Bagagesorteringssystemet består af et antal skranker (check-in) til modtagelse og registrering af bagage, et automatiseret sorteringsanlæg samt et antal terminaler (gates),

Læs mere

DM502. Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/

DM502. Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/ DM502 Peter Schneider-Kamp (petersk@imada.sdu.dk) http://imada.sdu.dk/~petersk/dm502/ 1 DM502 Bog, ugesedler og noter De første øvelser Let for nogen, svært for andre Kom til øvelserne! Lav opgaverne!

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 6

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 6 DM502 Forelæsning 6 Klasser og objekter Introduktion Math-klassen Indhold Klasser vs. objekter Først et tænkt eksempel: Vi vil lave en bil i Java 1. spørgsmål: Hvad karakteriserer en bil? Model År Farve...

Læs mere

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning Datalogi OB, Efterår 2002 OH er, forelæsning 10/9-2002 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Eftermiddagens opgave:

Læs mere

DATALOGI 0GB. Skriftlig eksamen tirsdag den 6. januar 2004

DATALOGI 0GB. Skriftlig eksamen tirsdag den 6. januar 2004 Københavns Universitet bacheloruddannelsen i datalogi side 1 af 6 DATALOGI 0GB Skriftlig eksamen tirsdag den 6. januar 2004 Dette opgavesæt består af 6 nummererede sider. Eksamensdeltagerne bør straks

Læs mere

Abstrakte datatyper C#-version

Abstrakte datatyper C#-version Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype

Læs mere

02101 Indledende Programmering Introduktion til Eclipse

02101 Indledende Programmering Introduktion til Eclipse 02101 Indledende Programmering Introduktion til Eclipse Version 2018 1 Introduktion I dette kursus lægger vi op til at man bruger det integrerede udviklingsmiljø Eclipse. Basalt set er et integreret udviklingsmiljø

Læs mere

Tilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge.

Tilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Denne guide er oprindeligt udgivet på Eksperten.dk Tilfældige tal Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Den forudsætter

Læs mere

Bits, bit operationer, integers og floating point

Bits, bit operationer, integers og floating point Denne guide er oprindeligt udgivet på Eksperten.dk Bits, bit operationer, integers og floating point Denne artikel beskriver hvordan data gemmes som bits og hvordan man kan manipulere med bits. Den forudsætter

Læs mere

SWC eksamens-spørgsmål. Oversigt

SWC eksamens-spørgsmål. Oversigt SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition

Læs mere

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering Skriftlig eksamen i Grundlæggende Programmering ITU, 20. januar 2000 Alle hjælpemidler tilladt, dog ikke datamat. Eksamen er skriftlig, fire timer, og bedømmes efter 13-skalaen. Opgavesættet består af

Læs mere

Introduction til.net remoting i C#

Introduction til.net remoting i C# Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i C# Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i C#. Den forudsætter kendskab

Læs mere

Overblik. Class Loader. Java. Class Libraries. Bytecode. Verifier Java. Source (.java) Just in Time Compiler. Java

Overblik. Class Loader. Java. Class Libraries. Bytecode. Verifier Java. Source (.java) Just in Time Compiler. Java OOP1 Java intro. Klasser, objekter, interfaces, nedarvning, Association, Aggregation og Composition mvh. Try and catch exceptions. Package Intro. til jar filer. Overblik Compile-time Environment Run-time

Læs mere

RMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation).

RMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation). Denne guide er oprindeligt udgivet på Eksperten.dk RMI introduktion Denne artikel beskriver Java RMI (Remtote Method Invocation). Den beskriver teorien bag RMI, viser et simpelt kode eksempel og forklarer

Læs mere

Rekursion og dynamisk programmering

Rekursion og dynamisk programmering Rekursion og dynamisk programmering Datastrukturer & Algoritmer, Dat C Forelæsning 12/10-2004 Henning Christiansen Rekursion: at en procedure kalder sig selv eller et antal metoder kalder hinanden gensidigt.

Læs mere

Forelæsning Uge 4 Torsdag

Forelæsning Uge 4 Torsdag Forelæsning Uge 4 Torsdag Klassevariabler og klassemetoder Levetid for variabler og parametre Virkefeltsregler Projektopgave Kaninjagt Lommeregner (for MAT studerende) Klassevariabler og klassemetoder

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter side 1 af 11 sider Skriftlig eksamen i Datalogi Modul 1 Sommer 2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 10% Opgave 2 10%

Læs mere

Forelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999

Forelæsning 17, tirsdag 2. november 1999 Søgning efter en given værdi i en tabel. Programmering 1999 sammenligninger, hvor Programmering 1999 Forelæsning 17, tirsdag 2 november 1999 Søgning efter en given værdi i en tabel Lineær søgning og binær søgning Effektivitet: maskinuafhængig vurdering af køretid

Læs mere

Forelæsning Uge 1 Torsdag

Forelæsning Uge 1 Torsdag Forelæsning Uge 1 Torsdag Objekters tilstand og opførsel Java og BlueJ Skabelse af objekter (via new-operatoren) Iteration (gentagelser) og parametrisering Java's for løkke Parametre i metoder Forskellige

Læs mere

Der er fejl i programmer. Ikke-trivielle programmer er næsten altid fejlbehæftede.

Der er fejl i programmer. Ikke-trivielle programmer er næsten altid fejlbehæftede. Udvidet Programmering 1999 Forelæsning 22, tirsdag 23. november 1999 Indkøring versus afprøvning af programmer Intern afprøvning Ekstern afprøvning Programkommentarer og dokumentation Programmering 1999

Læs mere

SWC Elementer i klassedefinition

SWC Elementer i klassedefinition SWC Elementer i klassedefinition Indhold Eksempel... 2 Karakteristika for en klasse... 3 Karakteristika for et instance field... 4 Karakteristika for en constructor... 5 Karakteristika for en property...

Læs mere

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen.

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen. Indledning...2 Variabler...13 Eksempel: 1...13 Eksempel 2:...13 Eksempel 3:...15 Eksempel 4:...16 Metoder...17 Metode (intet ind og intet ud)...17 Metode (tekst ind)...18 Metode (tekst ind og tekst ud)...19

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Java syntax og style guide Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Brug

Læs mere

Programmering i C. Lektion 4. 5. december 2008

Programmering i C. Lektion 4. 5. december 2008 Programmering i C Lektion 4 5. december 2008 Funktioner Eksempel Fra sidst 1 Funktioner 2 Eksempel Funktioner Eksempel Eksempel: 1 / f u n k t i o n s p r o t o t y p e r / i n t i n d l a e s ( void )

Læs mere

XML parsning i Java. Denne artikel beskriver hvordan man parser XML i Java. Den beskriver W3C DOM, SAX og JDOM.

XML parsning i Java. Denne artikel beskriver hvordan man parser XML i Java. Den beskriver W3C DOM, SAX og JDOM. Denne guide er oprindeligt udgivet på Eksperten.dk XML parsning i Java Denne artikel beskriver hvordan man parser XML i Java. Den beskriver W3C DOM, SAX og JDOM. Den forudsætter kendskab til Java og XML.

Læs mere

Videregående programmering i Java

Videregående programmering i Java Videregående programmering i Java Dag 5 Model View Controller arkitekturen Model View Controller arkitekturen (MVC) Evt.: Rekursion Læsning: VP 19 Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html

Læs mere

Hvilket sprog er hurtigst

Hvilket sprog er hurtigst Denne guide er oprindeligt udgivet på Eksperten.dk Hvilket sprog er hurtigst Denne artikel forsøger at aflive forskellige myter om hvilke sprog der er hurtigst. Den forudsætter ikke noget særligt. Skrevet

Læs mere

SAX Simple API for XML.

SAX Simple API for XML. SAX Simple API for XML. En API (Application Programming Interface) et bibliotek eller et sæt af funktioner eller metoder. SAX er et sådant bibliotek af abstrakte metoder som f. eks. startdocument() eller

Læs mere

//Udskriver System.out.println("Hej " + ditfornavn + " " + ditefternavn + "."); System.out.println("Du er " + dinalder + " aar gammel!

//Udskriver System.out.println(Hej  + ditfornavn +   + ditefternavn + .); System.out.println(Du er  + dinalder +  aar gammel! Denne guide er oprindeligt udgivet på Eksperten.dk Brugerinput i Java Denne her artikel gennemgår diverse ting ved brug af brugerinput i Java. Den starter med det simple og fortæller derefter skridt for

Læs mere

CVS som KS-værktøj E3-104. Branching, Merging m.v.

CVS som KS-værktøj E3-104. Branching, Merging m.v. CVS som KS-værktøj E3-104 Branching, Merging m.v. Gennemgang af Oprettelse af CVS-træ Tilføj filer Commit Fil forskelle Merging Branching Ekstra værktøjer Avanceret Oprettelse af CVS-træ report graphics

Læs mere

Parallelle algoritmer

Parallelle algoritmer Parallelle algoritmer 1 Von Neumann s model John von Neumann 1903-57 Von Neumanns model: Instruktioner og data er lagret i samme lager, og én processor henter instruktioner fra lageret og udfører dem én

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Hvordan vælger jeg dokumentprofilen?

Hvordan vælger jeg dokumentprofilen? Hvordan vælger jeg dokumentprofilen? Valget af OIOUBL profil i en konkret dokumentudveksling vil bl.a. afhænge af, hvilke OIOUBL profiler den anden part i udvekslingen understøtter. Et konkret eksempel

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Om binære søgetræer i Java

Om binære søgetræer i Java Om binære søgetræer i Java Mads Rosendahl 7. november 2002 Resumé En fix måde at gemme data på er i en træstruktur. Måden er nyttig hvis man får noget data ind og man gerne vil have at det gemt i en sorteret

Læs mere

import java.awt.event.*; import java.awt.*; Container <- Panel <- Applet Component <- Button <- Checkbox <- ScrollPane <- Label

import java.awt.event.*; import java.awt.*; Container <- Panel <- Applet Component <- Button <- Checkbox <- ScrollPane <- Label Programmering 1999 Forelæsning 13, tirsdag 12. oktober 1999 Oversigt Grafiske brugergrænseflader. Komponenter: Knapper, tekstfelter, checkbokse... Vinduer (containere). Hændelser, hændelsesstyret programmering.

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 29. februar, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Kursus navn: Indledende programmering Kursus nr. 02101

Kursus navn: Indledende programmering Kursus nr. 02101 Danmarks Tekniske Universitet Side 1 af 8 sider Skriftlig prøve, den 15. december 2007 Kursus navn: Indledende programmering Kursus nr. 02101 Tilladte hjælpemidler: Alle skriftlige hjælpemidler Vægtning

Læs mere

Forelæsning Uge 1 Torsdag

Forelæsning Uge 1 Torsdag Forelæsning Uge 1 Torsdag Objekters tilstand og opførsel Java og BlueJ Skabelse af objekter (via new-operatoren) Iteration (gentagelser) og parametrisering Java's for løkke Parametre i metoder Forskellige

Læs mere

Eksamens spørgsmål i Java HTML - DataBase 3. Semester (i)

Eksamens spørgsmål i Java HTML - DataBase 3. Semester (i) Eksamens spørgsmål i Java HTML - DataBase 3. Semester (i) 1: KLASSE METODE KONSTRUKTØR EKS. PÅ TYPE (VARIABLE) PUBLIC/PRIVATE OBJECT UD FRA KLASSE KALD METODE TILFØR PARAMETER TIL METODE RETURNERE VARIBEL.

Læs mere

Hashing og hashtabeller

Hashing og hashtabeller Datastrukturer & Algoritmer, Datalogi C Forelæsning 12/11-2002 Hashing og hashtabeller Teknik til at repræsentere mængder Konstant tid for finde og indsætte men ingen sortering af elementerne Specielt

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter Skriftlig eksamen i Datalogi Modul 1 Vinter 1998/99 Opgavesættet består af 5 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 16% Opgave 2 12% Opgave 3 10% Opgave

Læs mere

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen Studiepraktik Thomas Bøgholm boegholm@cs.aau.dk Mikkel Hansen mhan@cs.aau.dk Jacob Elefsen jelefs12@student.aau.dk 1 Studiepraktik -- program Program onsdag 10.00 10.15 Registrering af fremmøde og gennemgang

Læs mere

Hvad er et distribueret objekt? Plan 12.3. Objekter, objektreferencer, metoder, parameteroverførsel. Objekter: notation

Hvad er et distribueret objekt? Plan 12.3. Objekter, objektreferencer, metoder, parameteroverførsel. Objekter: notation Plan 12.3. Oversigt over grundlæggende begreber Java: eksempel på applikation, programmering og oversættelse Uddybning af grundlæggende begreber Java RMI implementation Forklaring af øvelsen Hvad er et

Læs mere

A Profile for Safety Critical Java

A Profile for Safety Critical Java A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2013 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 5. marts, 2013 Dette projekt udleveres i to dele. Hver del har sin deadline, således

Læs mere

Dag 10 Flertrådet programmering

Dag 10 Flertrådet programmering Videregående programmering i Java Dag 10 Flertrådet programmering Fremlæggelse af programmering/status for projekter Dokumentation med javadoc Flertrådede designmønstre: Arbejdstråd, Producent Konsument,

Læs mere

Forelæsning Uge 3 Mandag

Forelæsning Uge 3 Mandag Forelæsning Uge 3 Mandag ArrayList Collection (samling af objekter) med variabelt antal elementer Der er mange andre Collection typer (se Collection interfacet i JavaDoc) MusicOrganizer projektet Eksempel

Læs mere

Tredjepart webservices

Tredjepart webservices Tredjepart webservices 4. juni 2015 USS Dok. Klik her for at angive tekst. 1/12 Indholdsfortegnelse Introduktion... 3 Miljøer... 3 Adgang... 3 API kald... 4 GET: /authorizations... 4 Input 4 Output 4 Output

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter Skriftlig eksamen i Datalogi Modul 1 Sommer 1999 Opgavesættet består af 5 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 15% Opgave 2 15% Opgave 3 8% Opgave

Læs mere

Programmering. Udvidet Programmering. Kurserne. Kurset: programmering i sproget Java. Lærerne: Morten Larsen og Peter Sestoft

Programmering. Udvidet Programmering. Kurserne. Kurset: programmering i sproget Java. Lærerne: Morten Larsen og Peter Sestoft Kurserne Kurset: programmering i sproget Java Programmering og Udvidet Programmering Lærerne: Morten Larsen og Peter Sestoft Kursusmål: I skal lære at skrive interessante programmer i Java Forudsætninger:

Læs mere

Hanne Niels Edith Harald Carsten Jørgen Henrik.

Hanne Niels Edith Harald Carsten Jørgen Henrik. Programmering 1999 Forelæsning 18, fredag 5 november 1999 Anvendelse af udvalgssortering Quicksort Rapportopgave Programmering 1999 KVL Side 18-1 Eksempel 2 på anvendelse af udvalgssortering Sortering

Læs mere

Prioritetskøer ved»heap«, simulering

Prioritetskøer ved»heap«, simulering Datastrukturer & Algoritmer, Datalogi C Forelæsning 25/11-2003 Prioritetskøer ved»heap«, simulering Yet another teknik til at repræsentere mængder Hvor hashtabellen fremviste: Konstant tid for finde og

Læs mere

Introduction til.net remoting i VB.NET

Introduction til.net remoting i VB.NET Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i VB.NET Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i VB.NET. Den forudsætter

Læs mere

Hashing og hashtabeller

Hashing og hashtabeller Datastrukturer & Algoritmer, Datalogi C Forelæsning 16/11-2004 Hashing og hashtabeller Teknik til at repræsentere mængder Konstant tid for finde og indsætte men ingen sortering af elementerne Specielt

Læs mere

Kursus 02199: Programmering. Lidt om forelæseren. Velkommen til. Praktisk information: kursusaktiviteter. Praktisk information: forelæsninger

Kursus 02199: Programmering. Lidt om forelæseren. Velkommen til. Praktisk information: kursusaktiviteter. Praktisk information: forelæsninger Velkommen til Kursus 02199: Programmering ved Anne Haxthausen IMM, DTU 4. september, 2001 1. Praktisk information 2. Introduktion til faget (a) kursusmål og motivation (b) hvad er en datamaskine, et program,

Læs mere

Martin Olsen. DM507 Projekt Del I. 19. marts 2012 FOTO: Colourbox

Martin Olsen. DM507 Projekt Del I. 19. marts 2012 FOTO: Colourbox Martin Olsen DM0 Projekt 0 Del I. marts 0 FOTO: Colourbox Indhold Indledning... Opgave... Opgave... Opgave... Opgave... Opgave... Opgave... Opgave... Kildekode til SimpleInv.java... Kildekode til MergeSort.java...

Læs mere

Geografisk lokalisering i JSP

Geografisk lokalisering i JSP Denne guide er oprindeligt udgivet på Eksperten.dk Geografisk lokalisering i JSP Denne artikel forklarer lidt om hvorfor og hvordan man laver geografisk lokalisering og viser noget kode. Der er andre artikler

Læs mere

Sekvenser af længde mellem 1 og 4 ord repræsenteres ved en klasse Segment, som uden grundlæggende ser således ud:

Sekvenser af længde mellem 1 og 4 ord repræsenteres ved en klasse Segment, som uden grundlæggende ser således ud: Besvarelse af opgave til formuleret til øvelserne 10. september 2002 Datastrukturer og algoritmer Henning Christiansen 22/9-2002 Følgende er ikke en eksakt besvarelse af opgaven, idet den benytter hashtabeller

Læs mere

#AlleKanKode. Lektion 2 - Konstanter og Variabler

#AlleKanKode. Lektion 2 - Konstanter og Variabler #AlleKanKode Lektion 2 - Konstanter og Variabler Disclaimer / Ansvarsfraskrivelse Alt du deler og siger mm bliver optaget. Lad være med at dele privat oplysninger, adgangskoder, kreditkort oplysninger

Læs mere

DM01 DM01. 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 13/5-2003. Side 1 af 7

DM01 DM01. 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk. D12, Elias 13/5-2003. Side 1 af 7 DM01 DM01 4. Obl. Afl. Jacob Christiansen, 130282, jacob.ch@mail.tdcadsl.dk D12, Elias 13/5-2003 Side 1 af 7 DM01 Indholdsfortegnelse: BILAG:...2 1 FORMÅL:...3 2 KLASSER:...4 2.1 DNA2:...4 2.1.1 METODER:...4

Læs mere

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt.

Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at diskutere nogle metoder til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer (2. semester). Mål

Læs mere

BRP Tal. Om computer-repræsentation og -manipulation. Logaritmer

BRP Tal. Om computer-repræsentation og -manipulation. Logaritmer BRP 13.9.2006 Tal. Om computer-repræsentation og -manipulation. Logaritmer 1. Opgaverne til i dag dækker det meste af stoffet 2. Resten af stoffet logaritmer binære træer 3. Øvelse ny programmeringsopgave

Læs mere

Forelæsning Uge 2 Mandag

Forelæsning Uge 2 Mandag Forelæsning Uge 2 Mandag Objekters tilstand og opførsel BlueJ og Greenfoot Java Skabelse af objekter (via new-operatoren) Iteration (gentagelser) og parametrisering Forskellige slags variabler Afleveringsopgave:

Læs mere