Time-Independent Invocation(TII) and Interoperable Routing
|
|
- Pål Guttormsen
- 7 år siden
- Visninger:
Transkript
1 Time-Independent Invocation(TII) and Interoperable Routing Presentert av: Henning Kulander Eivind Mork Erlend Garberg
2 Introduksjon TII er en teknikk som muliggjør at forespørsler kan leve i nettet uten at klienten er tilkoblet. Utvider CORBA med Store-and-Forward funksjonalitet. En utvidelse av AMI.
3 Bakgrunn De tidligste CORBA-systemene baserte seg på synkron kommunikasjon. Eneste mulighet for asynkron kommunikasjon var oneway-kall og Deferred synchronous-kall. Problemene med disse var at man enten mangler garantier, eller at de vanskelige å bruke i applikasjonene.
4 Bakgrunn (2) Synkrone kall
5 Bakgrunn(3) Messaging spec Muliggjør applikasjoner med asynkrone metodekall. I tillegg kan man bruke tidsuavhengige metodekall, som vil si at et asynkront kall kan få svar også i en annen kjøring eller etter eventuelle nettavbrudd.
6 Bakgrunn(4) - TII 1. Forespørsel fra klient. 2. Ruter sender forespørsel videre til enderuteren. 3. Ruteren sender forespørselen til målobjektet. 4. Målobjektet behandler forespørselen. 5. Svar sendes tilbake til enderuteren. 6. Svaret sendes til klientruteren. 7. Applikasjonen mottar svaret.
7 AMI (Asynchronous method invocation) Nytt i CORBA Messaging Asynkronitet fører til mindre komplekse programmer, fordi man slipper å ha tråder. Med CORBA AMI slipper man å bruke one-way operasjoner som workaround. Tilbyr to modeller for asynkron metodeinvokering, Polling og Callback.
8 AMI(2) - Polling Ved metodekall får du et Pollerobjekt i retur. Klienten kan bruke pollerobjektet til å sjekke om det har kommet svar fra serveren, og også eventuelt blokkere i påvente av dette.
9 AMI(3) - Callback Her sendes en ReplyHandler som parameter i metodekallet. Når serveren sender svar blir det sendt som en forespørsel til ReplyHandleren. Mer effektiv, men gir økt kompleksitet i klienten.
10 Motivasjon for TII Mulighet for å køe opp meldinger når du ikke er online. Forespørselen vil ikke dø mens maskinen er avslått eller offline. Klient- og tjenerobjektet trenger ikke å endres for å ta i bruk TII. Interoperable Routing muliggjør forespørsler til maskiner du ikke har direkte tilgang til. (For eksempel bak en brannvegg)
11 Grunnleggende om TII Er essensielt en spesialisering av AMI. Brukes av applikasjoner som krever garantert levering av forespørsler selv om klient eller tjener midlertidig er avkoblet nettet. Sendes gjennom et nettverk av rutere fra klient til tjener. (Som SMTP i epost) Forespørslene kan lagres i ruterne, selv om klient og/eller tjener går ned.
12 TII i en aksjeapplikasjon Applikasjonen brukes til å kjøpe aksjer og hente aksjekurser over et WAN. Applikasjonen kjører på en laptop, som ikke alltid er oppkoblet mot nettet. Brukeren skal kunne bruke applikasjonen sømløst, selv om maskinen ikke er på nett. Dette nødvendiggjør bruk av TII, som bufrer forespørsler og svar i ruterne. Legg merke til at det finnes en ruter i CORBAmellomvaren på laptopen.
13 TII 1 Initiell forespørsel 1. Bruker klikker kjøp-knapp i GUI. 2. Applikasjonens ORB prøver å sende forespørselen direkte til server gjennom AMI. 1. Hvis maskinen er på nett, vil ORBen sende forespørselen og motta svar. 2. I vårt tilfelle vil dette feile, da maskinen ikke er på nett.
14 TII 2 Valg av ruter 1. Siden bruk av AMI feilet, leter klient-orben etter en ruter som kan behandle forespørselen. 1. Hvordan ORBen finner ruteren er implementasjonsspesifikt, for eksempel kan den lokale CORBA-ruteren brukes. 2. CORBA-ruteren identifiseres med en vanlig CORBA objektreferanse, siden den implementerer standard CORBA Messaging IDL.
15 TII 3 Sending av forespørsel Sendingen av forespørselen kan skje ved to ulike modeller, avhengig om du har valgt Callback eller Polling i klienten. Dersom klienten bruker Callbacks, benytter ORBen Router-interfacet til MessageRoutermodulen, dersom klienten bruker Polling, benyttes PersistentRequestRouter-interfacet i stedet.
16 TII 3 Callbacks module MessageRouting { struct RequestInfo { /* described below */ }; typedef sequence<requestinfo> RequestInfoSeq; interface Router { // Send one request to a server. void send_request (in RequestInfo req); // Send multiple requests to a server. void send_multiple_requests (in RequestInfoSeq req_seq); }; };
17 TII 3 Callbacks (2) Ved Callbacks brukes Router-interfacet når man sender meldinger. Interfacet bruker send_request() til å sende en forespørsel, og send_multiple_requests() for å sende flere. Som parameter(e) sendes en eller flere RequestInfo-structer. RequestInfo-structen inneholder informasjon ruteren bruker til å sende forespørselen.
18 TII 3 Callbacks (3) module MessageRouter { interface Router; // Defined above typedef sequence<router> RouterList; struct RequestInfo { // List of routers visited thus far. RouterList visited; // List of routers remaining to visit. RouterList to_visit; // Object we re invoking our request upon. Object target; }; // Index of IOR profile being used to send // this request. unsigned short profile_index; // Location where the reply should return to. ReplyDestination reply_destination; // Quality of service parameters. Messaging::PolicyValueSeq selected_qos; // Contents of the message. RequestMessage payload;
19 TII 3 Callbacks (4) module MessageRouting { enum ReplyDisposition { TYPED, UNTYPED }; struct ReplyDestination { ReplyDisposition handler_type; Messaging::ReplyHandler handler; sequence<string> typed_excep_holder_repids; }; }; For å bruke en applikasjonsspesifikk ReplyHandler, settes handler_type feltet til TYPED av klient-orben. UNTYPED feltet brukes mellom rutere, siden de ikke kan vite om datatypene til operasjonene.
20 TII 3 Polling module MessageRouting { //... RequestInfo og Router som vist tidligere. // Forward declaration. interface PersistentRequest; interface PersistentRequestRouter { PersistentRequest create_persistent_request(in unsigned short profile_index, in RouterList to_visit, in Object target, in CORBA::PolicyList current_qos, in RequestMessage payload); }; };
21 TII 3 Polling (2) Ved Polling brukes PersistentRequestRouterinterfacet når man sender meldinger. Interfacet bruker create_persistent_request() til å sende en forespørsel, og får tilbake et PersistentRequest objekt, som klient-orben kan bruke til å sjekke om det har kommet svar og eventuelt hente svaret.
22 TII 3 Polling(3) module MessageRouting { interface PersistentRequest { readonly attribute boolean reply_available; GIOP::ReplyStatus get_reply(in boolean blocking, in unsigned long timeout, out MessageBody reply_body) raises (ReplyNotAvailable); attribute Messaging::ReplyHandler associated_handler; }; };
23 TII 3 Polling (4) PersistentRequestobjektet som returneres av create_persistent_request() implementeres av ruteren selv, og brukes av klient-orben til å sjekke etter tilgjengelig svar med reply_available() og å hente svaret med get_reply(). Attributtet associated_handler er nil dersom klienten bruker polling. Klienten kan skifte fra polling til callback ved å la associated_handler peke på en ReplyHandler som kan ta imot svaret.
24 TII 3 Polling (5) module MessageRouting { interface UntypedReplyHandler : Messaging::ReplyHandler { void reply(in string operation_name, in GIOP::ReplyStatus reply_type, in MessageBody reply_body); }; }; Dersom klienten bruker Polling-modellen, etablerer ruteren seg som reply target ved å implementere UntypedReplyHandler interfacet. Målobjektet sender svaret til ruteren gjennom dette interfacet.
25 TII 4 Målruteren Forespørselen ender opp i en ruter som kan kontakte målobjektet. Denne ruteren fungerer som en proxy for klienten. Forespørselen fra ruteren til objektet skjer synkront, som for en vanlig forespørsel.
26 TII 5 Behandling av svar Målruteren omgjør svaret til en forespørsel, enten ved å kalle en annen ruters send_request() eller ved å kontakte ReplyHandler-objektet direkte. Vitsen med å ikke levere direkte, er at ruteren ikke nødvendigvis har direkte tilgang til ReplyHandler-objektet, for eksempel pga en brannmur.
27 Konklusjon TII er en spesialisering av AMI som støtter Store-and-forward semantikken. TII-forespørsler kan overleve klientprosessen, noe som betyr at svaret kan bli behandlet av en helt annen applikasjon. TII krever ingen endringer i allerede eksisterende klient- og tjenerobjekter som bruker AMI.
CORBA Objektmodell (Java RMI)
CORBA Objektmodell (Java RMI) IN-ODP høst 2002 foreleser: Frank Eliassen Frank Eliassen, SRL & Ifi/UiO 1 OMG & CORBA Object Mangement Group (OMG): non-profit organisasjon med over 800 medlemsorganisasjoner
DetaljerDistribuerte objekter og objekt-basert mellomvare
Distribuerte objekter og objekt-basert mellomvare INF 5040 H2006 foreleser: Frank Eliassen INF5040 Frank Eliassen 1 Hvorfor objekt-basert distribuert mellomvare? Innkapsling naturlig tilnærming til utvikling
DetaljerDistribuerte objekter og objekt-basert mellomvare
Distribuerte objekter og objekt-basert mellomvare INF5040 foreleser: Olav Lysne Frank Eliassen, SRL & Ifi/UiO 1 Hvorfor objekt-basert distribuert mellomvare? Innkapsling naturlig tilnærming til utvikling
DetaljerDistribuerte objekter og objekt-basert mellomvare
Distribuerte objekter og objekt-basert mellomvare INF 5040 H2004 foreleser: Frank Eliassen Frank Eliassen, SRL & Ifi/UiO 1 Hvorfor objekt-basert distribuert mellomvare?! Innkapsling " naturlig tilnærming
DetaljerGruppe 11. Frank Petter Larsen Vegard Dehlen
qoskets Gruppe 11 Frank Petter Larsen Vegard Dehlen Problematikk Dagens mellomvare for objektbaserte distribuerte systemer har ikke innebygget støtte for å spesifisere, overvåke og kontrollere tjenestekvalitet
DetaljerCORBA Component Model (CCM)
CORBA Component Model (CCM) INF5040 Høst 2005 Erlend Birkedal Jan Erik Johnsen Tore Ottersen Løkkeberg Denne presentasjonen CORBA Svakheter ved CORBA Object Model Komponenter CORBA Component Model Hva
DetaljerHentet fra Suns Totorial:
Sun s Hello-eksempel Hentet fra Suns Totorial: http://java.sun.com/j2se/1.4.2/docs/guide/idl/gshome.html Andre nyttige URIer: Java IDL documentation: http://java.sun.com/j2se/1.4.2/docs/guide/idl/index.html
DetaljerObject interaction. Innhold. Abstraksjon 03.09.2007. Grunnleggende programmering i Java Monica Strand 3. september 2007.
Object interaction Grunnleggende programmering i Java Monica Strand 3. september 2007 1 Innhold Til nå: Hva objekter er og hvordan de implementeres I klassedefinisjonene: klassevariable (fields), konstruktører
DetaljerCORBA & Java RMI & J2EE & CORBA CCM OMG & CORBA
CORBA & Java RMI & J2EE & CORBA CCM IN-ODP høst 2001 foreleser: Frank Eliassen Frank Eliassen, Simula RL &Ifi/UiO 1 OMG & CORBA Object Mangement Group (OMG): non-profit organisasjon med over 800 medlemsorganisasjoner
DetaljerStein Gjessing. Institutt for informatikk. Universitetet i Oslo. Institutt for informatikk
INF1010 11. mai 2017 Monitorer med kritiske regioner og passive venting innbygget i Java - Kommunikasjon mellom prosesser i Java (Ikke pensum i INF1010) Stein Gjessing Universitetet i Oslo 1 Repetisjon:
DetaljerINF329,HØST
TTHROUGH THROUGH THE FIREWALL KAPITTEL 16 BUILDING SECURE SOFTWARE INF329,HØST 2005 Isabel Maldonado st10900@student.uib.no 1 Innledning Kort om firewall Hva er det som foresaker at en brannmur blokkerer
Detaljer6105 Operativsystem og nettverk
6105 Operativsystem og nettverk Leksjon 6b Nettverkslaget: Ruting og ICMP-protokollen Rutere, ruting, videresending og hopp Rutingtabeller Fragmentering av IP-pakker ICMP-protokollen, ping og traceroute
DetaljerKapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy
Kapittel 13 Advanced Hypertext Implementation Martin Lie Ole Kristian Heggøy 08.11.04 Forbedring av arkitektur Problem med alt i ett -løsning: Spredning av forretningslogikk. Avhengighet mellom presentasjonssider
DetaljerJava RMI (Remote Method Invocation) Gruppe 9: Ivar Steien Rasmussen Tom Anders Dalseng Andreas Petlund
Java RMI (Remote Method Invocation) Gruppe 9: Ivar Steien Rasmussen Tom Anders Dalseng Andreas Petlund Antagelser og forutsetninger Implementasjonseksemplet kompileres og kjøres på Java SDK 1.4.2 Dokumentasjon
DetaljerDistributed Component Object Model. Utvikling av distribuerte applikasjoner. Utvidelse av COM for støtte av distribuerte objekter
DCOM Distributed Component Object Model Almir Delkic og Frank Jensen Institutt for Informatikk, Universitetet i Oslo, oktober 2003 Introduksjon Utvikling av distribuerte applikasjoner Utvidelse av COM
DetaljerTjenestebeskrivelse Internett Ruter Innhold
Tjenestebeskrivelse Internett Ruter Innhold Internett Ruter... 2 Enkel brannmur... 2 Dual-stack IPv4 og IPv6... 2 IPv4 NAT... 2 DHCP tildeling av IPv4 adresser i LAN... 2 SLAAC tildeling av IPv6 adresser
DetaljerOOT Seminar H-97 CORBA. Praktisk del
OOT Seminar H-97 CORBA Praktisk del Valg av ORB implementasjon Har valgt å bruke Visigenic sin ORB implementsjon ORB en er 100% Java kodet Bygger på OMG sin IDL to Java language mapping fra Jun 97 Gratis
DetaljerJava RMI. Introduksjon. Markus Foss Hans-Gunnar Vold
Java RMI Markus Foss Hans-Gunnar Vold Introduksjon Java Remote Method Invocation Tillater metodekall mellom Java virituelle maskiner Introdusert i Java 1.02 Javas svar på RPC, men er objekt orientert,
DetaljerDCOM. 21. oktober Mai et al. Hva er egentlig en komponent?
DCOM 21. oktober 2004 Mai et al. Komponent Hva er egentlig en komponent? En komponent er et programvareobjekt, ment å samvirke med andre komponenter, og tilbyr en gitt funksjonalitet. En komponent har
DetaljerBruk av Spark. ikke til dytting og sitting. Universitetet i Tromsø 22. mars Torbein Kvil Gamst Bruk av Spark, Side 1
Bruk av Spark ikke til dytting og sitting Universitetet i Tromsø 22. mars 2010 Torbein Kvil Gamst Bruk av Spark, Side 1 Direktemelding, eller instant messaging (IM) Direktemelding, eller instant messaging
DetaljerE-post fra Aditro Lønn
Innhold E-post fra Aditro Lønn... 2 SMTP protokollen... 2 Aktivering av SMTP på e-post tjener... 2 Innstillinger i Neptune Meny... 2 Innstillinger i Aditro Lønn... 3 Kontroll av innstillinger... 4 Endring
DetaljerINF1010 - Seminaroppgaver til uke 3
INF1010 - Seminaroppgaver til uke 3 Oppgave 1 I denne oppgaven skal vi lage et klassehiearki av drikker. Alle klassene i hiearkiet skal implementere følgende grensesnitt p u b l i c i n t e r f a c e Drikkbar
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
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
DetaljerVanlige spørsmål om Teletopia SMS Gateway
Vanlige spørsmål om Teletopia SMS Gateway Dette dokumentet er ment å gi svar på noen av de vanligste spørsmålene i forbindelse med etableringen av SMS tjeneste via Teletopia SMS Gateway. Dokumentet er
DetaljerObjekt-interaksjon i objektbasert mellomvare:
Objekt-interaksjon i objektbasert mellomvare: Fjerne metodekall (RMI) Foreleser: Frank Eliassen Frank Eliassen, SRL & Ifi/UiO 1 Plan CORBA objektmodell Java RMI Prinsipper for realisering av fjernmetodekall
DetaljerInstallasjonsveiledning
Finale Systemer as Installasjonsveiledning FINALE Årsoppgjør FINALE Rapportering FINALE Konsolidering FINALE Driftsmidler FINALE Avstemming NARF Avstemming FINALE Investor Versjon 22.0 Definisjoner...3
Detaljer6105 Operativsystem og nettverk
6105 Operativsystem og nettverk Leksjon 6b Nettverkslaget: Ruting og ICMP-protokollen Rutere, ruting, videresending og hopp Rutingtabeller Fragmentering av IP-pakker ICMP-protokollen, ping og traceroute
DetaljerKapittel 9. Distribusjon. Fjernbruker. Tjenermaskin LAN WAN. Nærbruker. Figur 9-1: En enkel klient/tjener distribusjon
Kapittel 9 Distribusjon Tjenermaskin Fjernbruker LAN Nærbruker WAN Figur 9-1: En enkel klient/tjener distribusjon 195 Tjenermaskin Fjernbruker LAN Replikert tjener Nærbruker WAN Figur 9-2: Klient/tjener-konfigurasjon
DetaljerINF1010. Stein Michael Storleer (michael) Lenkelister
INF1010 Stein Michael Storleer (michael) Lenkelister Lenke Datastrukturen lenkeliste class { = null ; foran foran = new () ; class { = null ; foran foran = new () ; foran. = new () ; class { = null ; foran
DetaljerJAVA Oppsummering for IS-102. Even Åby Larsen
JAVA Oppsummering for IS-102 Even Åby Larsen even.larsen@hia.no 26. april 2010 Innhold 1 Innledning 3 2 Hva er et Java program 4 2.1 Kjøring av java programmer................. 4 3 Grammatikk for Java
DetaljerTest 2 OOP. - Prøveeksamen
Test 2 OOP - Prøveeksamen 2007 - Viktig: Jobb med oppgavene som om det var eksamen Ikke snakk med sidemann, ta korte pauser, benytt kun skriftlige hjelpemidler du hadde tenkt til å hatt med på eksamen.
DetaljerINF1010, 15. januar 2014 2. time. Parametriserte klasser (generiske klasser) Stein Gjessing Inst. for Informatikk Universitetet i Oslo
INF1010, 15. januar 2014 2. time Parametriserte klasser (generiske klasser) Stein Gjessing Inst. for Informatikk Universitetet i Oslo Repetisjon fra gamle dager: Metoder med parametre En metode uten parameter:
DetaljerLagene spiller sammen
Lagene spiller sammen Dere har lært om lagene, men hvordan virker dette i praksis? Utgangspunkt i Ethernet/IP/TCP/Applikasjonslag Trafikkpolitiet i Internett (ISP og congestion control) Hvordan oversettes
Detaljer6105 Windows Server og datanett
6105 Windows Server og datanett Labøving: TCP/IP verktøy i Windows Introduksjon I denne øvingen vil du lære Windows kommandoer som brukes mye i nettverksadministrasjon og feilsøking. Kommandoene kjøres
DetaljerKTN1 - Design av forbindelsesorientert protokoll
KTN1 - Design av forbindelsesorientert protokoll Beskrivelse av A1 A1 skal tilby en pålitelig, forbindelsesorientert tjeneste over en upålitelig, forbindelsesløs tjeneste A2. Det er flere ting A1 må implementere
DetaljerInnledende Analyse Del 1: Prosjektbeskrivelse (versjon 2)
Innledende Analyse Del 1: Prosjektbeskrivelse (versjon 2) Iskra Fadzan og Arianna Kyriacou 25.mars 2004 Innhold 1 Hovedmål 2 2 Mål 2 3 Bakgrunn 3 4 Krav 4 1 1 Hovedmål I dette prosjektet skal vi se nærmere
DetaljerGjøre noe i hele treet = kalle på samme metode i alle objekten. Java datastruktur Klassestruktur
Godkjent oblig 1? Les e-post til din UiO-adresse Svar på e-post fra lablærer Ingen godkjenning før avholdt møte med lablærer Godkjentlistene brukes ikke til å informere om status for obligene Ta vare på
DetaljerInnledende Analyse Del 1.2
Innledende Analyse Del 1.2 Arianna Kyriacou 1. juni 2004 Innhold 1 Spesifikk beskrivelse 2 1.1 Hovedmål............................... 2 1.2 Mål (mer konkret).......................... 2 1.3 Krav..................................
DetaljerEn liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden.
En liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden. La meg med en gang si at jeg er rimelig grønn i Linux verden så dere får bære over med meg
Detaljer6107 Operativsystemer og nettverk
6107 Operativsystemer og nettverk Labøving 6ab TCP/IP-verktøy og IPv4-protokollen Introduksjon Øvingen er skrevet for Linux, men vil også fungere fra Mac OSX eller Windows. Kommandoene som brukes finnes
DetaljerTTM4175 Hva er kommunikasjonsteknologi?
1 TTM4175 Hva er kommunikasjonsteknologi? Del 3 Bjørn J. Villa Stipendiat Institutt for Telematikk, NTNU bv@item.ntnu.no 2 Innhold Begrepet «Kommunikasjonsteknologi» Definisjon, historikk og en liten refleksjon
DetaljerInnføring i SOAP. Agenda
Innføring i SOAP Mari Svalastog (mariss@ifi.uio.no) Joakim Blomskøld (joakimbl@ifi.uio.no) Erlend Nilsen (erlend@ifi.uio.no) Sten Amundsen (stena@simula.no) Dato: 28 oktober 2003 Agenda Motivasjon og oversikt
DetaljerObjekt-interaksjon i objektbasert mellomvare:
Objekt-interaksjon i objektbasert mellomvare: Fjerne metodekall (RMI) Foreleser: Frank Eliassen Frank Eliassen, SRL & Ifi/UiO 1 Plan!CORBA objektmodell!java RMI!Prinsipper for realisering av fjernmetodekall
DetaljerWeb Services. Olav Lysne
Web Services Olav Lysne Til nå har dere hørt om Mellomvare for objektbasert kommunikasjon brukes vanligvis i anvendelser som er innen én organisasjon, eller innen et tett konsortium av samarbeidende organisasjoner
DetaljerINF1000 Metoder. Marit Nybakken marnybak@ifi.uio.no 16. februar 2004
INF1000 Metoder Marit Nybakken marnybak@ifi.uio.no 16. februar 2004 Motivasjon Når man begynner å skrive store programmer, vil man fort oppleve at programmene blir uoversiktlige. Det blir vanskeligere
DetaljerKonfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL 9.4.2 databasesystem.
Konfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL 9.4.2 databasesystem. Konfigurere server er en oppgave for administrator. All installasjon og konfigurasjon må utføres ved å kjøre
DetaljerEks 1: Binærtre Binærtretraversering Eks 2: Binærtre og stakk
Godkjent oblig 1? Les e-post til din UiO-adresse Svar på e-post fra lablærer Ingen godkjenning før avholdt møte med lablærer Godkjentlistene brukes ikke til å informere om status for obligene Ta vare på
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
DetaljerINF1010 MVC i tekstbaserte programmer
INF1010 MVC i tekstbaserte programmer Marit Nybakken marnybak@ifi.uio.no 9. februar 2004 Marit har ingen utdanning innen systemutvikling og vet antageligvis ikke hva hun prater om. Hun har dog skumlest
DetaljerUke 8 Eksamenseksempler + Ilan Villanger om studiestrategier. 11. okt Siri Moe Jensen Inst. for informatikk, UiO
Uke 8 Eksamenseksempler + Ilan Villanger om studiestrategier 11. okt. 2011 Siri Moe Jensen Inst. for informatikk, UiO 1 Innhold Eksamen INF1000 Høst 2011: Oppgave 4-7 Tekstmanipulering Metoder med og uten
DetaljerAndroid- Programmering. Våren 2016
Android- Programmering Våren 2016 Oversikt Long-running operasjoner Introduksjon til Android services On-demand service Bruk av servicer på tvers av prosesser Long-running operasjoner Hva mener vi med
DetaljerTTM4175 Hva er kommunikasjonsteknologi?
1 TTM4175 Hva er kommunikasjonsteknologi? Del 3 Bjørn J. Villa PhD, Senior Engineer, UNINETT AS bv@item.ntnu.no // bv@uninett.no 2 Innhold Begrepet «Kommunikasjonsteknologi» Definisjon, historikk og en
DetaljerLøsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004
Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004 Oppgave 1 RMI-tjenerobjekt (databasewrapper) A Sentral tjenermaskin med database, RMi-register og RMI-tjenerprogram vis kart gjør bestilling
DetaljerEtter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering
Etter uke 6 skal du Kjenne til motivasjonen for objektorientert programmering Introduksjon til objektorientert programmering INF1001 Høst 2016 Forstå hva en klasse er, og forskjellen på klasse og objekt
DetaljerObligatorisk oppgave 5: Labyrint
Obligatorisk oppgave 5: Labyrint INF1010 Frist: mandag 24. april 2017 kl. 12:00 Versjon 1.0 (1709ba6 ) Innhold 1 Innledning 2 2 Notasjon og terminologi 3 2.1 Formelle definisjoner.........................
DetaljerOversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays
Oversikt C programmering 1 C programmering Introduksjon Kildekode Kompilering Hello world Hello world med argumenter 2 Funksjoner 3 Datatyper 4 Pekere og arrays 5 Kontrollstrukturer Lars Vidar Magnusson
Detaljer6105 Windows Server og datanett
6105 Windows Server og datanett Labøving: TCP/IP verktøy i Windows Introduksjon I denne øvingen vil du lære Windows kommandoer som brukes mye i nettverksadministrasjon og feilsøking. Kommandoene kjøres
DetaljerDDS-CAD. Oppsett av student-/demolisens
S DDS-CAD Oppsett av student-/demolisens Bruk av DDS-CAD er lisens beskyttet. Dette er fysiske USB nøkkel som inneholder kryptert lisensinformasjon. Programvaren er dermed beskyttet for å sikre legitim
DetaljerObjekt-interaksjon. INF 5040 høst 2006
Objekt-interaksjon Foreleser: Frank Eliassen Frank Eliassen, SRL & Ifi/UiO 1 Plan Prinsipper for realisering av fjernmetodekall (RMI) Objekt-tjenere CORBA RMI Java RMI Fler-trådede objekt-tjenere Frank
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
DetaljerArv. Book book1 = new Book(); book1. title = "Sofies verden" class Book { String title; } class Dictiona ry extends Book {
Arv Arv (eng: inheritance) er en mekanisme for å bygge videre på eksisterende klasser og regnes ofte som varemerket til objektorientert programmering. Når arv brukes riktig, kan den gjøre koden ryddigere
DetaljerDagens tema INF1070. Signaturer. Typekonvertering. Pekere og vektorer. struct-er. Definisjon av nye typenavn. Lister
Dagens tema Signaturer Typekonvertering Pekere og vektorer struct-er Definisjon av nye typenavn Lister Dag Langmyhr,Ifi,UiO: Forelesning 24. januar 2005 Ark 1 av 20 Signaturer I C gjelder alle deklarasjoner
DetaljerÅ bruke Java API-et til å sortere tabeller/arraylister der elementene er (referanser til) objekter
Sortering og søking i Java-API-et Tabeller og Arraylister Comaparable Comparator equals() LC9D Videregående programmering Semesterplan: http://aitel.hist.no/fag/vprg/index_lc9d.php Høgskolen i Sør-Trøndelag,
DetaljerAntall sider (inkl. forsiden): 7. Alle trykte og håndskrevne
Side 1 av 7 Bokmålstekst Emne: PROGRAMMERING (nytt pensum, 10 studiep.) Grupper: laa, lab, lac, lia, lib, lic Eksamensoppgaven best~r av: Tillatte hjelpemidler: Antall sider (inkl. forsiden): 7 Alle trykte
DetaljerHvordan sende lønnsslipper pr. e-post til de ansatte direkte fra HogiaLønn
10.11.2015 Hvordan sende lønnsslipper pr. e-post til de ansatte direkte fra HogiaLønn 2 Innhold Hvordan sende lønnsslipper pr. e-post til de ansatte direkte fra HogiaLønn... 1 LØNNSSLIPPER PR. E-POST...
DetaljerObligatorisk oppgave 4: Lege/Resept
Obligatorisk oppgave 4: Lege/Resept INF1010 Frist: mandag 27. mars 2017 kl. 12:00 Versjon 1.0 (111c894 ) Innhold 1 Innledning 1 1.1 Begreper................................ 2 2 Pasienter 2 3 Leger og lister
DetaljerProducts Solutions Services. Nye muligheter, nye opplevelser. Personlig og digital. Mitt Endress+Hauser.
Products Solutions Services Nye muligheter, nye opplevelser. Personlig og digital. Mitt Endress+Hauser. Nye muligheter, nye opplevelser. Personlig og digital. Mitt Endress+Hauser. 2 Nye muligheter, nye
DetaljerDel 3: Evaluere uttrykk
Del 3: Evaluere uttrykk Hva skal vi gjøre? Hvordan lagre Asp-verdier Hvilke operasjoner må jeg implementere? Er operasjonen lovlig? Utføre operasjonen Strukturen til interpreten vår f.asp 3&4 Interpret
DetaljerObjekt-interaksjon. Plan. INF 5040 høst 2005
Objekt-interaksjon Foreleser: Frank Eliassen Frank Eliassen, SRL & Ifi/UiO 1 Plan!Prinsipper for realisering av fjernmetodekall (RMI)!Objekt-tjenere!CORBA RMI!Java RMI!Fler-trådede objekt-tjenere Frank
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
Detaljer1. INNHOLDSFORTEGNELSE
1. INNHOLDSFORTEGNELSE 1 INNHOLDSFORTEGNELSE...2 2 OM BRUKERMANUALEN...3 2.1 Kapittel beskrivelse...3 3 INTRODUKSJON...4 4 OVERSIKT...5 5 BESKRIVELSE AV FUNKSJONER...6 5.1 GetCategory...6 5.2 GetCategoryType...6
DetaljerIN1010 V18, Obligatorisk oppgave 5
IN1010 V18, Obligatorisk oppgave 5 Innleveringsfrist: Tirsdag 17.04. kl 10:00 Versjon 1.3 (12.04.2018) Sist modifisert av Silje Merethe Dahl. Innledning I denne oppgaven skal du bruke rekursjon til å lage
DetaljerFeilsøking i BO. Olav Syse, konsulent. Jan Terje Hansen, service manager. Be business intelligent
Feilsøking i BO Olav Syse, konsulent Jan Terje Hansen, service manager Hovedfokus: Business Intelligence 900 ansatte i Norge, Sverige, Danmark, Finland, Estland, Latvia, Litauen og Polen 135 ansatte i
DetaljerPlan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk
Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk (Ghezzi&Jazayeri kap.7 frem til 7.4) Neste uke: ML Ark 1 av 16 Forelesning 16.10.2000 Parameteroverføring
DetaljerLøsningsforslag Test 2
Løsningsforslag Test 2 Oppgave 1.1: Interface definerer et grensesnitt som kan implementeres av flere klasser. Dette gir en standardisert måte å kommunisere med objekter av en eller flere relaterte klasser.
DetaljerEKSAMEN I FAG TDT4100 Objekt-orientert programmering. Fredag 3. juni 2005 KL. 09.00 13.00
Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap EKSAMEN I FAG
DetaljerINF Notater. Veronika Heimsbakk 10. juni 2012
INF1010 - Notater Veronika Heimsbakk veronahe@student.matnat.uio.no 10. juni 2012 1 Tilgangsnivåer 2 CompareTo Modifier Class Package Subclass World public Y Y Y Y protected Y Y Y N no modifier Y Y N N
DetaljerINF1010 våren januar. Objektorientering i Java
INF1010 våren 2017 25. januar Objektorientering i Java Om enhetstesting (Repetisjon av INF1000 og lær deg Java for INF1001 og INF1100) Stein Gjessing Hva er objektorientert programmering? F.eks: En sort
DetaljerGUI («Graphical User Interface») del 2
GUI («Graphical User Interface») del 2 Interaksjon med brukeren Hendelsesdrevet programmering Tråder i GUI Et spill basert på klikkbare ruter Se også på Infoskrivet https://www.uio.no/studier/emner/matnat/
DetaljerInstallasjonsveiledning. Phonzoadapter
Installasjonsveiledning Phonzoadapter Side 1av 8 Copyright Phonzo AS Installasjonsveiledning Phonzoadapter Dato: 08.02.2006 Versjon 2.0 Innhold 1 INTRODUKSJON... 2 2 DERSOM DU HAR LEDIG NETTVERKSKONTAKT...
DetaljerVelkommen til Pressis.
1 Velkommen til Pressis. Dette er et veiledende dokument med linker i innledningen. Veiledningene vil ta deg igjennom de forskjellige tilkoblings muligheter du har med oss. Hvis du bare har behov for en
DetaljerHvordan sende lønnsslipper per e-post til de ansatte direkte fra HogiaLønn
Hvordan sende lønnsslipper per e-post til de ansatte direkte fra HogiaLønn Lønnslipper per e-post I denne veiviseren beskriver vi hva du må gjøre i HogiaLønn for å kunne sende lønnsslipper per e-post til
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.
DetaljerEnkle generiske klasser i Java
Enkle generiske klasser i Java Oslo, 7/1-13 Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Del 1: Enkle pekere Før vi tar fatt på det som er nytt i dette notatet, skal vi repetere litt
DetaljerLøse reelle problemer
Løse reelle problemer Litt mer om løkker, metoder med returverdier, innlesing fra fil og strenger INF1000, uke5 Ragnhild Kobro Runde MER OM LØKKER Repetisjon fra forrige uke: while Syntaks: while (condition)
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
DetaljerAVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE. Antall sider (Inkl forsiden): 8. Alle trykte og håndskrevne
I EKSAMENSOPPGA VE Side av 8 AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE Emne: PROGRAMMERING Grupper: laa, 1AB, lac, lia Eksamensoppgaven av: Tillatte hjelpemidler: best~r Antall sider (Inkl forsiden):
DetaljerDel 4 Noen spesielle C-elementer
Del 4 Noen spesielle C-elementer 1 RR 2016 Header-filer inneholder Prototypene til funksjonene i standard biblioteket Verdier og definisjoner som disse funksjonene bruker #include #include
DetaljerRekursjon. Binærsøk. Hanois tårn.
Rekursjon Binærsøk. Hanois tårn. Hvorfor sortering (og søking) er viktig i programmering «orden» i dataene vi blir fort lei av å lete poleksempel internett «alt» er søking og sortering alternativer til
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Side 1 Det matematisk-naturvitenskapelige fakultet Eksamen i: INF5120, Modellbasert Systemutvikling Eksamensdag: torsdag 1. juni, 2006 Tid for eksamen: 0900-1200 Oppgavesettet er på
DetaljerHva består Internett av?
Hva består Internett av? Hva er et internett? Et internett = et nett av nett Ingen sentral administrasjon eller autoritet. Mange underliggende nett-teknologier og maskin/programvareplatformer. Eksempler:
DetaljerHva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; }
Hva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; Hva skrives ut på skjermen når følgende kode utføres? int [] tallene =
DetaljerDato Versjon Endring/status Utført av 2006-07-01 0.1 Første versjon Asgeir Husum 2006-08-23 0.2 Lagt til beskrivelse av postlevering Lars Myrås
UDE Konfigurasjon av Microsoft Outlook Dato Versjon Endring/status Utført av 2006-07-01 0.1 Første versjon Asgeir Husum 2006-08-23 0.2 Lagt til beskrivelse av postlevering Lars Myrås 2006-08-24 1.0 Endelig
DetaljerHuldt & Lillevik Ansattportal 2009-10-20. Ansattportal. Versjon 3.1.23
Ansattportal Versjon 3.1.23 Innhold Hva er nytt i denne versjonen... 2 1 Oppdatere til 3.1.23... 2 1.1 Oppdatere versjon via Internett...2 1.2 Oppdatere versjon via CD...3 2 Arbeidsflyt i Ansattportalen...
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 12. desember 2008 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 7 sider. Vedlegg: Tillatte hjelpemidler: INF2220
Detaljer1. Hent NotaPlan Online Backup på www.notaplan.no 2. Trykk på Download i menyen og på Download i linjen med Notaplan Backup
1 Systemkrav ADSL eller minimum ISDN via router. Ved automatisk backup: Min. Windows XP / 2000 / 2003 (pga. Service) Ved manuellt system: Min. Windows 98 SE NotaPlan Backup bør installeres på den/de maskiner
DetaljerVeiledning i bruk av Fjernaksess
Veiledning i bruk av Fjernaksess Fjernaksess-tjenesten er til for å kunne benytte sykehus-pcer fra andre lokasjoner, f.eks. hjemmefra eller når du er på reise. Merk! - FØR du tar PCen med deg hjem, må
Detaljerclass Book { String title; } class Dictionary extends Book { int wordcount; } class CartoonAlbum extends Book { int stripcount; }
Arv Arv (eng: inheritance) er en mekanisme for å bygge videre på eksisterende klasser og regnes ofte som varemerket til objektorientert programmering. Når arv brukes riktig, kan den gjøre koden ryddigere
DetaljerNye muligheter! Fjernlån med Oria og Alma Fjernlån 2015, 2. oktober Thon Hotell Opera
Nye muligheter! Fjernlån med Oria og Alma Fjernlån 2015, 2. oktober Thon Hotell Opera Hvem er jeg? Asbjørn Risan Produkteier, Oria Produkteiergruppen Masterutdannet bibliotekar ved Høgskolen i Oslo med
Detaljer