41
next previou s Objektorientering användningsområden, speciellt olika programspråk Innehåll Objektorientering olika användningsområden En kort översikt Olika programmeringsspråk Några exempel på olika oo-språk Uppbyggnad, likheter, särarter Något om distribuerad OO-programmering OOMPA 2000 Föreläsning 14

Objektorientering användningsområden, speciellt olika programspråk

  • Upload
    pier

  • View
    45

  • Download
    0

Embed Size (px)

DESCRIPTION

Innehåll Objektorientering olika användningsområden En kort översikt Olika programmeringsspråk Några exempel på olika oo-språk Uppbyggnad, likheter, särarter Något om distribuerad OO-programmering. OOMPA 2000 Föreläsning 14. - PowerPoint PPT Presentation

Citation preview

Page 1: Objektorientering användningsområden, speciellt olika programspråk

nextprevious

Objektorientering användningsområden, speciellt

olika programspråk

InnehållObjektorientering olika användningsområden

En kort översikt

Olika programmeringsspråk

Några exempel på olika oo-språk

Uppbyggnad, likheter, särarter

Något om distribuerad OO-programmering

OOMPA 2000Föreläsning 14

Page 2: Objektorientering användningsområden, speciellt olika programspråk

previous next 2

Objektorientering användningsområden, speciellt olika programspråkObjektorientering olika användningsområdenObjektorientering olika användningsområden• Programspråk

– Här kom ideerna till och är fortfarande ”störst” på oo

• Mjukvarukonstruktion– Strukturering och modellering sker naturligt med oo

• Databaser– OO databaser ofta mer naturliga och ibland bättre än andra

• Artificiell intelligens– Relativt enkelt att beskriva komplexa skeenden och förlopp med

oo

• Gränssnitt– Många system för gränssnittskonstruktion är oo

• Operativsystem– Intresset för oo finns hos många som utvecklar operativsystem

• Distribuerade system– Många system för distribuerad programmering är oo

Page 3: Objektorientering användningsområden, speciellt olika programspråk

previous next 3

Objektorientering användningsområden, speciellt olika programspråk

Objektorientering• Världen modelleras från vad den består av snarare än från

dess funktion• Data och beteende nära sammanhållet• Polymorfi• Inkapsling• Arv• Fördelar

– ...– ...– ...

Page 4: Objektorientering användningsområden, speciellt olika programspråk

previous next 4

Objektorientering användningsområden, speciellt olika programspråk

Programmeringsspråk• Objektorientering har i huvudsak utvecklats i

samband med utvecklande av programspråk och programmeringstekniker

• Två huvudtyper av oo språk– statiskt typade

• "den skandinaviska skolan" efter framförallt Simula och Beta

– dynamiskt typade

• Trend att oo programmeringsspråk används och krävs i allt större utsträckning i industrin

Page 5: Objektorientering användningsområden, speciellt olika programspråk

previous next 5

Objektorientering användningsområden, speciellt olika programspråk

Simulering...• Med simulering menas i allmännhet tekniken att

representera ett dynamiskt system med en modell– genom experiment med modellen vinner man sedan

information om systemet

• Två typer– Tidsstyrning, den simulerade tiden stegas fram med

konstanta steg, modelldata uppdateras för varje tidssteg– Händelsestyrning, förändringar approximeras med vissa

händelser. Vid varje händelse uppdateras berörda modelldata.

Page 6: Objektorientering användningsområden, speciellt olika programspråk

previous next 6

Objektorientering användningsområden, speciellt olika programspråk

... Simulering (forts)• En orsak till det första objektorienterade språkets

tillkomst, SIMULA, var att man önskade simulera komplexa förlopp– I SIMULA finns det också inbyggda stöd för att simulera olika

företeelser– Huvudprincipen är pseudoparallell exekvering, där objekt

sammanförs till processer– Varje objekt förstår meddelanden som wait, hold, activate

• Objektorientering och simulering passar (som väntat) väldigt bra ihop

• Det finns också en hel del stöd för simulering i Smalltalk– Det finns bla en hel del specialdesignade simuleringsklasser

(ingår dock inte längre i "standardleveransen")– Om inte annat är det enkelt att konstruera eget

Page 7: Objektorientering användningsområden, speciellt olika programspråk

previous next 7

Objektorientering användningsområden, speciellt olika programspråk

Grafiska gränssnitt• Grafiska gränssnitt är i någon mening objektorienterade

– dom består av grafiska komponenter som både har ett utseende och ett beteende

