Presentation laddar. Vänta.

Presentation laddar. Vänta.

Anders Broberg, Programspråksteoridelen DVA Moment 2 1 Epost: Hemsida: Tel: 786 5349 Rum: D438.

Liknande presentationer


En presentation över ämnet: "Anders Broberg, Programspråksteoridelen DVA Moment 2 1 Epost: Hemsida: Tel: 786 5349 Rum: D438."— Presentationens avskrift:

1 Anders Broberg, Programspråksteoridelen DVA Moment 2 1 Epost: Hemsida: Tel: Rum: D438

2 Anders Broberg, Programspråksteoridelen DVA Moment 2 2 Kurslitteratur: Robert W. Sebesta Concepts of Programming Language”, 4th ed.

3 Anders Broberg, Programspråksteoridelen DVA Moment 2 3 Schemaändningar 13 April är det två föreläsningar 14 April är det föreläsning + gruppövning 17 April varken föreläsning eller gruppövning 18 April ingen föreläsning 25 April är det en extra föreläsning (repetition av hela kursen)

4 Anders Broberg, Programspråksteoridelen DVA Moment 2 4 Laboration 3 Utvärdering av ett programmeringsspråk 2 och 2 mejla senaste 6/4 Ingen programmering Uppsats/rapport –Inlämning 25/4 Muntlig redovisning –Datum meddelas senare Se web-sidorna för mer information

5 Anders Broberg, Programspråksteoridelen DVA Moment 2 5 ”Programspråksteori” Mål för kursen Kursinnehåll Varför studera ”programspråksteori”

6 Anders Broberg, Programspråksteoridelen DVA Moment 2 6 Kursinnehåll Allmänt om programmeringsspråk Grundläggande principer för design av programmeringsspråk Visa på de grundläggande byggnadsstenarna hos programmeringsspråk

7 Anders Broberg, Programspråksteoridelen DVA Moment 2 7 Mål Bli orienterade om programmeringsspråk Få en förståelse för hur programmeringsspråk är uppbyggda Kunna läsa och förstå en informell beskrivning av ett programmeringsspråk Underlätta inlärandet av nya programmeringsspråk Lättare kunna välja språk

8 Anders Broberg, Programspråksteoridelen DVA Moment 2 8 Varför studera programspråk? 1. Ökad förmåga att uttrycka och förstå begrepp inom programmering 2. Kunskaper för att välja programmeringsspråk 3. Lättare att lära sig nya programmeringsspråk 4. Förstå varför ett språk är implementerat på ett visst sätt 5. Designa nya programmeringsspråk 6. Bredare förståelse av datavetenskap som område

9 Anders Broberg, Programspråksteoridelen DVA Moment 2 9 Programmerings domäner Vetenskapliga beräkningar –FORTRAN ”Business applications” –COBOL AI- ”symboliska beräkningar” –LISP, Prolog Systemprogrammering –C Scriptprogrammering (bla. www) –PERL, Javascript Tillämningsspråk –RPG - rapportgenerering –PLEX - AXE-växlar

10 Anders Broberg, Programspråksteoridelen DVA Moment 2 10 Krav på bra programspråk Universellt –Lösa alla lösbara problem Naturligt –Lösningarna skall kännas naturliga Implementerbara –Måste gå att implementera Effektiva –Det måste gå att göra en rimligt effektiv implementation av språket (både tids och minnes effektivt)

11 Anders Broberg, Programspråksteoridelen DVA Moment 2 11 Kritierier för utvärdering Läsbarhet Skrivbarhet Tillförlitighet Kostnader Övriga

12 Anders Broberg, Programspråksteoridelen DVA Moment 2 12 Läsbarhet Enkelhet Ortogonalitet Kontrollsatser Datatyper och datastrukturer Ren syntax

13 Anders Broberg, Programspråksteoridelen DVA Moment 2 13 Skrivbarhet Enkelhet och ortogonalitet Stöd för abstraktion Uttryckbarhet

14 Anders Broberg, Programspråksteoridelen DVA Moment 2 14 Tillförlitlighet Typkontroller Undantagshantering ”Aliasing” Läs och skrivbarhet

15 Anders Broberg, Programspråksteoridelen DVA Moment 2 15 Kostnader –Är ett samspel mellan många (alla andra) faktorer »Utbildning kostar »Skriva program kostar »Kompilering kostar »Exekvering av program kostar »Utvecklingsmiljöer/kompilatorer mm kostar »Tillförlitlighet kostar Att få Men också dålig tillförlitlighet kostar »Underhållandet av program kostar

16 Anders Broberg, Programspråksteoridelen DVA Moment 2 16 Övriga kriterier Portabilitet Generalitet ”Well-defined”

17 Anders Broberg, Programspråksteoridelen DVA Moment 2 17 Utmärkande influenser för design Arkitekturen hos maskinerna –Von Neumann 99.9% av alla datorer –Övriga arktekturer ||-arkitekturer, dataflödes, LISP- maskinen,... ”Hypade” programmeringsmetodiker –Strukturerad programmering –Dataabstarktion –Objektorienterad programmering

18 Anders Broberg, Programspråksteoridelen DVA Moment 2 18 Typer av programspråk Imperativa –FORTRAN, C, Modula 2, och Pascal Funktionella –LISP, Haskell, Miranda och ML Logikspråk –Prolog Objektorienterade –Simula, Smalltalk, Eiffel, C++, Java

19 Anders Broberg, Programspråksteoridelen DVA Moment 2 19 ”Trade-offs” för språkdesign Tillförlitlighet vs. Beräkningskostnaden Skrivbarhet vs. Läsbarhet Flexibilitet vs. Säkerhet

20 Anders Broberg, Programspråksteoridelen DVA Moment 2 20 Implementeringsmetoder Kompilerande språk Interpreterande språk Hybridsystem

21 Anders Broberg, Programspråksteoridelen DVA Moment 2 21 Kompilering Översätter hösnivåspråk -> maskinkod Snabb exekvering av programmen Långsam process att översätta Vanligast för produktionsspråk så som –C, COBOL, FORTRAN, ADA

22 Anders Broberg, Programspråksteoridelen DVA Moment 2 22 Interpretering ”Mjukvaru dator” Hanterar högnivåkommandon istället för maskininstruktioner –Ingen översättning av programmet Långsam exekvering av program Allt ovanligare –En del LISP implementationer

23 Anders Broberg, Programspråksteoridelen DVA Moment 2 23 Hybridsystem Översätter till mellankod Mellankoden skall vara enkel att interpretera Tex. Perl, och de flesta Java implementationerna

24 Anders Broberg, Programspråksteoridelen DVA Moment 2 24 Historisköverblick (Självstudier) Årtal och släktskap mellan språk är inte entydigt Nya språk har idéer från ”alla” äldre språk Kapitel 2 kan läsas ganska översiktligt strunta i detaljnivå Försök att komma ihåg ”nytt och bestående”


Ladda ner ppt "Anders Broberg, Programspråksteoridelen DVA Moment 2 1 Epost: Hemsida: Tel: 786 5349 Rum: D438."

Liknande presentationer


Google-annonser