Hvad er et distribueret objekt? Plan Objekter, objektreferencer, metoder, parameteroverførsel. Objekter: notation
|
|
|
- Robert Brøgger
- 10 år siden
- Visninger:
Transkript
1 Plan 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 distribueret objekt? Et objekt hvis metoder kan kaldes fra andre processer dvs. som tillader fjernprocedurekald ( fjernmetodekald?) bemærk metoden udføres lokalt principielt processer som kører på forskellige maskiner ikke nødvendigvis fjerne kald/brug af konstruktorer eller attributter De basale problemer: hvordan etableres forbindelse til objekt i en anden proces? hvordan kommunikeres hvilken metode, der ønskes kaldt? hvordan overføres parametre og returværdi? Design spørgsmål: hvorledes opnås en passende transparens? semantik: hvad er opførslen i tilfælde af fejl? Objekter: notation Class Client <kode dvs. definitionen af class Client> et objekt, som er en instans af class Client Objekter, objektreferencer, metoder, parameteroverførsel Class Client Server s = new Server; Data d = new Data(); String txt = s.p(d); s.p(d) class Server // konstruktorer server(){..; // attributter Worker w; class Data objektet har en attribut, som er en instans af class Data class Data <en tekst> // metoder String p(data d){..; Objektreference (variabel): kan være implementeret som C pointer (tænk på pointer til datastruktur i C) Metodekald (lokalt): vil være oversat til maskinkode eller bytecode bruger ikke nødvendigvis navnet p
2 Opgave: Skriv pæn definition af class Client Løsning Class Client Server s = new Server; Data d = new Data(); String txt = s.p(d); Class Client Server s = new Server; Data d = new Data(); String txt = s.p(d); Class Client Server s; String txt; public Client () { s = new Server(); d = new Data(); public void gettext() { txt = s.p(d); Distribuerede objekter: begreber Navneservice: service som returnerer referencer til distribuerede objekter ud fra symbolske, globale navne (tekster) Reference til distribuerede objekter ( fjernreference?) En objektreference, som logisk set refererer til et distribueret objekt Parameteroverførsel parametre til fjernprocedurekald bør kunne være af vilkårlig type, herunder være et vilkårligt objekt call by value: overførsel af kopi, vs. call by reference: overførsel af reference Marshalling: forbehandling af argumenter til fjernprocedurekald, især serialisering: transformation af objekter til bytesekvens Stub (proxy): et objekt på klientsiden som kaldet går igennem Skelet: et objekt på serversiden som kaldet går igennem Dispatcher: tråd på serverside, som modtager kaldet, behandler evt. dette ved at kalde metoder i skelettet A Referencer i fjernprocedurekald (jf. CDK figur 5.6) Stub Fjernref. modul Komm Klient med objekt A Komm Fjernref. modul Skelet A har en fjernreference til B refererer logisk set til B. A s fjernreference er i virkeligheden en reference til stubben (svarer til en C pointer). Stubben indeholder en egentlig, global reference til B (en datastruktur med IP nummer m.m.). Den globale reference til B oversættes af fjernreferencemodulet hos serveren til en lokal reference til B (igen svarende til en C pointer). Navneservice ikke vist på tegning B Server med distr. objekt B
3 Plan Hello World! Opgave 1 Oversigt over grundlæggende begreber Java: eksempel på applikation, programmering og oversættelse Uddybning af grundlæggende begreber Java RMI implementation Forklaring af øvelsen HelloApplet sayhello() Hello World! Klientprogram: applet som ikke selv ved hvad den skal skrive ud. HelloImpl String sayhello() { return Hello World! ; Serverprogram: indeholder distribueret objekt med sayhello() kunne være kompliceret server, som vi vil styre via browser Opgave 1: klientsidens kildetekst <html> <applet codebase=../../classes/ code=rmihello.helloapplet width=350 height=120> </applet> </html> package RMIHello; import..; public class HelloApplet { Hello obj; String msg; void init() { try { lookup() modtager // /HelloServer og returnerer en fjernreference obj = (Hello)Naming.lookup( // + getcodebase().gethost() + /HelloServer ); msg = obj.sayhello(); catch (..) {.... Opgave 1: et interface som både server og klient skal kende package RMIHello; import..; public interface Hello implements Remote { public String sayhello() throws RemoteException;
4 Opgave 1: serverens kildetekst package RMIHello; import..; public class HelloImpl extends UnicastRemoteObject implements Hello { public HelloImpl { super(); // eksporterer objektet // dvs. indføjer i det lokale kommunikationsmodule public String sayhello() { return Hello World! ; // definerer metoden der kan kaldes fjernt public static void main(..) {.. // security manager try { HelloImpl obj = new HelloImpl(); Naming.rebind( HelloServer,obj); // offentliggører objektet under symbolsk navn catch (..) {.. Klient Brug af RMI Registry et obj = (Hello)Naming.lookup (..HelloServer ); msg = obj.sayhello(); tid Server obj = new HelloImpl(); Naming.rebind( HelloServer,obj); Opgave 1: oversættelse Brug af "Stubbe" Hello.java HelloApplet.java HelloImpl.java javac javac javac Hello.class HelloApplet.class HelloImpl.class Oprettelse af reference til fjernt objekt Klient Har du et objekt ved navn "HelloServer"? Stub bytecode + stub instans Server Kommando: javac X.java X.java javac rmic v1.2 HelloImpl_Stub.class brug Klient Stub Server
5 Opgave 1 kør RMI involverer tre processer maskine 1: <prompt> java rmiregistry & <prompt> java RMIHello.HelloImpl maskine 2: <prompt> appletviewer RMIHello/hello.html Proces A Har du et objekt ved navn "o"? Den tredje proces (C): På serversiden er der også en naming service objektet obj er registreret under navnet "o" obj Proces B o Proces C Ny opgave: skriv almindelig Java klient, som svarer til HelloApplet package RMIHello; import java.rmi.naming; import java.rmi.remoteexception; public class HelloClient { String message = "blank"; Hello obj = null; public HelloClient() { try { obj = (Hello)Naming.lookup("// /HelloServer"); message = obj.sayhello(); catch (Exception e) { System.out.println("HelloClient exception: " + e); public static void main(string args[]) { HelloClient hc = new HelloClient(); System.out.println(hc.message);
6 Plan Oversigt over grundlæggende begreber Java: eksempel på applikation, programmering og oversættelse RMI Middleware Softwaren som muliggør grænseflade til fjerne objekter: metodekald oprettelse af referencer Implementeret vhja. sockets Uddybning af grundlæggende begreber Java RMI implementation Forklaring af øvelsen Marshalling/unmarshalling serialisering, genskabelse af struktur fejlhåndtering oversættelse af referencer A Stub Komm Fjernref. modul Opgave 1: Stubbe Java serialisering // Bytecode for class HelloImpl_Stub samt en instans af den overføres til klient // på passende tidspunkt Class HelloImpl_Stub public String Hello() { <serialize> <send to remoteobj> <remoteobj> public class Person implements Serializable { private String name; private String place; private int year; public Person(String n, String p, int y) { name = n; place = p; year = y; Muliggør entydig konvertering mellem objekter og bytesekvenser Serialiser et objektet dannet med sætningen Person p = new Person( Jensen, Kbh. + / + DK, 1975); Hvorfor overføre klassenavn? versionsnummer?
7 To måder at overføre objekt referencer mellem processer (1) Via naming service jf. HelloServer (2) Som parametre til fjernprocedurekald Opgave: hvordan bruges metode (2) i CDK s tavle eksempel? Fælles: de objekter, der overføres referencer til, skal implementere et interface, som er kendt hos både server og klient, og som nedarver fra java.rmi.remote de objekter, der overføres referencer til, skal være instanser af klasser som der på server siden er genereret stubbe til Forskel: (1) kræver rebind()/lookup i rigtig rækkefølge (1) kræver brug af symbolsk navn på det/de distribuerede objekter Fejlhåndtering, RMI request/reply protokol Basis for kommunikationsmodulet i Java RMI er en request/reply protokol med tre basale operationer: byte[] dooperation(remoteobjectref r, methodid m, byte[] args) sender fjernprocedurekald, efter serialisering, fra klient til server. ud fra r, findes (ip,port) m pakkes med ind i bytesekvens byte[] getrequest() lytter efter andre processer, der har kaldt dooperation() sendreply(byte[] r, InetAddress ip,int port) sender svar Oversættelse af referencer Når getrequest() modtager et kald af byte[] dooperation(remoteobjectref r, methodid m, byte[] args) skal objekt og metode findes (og argumenter skal genskabes som objekter). Objekt findes via fjernreferencemodul. Metode findes enten via skelet (i JDK 1.1) eller via Javas reflektion (i JDK 1.2 og senere). Skal dooperation gentages hvis der ikke kommer svar? Skal getrequest filtrere dubletter?
8 Plan Refleksion Oversigt over grundlæggende begreber Java: eksempel på applikation, programmering og oversættelse Uddybning af grundlæggende begreber Java RMI implementation: refleksion tråde/synkronisering RMISecurityManager Forklaring af øvelsen Reflektion i Java: klasser kan forholde sig til sig selv! for en givent navn på en klasse, kan man få en reference til et objekt, der repræsenterer klassen (et class Class objekt) for et givet class Class objekt, kan man få en reference til et array af objekter, der repræsenterer klassens metoder. C har en begrænset refleksiv facilitet idet C programmet har adgang til deres eget stinavn main(int argc, char * argv[]) { printf( usage: %s <filnavn>, argv[0]);.. Class: package java.lang; java.lang.class & java.lang.reflect.method class Class { Class forname(string classname) {.. Method getdeclaredmethod(string methodname, Class[] paramtypes){.. Method[] getdeclaredmethods(){.. Method: package java.lang.reflect; class Method { void invoke(object obj,object[] params) {.. obj = (Hello)Naming.lookup (..HelloServer ); msg = obj.sayhello(); RMI og tråde obj = new HelloImpl(); Naming.rebind( HelloServer,obj);... obj.sayhello(); //??? Metoder (f.eks. sayhelloi()) i distribuerede objekter kan blive udført af flere tråde samtidigt. Hvilke tråde? Er det et problem?
9 (RMI)SecurityManager I Java er et SecurityManager objekt et objekt der håndterer sikkerhed for en proces: hvilke fremmede maskiner må tråde i processen kontakte (via sockets)? hvilke klasser må downloades fra fremmede maskiner? En SecurityManager styres af en sikkerhedspolitik fil og/eller ved at overskrive metoder i class SecurityManager // fra class HelloImpl if (System.getSecurityManager == null) { System.setSecurityManager = new RMISecurityManager(); try { HelloImpl obj = new HelloImpl(); Naming.rebind(HelloServer,obj); catch (..) {.. UnsafeRMISecurityManager UnsafeRMISecurityManager() { super(); public void checkconnect(string host,int port) { if ( host.equals("lt nielsj") host.equals(" ") ) { System.err.println("Accepting.. ); else super.checkconnect(host,port); Plan Oversigt over grundlæggende begreber Opgave 2 Tilføj en metode HelloImpl.sayHello() der tager et argument hvis værdi angiver hvilket sprog, der skal siges "hallo" på. Java: eksempel på applikation, programmering og oversættelse Uddybning af grundlæggende begreber Java RMI implementation Forklaring af øvelsen HelloApplet sayhello( Danish ) Hej Verden! HelloImpl
10 Opgave 3 Et fjernt objekt hos klienten skal angive sproget/nationaliteten. HelloApplet HelloImpl sayhello(myid) Hej Verden! IdImpl getid() Danish
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
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),
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
RMI med BlueJ. Tutorial lavet af Jákup W. Hansen TSU 2006 3.semester 11. desember 2007
RMI med BlueJ Tutorial lavet af Jákup W. Hansen TSU 2006 3.semester 11. desember 2007 Hvad er RMI? Når man arbejder med Distribuerede Systemer, som igen vil sige at man ønsker at flere end én komputer
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
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
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
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,
Videregående programmering i Java
Videregående programmering i Java Dag 6 Komponenter (og lidt Swing og MVC) Læsning: VP 4, evt. VP 6 Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html Grafiske komponenter
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
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
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
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:
Objektorienteret Programmering
Objektorienteret Programmering Struktureret Systemudvikling Jan Bendtsen Automation and Control Indhold Lidt om programmeringssprog Klasser i Java Klasser i C++ Oversættelse og kørsel af kode Et eksempel:
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
DM502. Peter Schneider-Kamp ([email protected]) http://imada.sdu.dk/~petersk/dm502/
DM502 Peter Schneider-Kamp ([email protected]) 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!
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
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,
Jacob Nordfalk. Ingeniørhøjskolen i København. Nykøbing F itvisioncenter 24. februar 2004
Genbrugelige komponenter og designmønstre i Java Jacob Nordfalk Ingeniørhøjskolen i København Nykøbing F itvisioncenter 24. februar 2004 Program Om Jacob Nordfalk introduktion (ikke-teknisk del) Komponentbaseret
Software Construction 1 semester (SWC) Spørgsmål 1
Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /
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
Objektorienterede metoder
Objektorienterede metoder Denne gang: Designmønstre Skabende designmønstre: Fabrikeringsmetode/Fabrik, Singleton, Abstrakt fabrik (Toolkit), Prototype, Objektpulje Singleton eksempel: Forskellige slags
Integrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere
Integrationsmanual Anvendelse af webservice til kursusoversigt i Campus Brugervejledning til udviklere Moderniseringsstyrelsen Webservice manual til udviklere 2016 1 1. Indholdsfortegnelse Nyt kapitel
Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, 19-22.
Klasser og Objekter i Python Uge 46 Learning Python: kap 15-16, 19-22. Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. En kage form Klassens
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,
Introduktion til ActionScript, fortsat
Introduktion til ActionScript, fortsat Kaspar Rosengreen Nielsen [email protected] i n t e r a c t i v e s p a c e s. n e t Kaspar Nielsen, [email protected] 1 Dagens program Opsamling
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.
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 [email protected]. Besvarelsen skal
Programmering og Problemløsning, 2017
Programmering og Problemløsning, 2017 Martin Elsman Department of Computer Science University of Copenhagen DIKU September 27, 2017 Martin Elsman (DIKU) Programmering og Problemløsning, 2017 September
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:
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
Java Programmering. En bog for begyndere. Skrevet af Henrik Kressner
Java Programmering En bog for begyndere Skrevet af Henrik Kressner Indholdsfortegnelse Introduktion...3 1 Introduktion til Java...4 1.1 Javakoden...4 1.2 Det første program...6 1.2 Skriv til skærmen...6
Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet.
MOX og APOS2 Forord Dette dokument er en del af APOS version 2 manualerne. APOS version 2 (APOS2 herefter) er et organisation, klassifikation og personale system baseret på Sag & Dokument standarderne.
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
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
Maskinarkitektur. Lars Kristensen [email protected]. Christian Storm [email protected]. dmasark 1
Maskinarkitektur Lars Kristensen [email protected] Christian Storm [email protected] dmasark 1 Praktiske oplysninger http://www.daimi.au.dk/dmasark dmasark 2 Forelæsninger Tirsdag 12.15-14.00, Store Aud,
Programmering I Java/C#
Programmering I Java/C# Dit første projekt Datatekniker Intro to C# C# (C Sharp) Et enkelt, moderne, generelt anvendeligt, objektorienteret programmeringssprog Udviklet af Microsoft, ledet af danskeren
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
Eksempel på en database: studenter, kurser, eksamener
Udvidet Programmering 1999 Forelæsning 20, fredag 12. november 1999 Relationsdatabaser: relationer, tupler, attributter Forespørgselssproget SQL Databasesystemet PostgreSQL Tilgang til relationsdatabaser
Skriftlig eksamen i Datalogi
Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2
Computer netværk og TCP/IP protokoller. dcomnet 1
Computer netværk og TCP/IP protokoller dcomnet 1 Maskinarkitektur.. fokus på intern organisation af en enkelt computer: dcomnet 2 Computer netværk.. kommunikation mellem maskiner forbindet i et netværk:
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
Databaseadgang fra Java
Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,
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.
SigmaT.
Java + Groovy Disposition Om SigmaT Eksempel på indlejring af Groovy Overvågning af PEM Ønske om dynamisk loaded Java uden at fifle med classloaderen Groovy til hjælp Opsamling hvad jeg ikke har fortalt
Polymorfi. Arv (inheritance) Abstrakte klasser, substitutionsprincippet, overriding, statisk og dynamisk type. Coercion
Polymorfi Arv (inheritance) Abstrakte klasser, substitutionsprincippet, overriding, statisk og dynamisk type Coercion Tvangskonvertering (forfremmelse og begrænsning) Oversigt Abstrakt klasse abstrakt
Introduktion til C programmering
Introduktion til C programmering Rasmus Erik Voel Jensen Uge 17 [email protected] Dagens forelæsning Formalia Indledende programmering, main, include, printf, variable, scanf, if-else, statements, eksempler
METODER ARV KLASSER. Grundlæggende programmering Lektion 5
METODER KLASSER ARV Grundlæggende programmering Lektion 5 1 METODER Sekvenser af kode om samme emne 2 REPETITION Række af statements der udfører en handling Mindst én metode der hedder main Forskellen
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
Refleksion i Java. 8. juli 2003
Refleksion i Java Udarbejdet af: Jesper Tejlgaard Pedersen Anders Baumann Tine Thorn IT-højskolen i København 4-ugersprojekt F2001 Vejleder: Kasper Østerbye 8. juli 2003 1 Indhold 1 Forord 3 2 Indledning
Sproget Six. Til brug i rapportopgaven på kurset Oversættere. Vinter 2006. Abstract
Sproget Six Til brug i rapportopgaven på kurset Oversættere Vinter 2006 Abstract Six er baseret på det sprog, der vises i figur 6.2 og 6.4 i Basics of Compiler Design. Den herværende tekst beskriver basissproget
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
Speciale. Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP)
Speciale Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP) Speciale efterår 2005 Teknisk Informationsteknologi Jan Lauritzen & Mads
Arkitektur for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Arkitektur for begyndere Denne artikel beskriver forskellige basale n-tier arkitekturer. Som man bør kende og have valgt inden man går igang med at udvikle
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
Klasser og Objekter i Python. Uge 11
Klasser og Objekter i Python Uge 11 Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. Klassens objekter er instanser af klassen. En programudførelse
//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
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ø
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
EG Data Inform. Byggebasen. WCF og webservices. Jens Karsø
EG Data Inform Byggebasen WCF og webservices Jens Karsø 10 Indholdsfortegnelse Byggebasen Services indledning... 2 Målsætning... 2 Valg af teknologier... 3 Kommunikationsmodel for byggebasen... 3 Services.byggebasen.dk...