• Med oo tekniker konstrueras enkelt ramverk ("frameworks") och gränssnittsbyggare som gör det enkelt att utveckla grafiska applikationer

• Idag är dom flesta gränssnittsbyggare oo-baserade– Smalltalks med bla VisualWorks, VisualSmalltalk,

VisualAge– Java med VisualAge, Parts, Symantec– C++– NeXT– Delphi

– ....

Page 8: Objektorientering användningsområden, speciellt olika programspråk

previous next 8

Objektorientering användningsområden, speciellt olika programspråk

Analys/design• Som vi har sett är oo analys- och designmetoder mer och mer

dominerande på marknaden

• Med sitt naturliga sätt att modellera världen utgående från objekt istället för funktion och den stora aktiviteten inom oo kan vi förvänta oss att oo analys och design kommer bli ännu mer dominerande

• Flera företag jobbar också med oo utveckling, både internt och i organiserad form som i– OMG, med bla förslag på standard för analys och design– UML är föreslagen som OMG-standard

• Stora projekt genomförs också ofta med oo tekniker– många EU-projekt använder UML eller liknande

Page 9: Objektorientering användningsområden, speciellt olika programspråk

previous next 9

Objektorientering användningsområden, speciellt olika programspråk

Databaser (DB)• Traditionella databaser passar ganska bra när

datastrukturerna är relativt statiska

• Om applikationerna är data och processintensiva har inte riktigt relationsmodellen passat. Exempel– ingenjörsdesign– CAD/CAM

• På senare år har ett stort intresse för objektorienterade databaser uppvisats

• Dessa databaser strävar efter att erbjuda de fördelar som oo språk ger– inkapsling, polymorfi, beteende, arv, mm

Page 10: Objektorientering användningsområden, speciellt olika programspråk

previous next 10

Objektorientering användningsområden, speciellt olika programspråk

DB Exempel• Idag finns många oo databaser på marknaden

– Gemstone• baserat på Smalltalk. Påminner i funktion om en

Smalltalkimage med GC mm. Kan integreras fullt ut med VisualWorks. Finns gränssnitt mot C++, C, Ada, Pascal, Objective C, Fortran, Java, mfl. Kan (inkapslat) hantera relationsdatabaser

– O2– ONTOS– ObjectStore– Versant

• C++, Smalltalk

– ORION

Page 11: Objektorientering användningsområden, speciellt olika programspråk

previous next 11

Objektorientering användningsområden, speciellt olika programspråk

DB Prestanda• I relationsdatabaser lagras data i tabeller, vilket kräver en

omvandling vid översättande till programspråk.

• Tester har visat att en ODBMS i vissa situationer kan vara 100 ggr snabbara än en relations DBMS (tex US Navy testade read respektive write i Versant och DB2).

• Catell mfl gjorde tester med att sätta in och plocka ut poster i flera olika OO- och relationsdatabaser– OO databaserna var ca 30 ggr snabbare

• Mer interaktiva problem med kontinuerlig uppdatering av databasen verkar lösas bättre med OO lösning än en relationsdatabaslösning

• En oo DB brukar använda lokala cachar.

Page 12: Objektorientering användningsområden, speciellt olika programspråk

previous next 12

Objektorientering användningsområden, speciellt olika programspråk

Editorer• Många editorer modelleras med fördel mha av objekt. Därför

är det också naturligt att konstruera dem med oo tekniker

• Ritverktyg

• Skrivverktyg

• CASE

• CAD/CAM

Page 13: Objektorientering användningsområden, speciellt olika programspråk

previous next 13

Objektorientering användningsområden, speciellt olika programspråk

Multimedia• Att hantera olika media kan vara komplext.

Vi måste hantera– hårdvara– nätverk– komplexa tillämpningar– omgivningar, olika plattformar, bibliotek– olika format, standards, integration av "gammal" mjukvara– icke temporala respektive temporala data

• Med oo tekniker kan vi strukturera komplexiteten– Vissa hävdar tom att OO nästan är en nödvändighet för att lyckas i

större omfattning (Gibb och Tsichritzis)

• Idag finns frameworks för multimedia– NeXTStep, Andrew Toolkit, Gibb och Tsichritzis,

Page 14: Objektorientering användningsområden, speciellt olika programspråk

previous next 14

Objektorientering användningsområden, speciellt olika programspråk

Analys och design• OO-baserade analys- och designtekniker är i

dag så gott som standard

• Från OMT, ObjectOry till OMG-standarden UML

• Fördelen med dessa tekniker jämfört med icke oo-baserade är bla att dom är naturliga, ligger nära problemen, anpassningsbara, modulära, återanvändbara

Page 15: Objektorientering användningsområden, speciellt olika programspråk

previous next 15

Objektorientering användningsområden, speciellt olika programspråk

Struktur och mönster• Intresset för s.k. Design patterns har under 90-talet

accelererat

• Man försöker– beskriva och återvinna goda och framgångsrika lösningar, eller

mönster– klassificera dessa mönster så att dom skall bli lättillgängliga– skapa en kraftfull vokabulär

• Objektorientering passar speciellt bra för sådana aktiviteter

• Metod– "introspektion" (av framgångsrika system)– traditionell OO design/analys– standardiserade mallar

Page 16: Objektorientering användningsområden, speciellt olika programspråk

previous next 16

Objektorientering användningsområden, speciellt olika programspråk

Operativsystem• Idag implementeras operativsystem ofta med oo tekniker och

språk

• I framtiden kommer troligen också mer objektorienterade stöd erbjudas direkt åt användarna– tex Java kommer (enligt rykten) byggas in i vissa OS

• Kravet på distribution och att arbetet inom detta fält främst drivs inom oo kommer också troligen leda till objektorienterade operativsystem

• OO operativsystem fanns egentligen redan på 70-talet– Smalltalk!

Page 17: Objektorientering användningsområden, speciellt olika programspråk

previous next 17

Objektorientering användningsområden, speciellt olika programspråk

Artificiell intelligens• Forskare inom artificiell intelligens är

attraherade av objektorienterad programmering

• Man kan beskriva komplex kunskap på ett konceptuellt ellegant sätt

• Agenter– Icke autonoma– Halvautonoma– Autonoma

Page 18: Objektorientering användningsområden, speciellt olika programspråk

previous next 18

Objektorientering användningsområden, speciellt olika programspråk

Wegner ger oss anledning att forsätta med OO• Man behöver kanske inte vara så extrem som Peter

Wegner som:– Med bland annat stöd från Fred Brooks som säger att

interaktiv programmering i stort inte är detsamma som uppskalad algoritmisk programmering samt den begränsade uttrycksfullheten hos Turingmaskiner hävdar Peter Wegner att dom objektorienterade och distribuerade paradigm är mer uttrycksfulla än andra och därmed också överlägsna

– Han argumenterar länge för varför objektorientering är överlägsen både funktionell- och logikprogrammering, speciellt i interaktiva och distribuerade system.

Page 19: Objektorientering användningsområden, speciellt olika programspråk

previous next 19

Objektorientering användningsområden, speciellt olika programspråk

Inbäddade komponenter• Inkorporerande av objekt i andra objekt

– tekniker för att låta olika tillämpningar samverka (i tex ett gemensamt dokument) genom att

• låta objekt skapade med en tillämpning "kopplas" in i "främmande" dokument

• applikationerna offentliggör gränssnitt. Kan därför kommunicera

– Exempel OLE (Microsoft), OpenDOC baserat på SOM/DSOM (IBMs CORBA-implementation)

Page 20: Objektorientering användningsområden, speciellt olika programspråk

previous next 20

Objektorientering användningsområden, speciellt olika programspråk

Distribution

• Distribution är ett område av allt större betydelse

• Objektorientering spelar en viktig roll i utvecklingen

• OMG, Object Management Group, är ett icke kommersiellt standardiseringsorgan med väldigt många deltagare (både kommersiella och icke kommersiella)

Page 21: Objektorientering användningsområden, speciellt olika programspråk

previous next 21

Objektorientering användningsområden, speciellt olika programspråk

Komponentbaserad arkitektur• Objekt kan skapas i en applikation och sedan flyttas

till en annan– objektet behåller en koppling till ”sitt urspung”– objektet kan editeras ”på plats” i sin nya omgivning

• Applikationer kan publicera hela eller delar av sitt gränssnitt

• Exempel– Microsofts

• COM/ActiveX, OLE

– JavaBeans– VisualWorks subcanvas (inom VW-systemet dock)

Page 22: Objektorientering användningsområden, speciellt olika programspråk

previous next 22

Objektorientering användningsområden, speciellt olika programspråk

Olika oo-programspråkOlika oo-programspråk• Simula

– Först, baserat på Algol

– Införde klasser, polymorfi, dynamisk bindning mm

• Smalltalk

– Spred idéerna, har stått modell för många andra oo-språk, klassbibliotek och designmönster

– Korta utvecklingscykler, snabbt att prototypa eller göra "refactoring"

– Virtuell Maskin

• Som tolkar tänkt maskinkod eller snarare översätts med JIT-teknik

– Vissa dialekter plattformsoberoende

– Metaklasser, reflexivt, öppet, anpassningsbart

Kodexempeli appendix medCooks artikel

Kodexempeli appendix medCooks artikel

Page 23: Objektorientering användningsområden, speciellt olika programspråk

previous next 23

Objektorientering användningsområden, speciellt olika programspråk

... oo-språk ...• CLOS

– Lispbaserat

– Multipelt arv, metaklasser, reflexivt, öppet, anpassningsbart

• Objective-C

– Blandning av C och Smalltalk (en hybrid)

• C++

– Baserat på C, med influenser från Simula

– Multipelt arv

– Generiska typer

• templates

• Eiffel

– Mutipelt arv

– Invarianter, pre- och postvillkor

Page 24: Objektorientering användningsområden, speciellt olika programspråk

previous next 24

Objektorientering användningsområden, speciellt olika programspråk

... oo-språk• Java

– Som ju alla känner till– Syntax som C– Påminner i uppbyggnad om Smalltalk– VM– JIT– Standardiserat klassbibliotek

• C# (C-sharp)– Microsofts nya språk– C/C++-syntax liknar Java ganska mycket– Kompileras till exekverbar kod– Inget eget klassbibliotek– Se http://www.nada.kth.se/kurser/kth

/2D1359/00-01/contents/clangref.doc

Min temporäraAdress!

Page 25: Objektorientering användningsområden, speciellt olika programspråk

previous next 25

Objektorientering användningsområden, speciellt olika programspråk

Objekten eller värden• Är allt objekt eller inte?

Svarenpå tavlaneller genomatt du fyller isjälv

• Simula, Java, Eiffel och C# har två typer av värden: referenser till objekt och värden

• Smalltalk har bara en typ, dvs allt är objekt

• CLOS integrerar objektsystemet så långt det är möjligt med underliggande Common Lisp

• C++ och Objective-C stöder C-värden + en ny domän av separata objekt

• I Objective-C finns det dock bara en typ i objektdomänen• I C++ är denna objektdomänen mycket rikare

• Simula, Java, Eiffel och C# har två typer av värden: referenser till objekt och värden

• Smalltalk har bara en typ, dvs allt är objekt

• CLOS integrerar objektsystemet så långt det är möjligt med underliggande Common Lisp

• C++ och Objective-C stöder C-värden + en ny domän av separata objekt

• I Objective-C finns det dock bara en typ i objektdomänen• I C++ är denna objektdomänen mycket rikare

Page 26: Objektorientering användningsområden, speciellt olika programspråk

previous next 26

Objektorientering användningsområden, speciellt olika programspråk

Klasser och instanser• Hör alla objekt till klasser

Svarenpå tavlaneller genomatt du fyller isjälv

• Ja, i alla dom jämförda språken tillhör objekten klasser

• I CLOS kan man också specificera beteende på instansnivå (Cook s. 150)

• Ja, i alla dom jämförda språken tillhör objekten klasser

• I CLOS kan man också specificera beteende på instansnivå (Cook s. 150)

Page 27: Objektorientering användningsområden, speciellt olika programspråk

previous next 27

Objektorientering användningsområden, speciellt olika programspråk

Arv• Vilka typer av arv finns?

Svarenpå tavlaneller genomatt du fyller isjälv

• Enkelt arv i:• Simula• Java• Smalltalk• C#• Objective-C• Beta• ...

• Multipelt arv i:• C++• Eiffel• CLOS• (Smalltalk)

• Enkelt arv i:• Simula• Java• Smalltalk• C#• Objective-C• Beta• ...

• Multipelt arv i:• C++• Eiffel• CLOS• (Smalltalk)

Page 28: Objektorientering användningsområden, speciellt olika programspråk

previous next 28

Objektorientering användningsområden, speciellt olika programspråk

Referenser till sig själv• Hur sker referenser till aktuellt objekt?

Svarenpå tavlaneller genomatt du fyller isjälv

• Simula - this• Java - this• Smalltalk - self• C# - this• Objective-C - • C++ - this• Eiffel - Current• CLOS – går ej

• I Simula, Smalltalk, Java, C# och Eiffel är självreferensen reserverat ord

• Simula - this• Java - this• Smalltalk - self• C# - this• Objective-C - • C++ - this• Eiffel - Current• CLOS – går ej

• I Simula, Smalltalk, Java, C# och Eiffel är självreferensen reserverat ord

Page 29: Objektorientering användningsområden, speciellt olika programspråk

previous next 29

Objektorientering användningsområden, speciellt olika programspråk

Typsystem• Har språket typsystem?

• När sker typkontrollen?

• Hur uttrycksfullt är typsystemet?

• Skiljer man på typer och klasser?

Svarenpå tavlaneller genomatt du fyller isjälv

Inte statiskt i Smalltalk eller CLOS. Inte för objekt i Objective-C.Resten har statisk typning

Inte statiskt i Smalltalk eller CLOS. Inte för objekt i Objective-C.Resten har statisk typning

Under exekveringen i Smalltalk och CLOS. Resten kontrollerar detta vid kompilering

Under exekveringen i Smalltalk och CLOS. Resten kontrollerar detta vid kompilering

Eiffel och C++ har parameteriserade typerEiffel och C++ har parameteriserade typer

I CLOS är det inte samma sak men i resten är det i princip detI CLOS är det inte samma sak men i resten är det i princip det

Page 30: Objektorientering användningsområden, speciellt olika programspråk

previous next 30

Objektorientering användningsområden, speciellt olika programspråk

Objektinitiering• Hur initieras objekten då dom skapas?

Svarenpå tavlaneller genomatt du fyller isjälv

• Simula - initieringsblock• Java - konstruktor• Smalltalk - klassmetod• C# - konstruktor• Objective-C- klassmetod• C++ - konstruktor• Eiffel – Create-feature• CLOS – ”slots” med regler för initiering

• Simula - initieringsblock• Java - konstruktor• Smalltalk - klassmetod• C# - konstruktor• Objective-C- klassmetod• C++ - konstruktor• Eiffel – Create-feature• CLOS – ”slots” med regler för initiering

Page 31: Objektorientering användningsområden, speciellt olika programspråk

previous next 31

Objektorientering användningsområden, speciellt olika programspråk

Inkapsling, omgivning och döljande• I vilken textuell kontext kan variabler och

metoder accessas?

• Kan man explicit kontrollera omgivningen?

Svarenpå tavlaneller genomatt du fyller isjälv

Simula skiljer ej på publika och privata vilket C#, Java och C++ gör

I Smalltalk och Objective-C är det ”stark” skillnad

CLOS: slots som kan anges hur dom kan accessas

Eiffel: export feature

Simula skiljer ej på publika och privata vilket C#, Java och C++ gör

I Smalltalk och Objective-C är det ”stark” skillnad

CLOS: slots som kan anges hur dom kan accessas

Eiffel: export feature

Man kan ofta komma runt reglerna om man är expert på run-time-omgivningen

I Smalltalk och CLOS är detta explicit inbyggtI Java finns också sådana möjligheter

Man kan ofta komma runt reglerna om man är expert på run-time-omgivningen

I Smalltalk och CLOS är detta explicit inbyggtI Java finns också sådana möjligheter

Page 32: Objektorientering användningsområden, speciellt olika programspråk

previous next 32

Objektorientering användningsområden, speciellt olika programspråk

Metoder, bindning och polymorfi• Tillhör metoderna objekt eller separata

enheter?

• Kan metoder skrivas över?

• Har språket virtuella metoder?

Svarenpå tavlaneller genomatt du fyller isjälv

Page 33: Objektorientering användningsområden, speciellt olika programspråk

previous next 33

Objektorientering användningsområden, speciellt olika programspråk

Styrstrukturer• Är styrstrukturer inbyggda i språket eller via

primitiver på lägre nivå?

• Vilka möjligheter att skapa egna styrstrukturer finns det?

Svarenpå tavlaneller genomatt du fyller isjälv

I Smalltalk är styrstrukturer implementerade med vanliga objekt tillhörande vanliga klasser

I resten av språken är det mer eller mindre primitiverCLOS har dock möjligheter från sitt ”LISP-arv”

I Smalltalk är styrstrukturer implementerade med vanliga objekt tillhörande vanliga klasser

I resten av språken är det mer eller mindre primitiverCLOS har dock möjligheter från sitt ”LISP-arv”

Page 34: Objektorientering användningsområden, speciellt olika programspråk

previous next 34

Objektorientering användningsområden, speciellt olika programspråk

Parallellitet• Exekverar objekt parallellt?

Svarenpå tavlaneller genomatt du fyller isjälv

• Simula - Ja

• Ej i resten även om visa stöder processer

• Simula - Ja

• Ej i resten även om visa stöder processer

Page 35: Objektorientering användningsområden, speciellt olika programspråk

previous next 35

Objektorientering användningsområden, speciellt olika programspråk

Meta-programmering• Hur kan språkets fundament kommas åt från

program?

• Finns metaklasser eller andra metaobjekt?

Svarenpå tavlaneller genomatt du fyller isjälv

I Java, Smalltalk och CLOS går dettaI Smalltalk och CLOS är detta helt integrerat

I Java, Smalltalk och CLOS går dettaI Smalltalk och CLOS är detta helt integrerat

I Smalltalk är klasser objekt precis som allt annat i systemet. Klasserna i sin tur är instanser av klasser (som är objekt som är instanser av klasser som....)Varje klass tillhör en metaklass

I Smalltalk är klasser objekt precis som allt annat i systemet. Klasserna i sin tur är instanser av klasser (som är objekt som är instanser av klasser som....)Varje klass tillhör en metaklass

Page 36: Objektorientering användningsområden, speciellt olika programspråk

previous next 36

Objektorientering användningsområden, speciellt olika programspråk

Omgivning• Vilken omgivning krävs för att konstruera

och leverera kod?

Svarenpå tavlaneller genomatt du fyller isjälv

• Java kräver VM• Finns dock en del ”riktiga” kompilatorer

• Smalltalk kräver också VM• Här jobbar man också i en speciell omgivning och kodning innebär att den aktuella omgivningen modifieras• Vissa Smalltalksystem har dock ”riktig” kompilator

• Resten av språken kräver ingen speciell omgivning (fast i CLOS var detta inte specat då Cook skrev sin artikel)

• Java kräver VM• Finns dock en del ”riktiga” kompilatorer

• Smalltalk kräver också VM• Här jobbar man också i en speciell omgivning och kodning innebär att den aktuella omgivningen modifieras• Vissa Smalltalksystem har dock ”riktig” kompilator

• Resten av språken kräver ingen speciell omgivning (fast i CLOS var detta inte specat då Cook skrev sin artikel)

Page 37: Objektorientering användningsområden, speciellt olika programspråk

previous next 37

Objektorientering användningsområden, speciellt olika programspråk

Implementation• Är språket intepreterande eller kompilerat?

• Finns det automatisk skräpsamling?

Java och Smalltalk kan vara intepreterande men normalt JIT

CLOS ej definierat

Reten kompilerande

Java och Smalltalk kan vara intepreterande men normalt JIT

CLOS ej definierat

Reten kompilerande

I Simula, Smalltalk, CLOS, Eiffel, Java och C# finns automatisk skräpsamling

I Simula, Smalltalk, CLOS, Eiffel, Java och C# finns automatisk skräpsamling

Page 38: Objektorientering användningsområden, speciellt olika programspråk

previous next 38

Objektorientering användningsområden, speciellt olika programspråk

Modularitet• Vilken grad av modularisering finns?

Svarenpå tavlaneller genomatt du fyller isjälv

FilerKlassPackage

FilerKlassPackage

Page 39: Objektorientering användningsområden, speciellt olika programspråk

previous next 39

Objektorientering användningsområden, speciellt olika programspråk

Felhantering• Hur hanteras run-time-fel?

Svarenpå tavlaneller genomatt du fyller isjälv

• Simula, Eiffel och C++ är från början konstruerade med intentionen att run-time-fel ej sker

• Eiffel har exceptionhantering

• Java, C# och Smalltalk har exceptionhandling•Även C++ numera

• Objective-C följer C-traditionen

• Simula, Eiffel och C++ är från början konstruerade med intentionen att run-time-fel ej sker

• Eiffel har exceptionhantering

• Java, C# och Smalltalk har exceptionhandling•Även C++ numera

• Objective-C följer C-traditionen

Page 40: Objektorientering användningsområden, speciellt olika programspråk

previous next 40

Objektorientering användningsområden, speciellt olika programspråk

Metodologi• Är språket specialicerat på att konstruera

någon speciell typ av applikationer?

Svarenpå tavlaneller genomatt du fyller isjälv

Page 41: Objektorientering användningsområden, speciellt olika programspråk

previous next 41

Objektorientering användningsområden, speciellt olika programspråkNågot om distribuerad OO-programmeringNågot om distribuerad OO-programmering

• På separata ej upptryckta ohs, se websidorna med oh-bilder.