Universitetet i Linköping Institutionen för datavetenskap Anders Haraldsson

Save this PDF as:
 WORD  PNG  TXT  JPG

Storlek: px
Starta visningen från sidan:

Download "Universitetet i Linköping Institutionen för datavetenskap Anders Haraldsson"

Transkript

1 1 2 TDDC66 Datorsystem och programmering TDDC67 Funktionell programmering Programmering i Lisp, examinator TDDC67 föreläsare i Lisp Peter Dalenius examinator TDDC66 kursassistent i Lisp + ett stort antal labbassistenter Mer info http: //www.ida.liu.se/~tddc66 //www.ida.liu.se/~tddc67 Kan göras på många olika sätt och man kan ta ställning till: Val av programmeringsparadigm, sätt att programmera: Imperativ programmering Objektorienterad programmering Funktionell programmering Logikprogrammering Val av programmeringsspråk: C/C++ Java Python, Ruby Ada Lisp/Scheme Haskell Problemlösning Problemområden som man programmerar: Enkla problem-> större problem Algoritmiska problem Programmering runt bibliotek (detaljer göms) Skriptprogrammering med web Grafikprogrammering 3 4 Vi har för C- och D-programmen valt följande strategi: Programmeringsparadigmer: Funktionell programmering (Termin 1 åk 1) -> Imperativ programmering (Termin 2 åk 1) -> Objektorienterad programmering (Termin 3 åk 2) Programmeringsspråk: Lisp (Termin 1 åk 1) -> Ada, C/C++ (Termin 2 åk 1) -> Java, C++ (Termin 3 åk 2) Problemlösning Vi börjar med enkla problem och löser successivt större problem. Vi avslutrar denna kurs med ett projekt. Efter många års lärare i programmering är det viktigaste i en första kurs att lära sig: Bryt ned ett stort problem till små enheter / funktioner. Princip: En enhet löser ett problem Ge bra namn på enheten och de ingående data som skall bearbetas. Princip: Abstraktion, program skall vara läsbara och förståeliga i sitt sammanhang Sedan kan man gå vidare me mer specifika programmeringssätt och programmeringsspråk.

2 5 6 Om man läser en datautbildning med mycket matematik och speciellt Diskret matematik är det speciellt lämpat att börja med den funktionella programmeringsparadigmen. Vår erfarenhet och nästan alla studenterna har under alla år tyckt att detta är ett bra sätt att börja programmeringsundervisning, och senare gå vidare med ytterligare ett antal mer specifika programmeringskurser. Efter de första 3 åren har ni fått stor erfarenhet av programmering och tillämpat detta i många andra kurser. Då skall ni kunna lösa stora klasser av problem och i stort kunna använda vilket programmeringsspråk som helst. Att börja med funktionell programmering, vad innebär detta? Innehåller ett antal svårigheter, i början kommer vi att direkt arbeta med begreppet rekursion, där vi visar många olika modeller och likheten med matematiken. Kräver mycket övning, och när man kommit över tröskeln så är det ju lätt och självklart. Vad är LISP? Ett egentligen gammalt språk, som möjliggör att illustrera många olika programmeringsparadigmer och programmeringskonstruktioner. Många konstruktioner i Lisp har dock återkommit i nya språk som Python och Ruby. 7 8 Funktionell programmering + Lisp medför att modellen att programmera blir nytt för alla studenterna. Vi börjar från början med mycket enkla exempel, programmeringen byggs upp allt eftersom. Kräver mycket övning. För nybörjare: Lyssna på oss lärare, följ bok och laborationsanvisningarna. För de som har programmerat tidigare: RISK! Detta är troligen nytt även för er och ni får inte underskatta svårigheterna i sättet att programmera och slarva med laborationerna. Varför har vi två kurser i programmering under höstterminen Delvis beroende på reformer där kurser inte skulle bli för stora i poängomfång och dels att moment har flyttats mellan kurser. Men Lisp-delen börjar i första kursen och går sedan (mer eller mindre) osynligt över i andra kursen i slutet av period 1. Ge akt på scheman. Alla Lisp-laborationer finns i samma labb-häfte. Kursen ger något nytt för ALLA studenterna. Många lärosäten i Sverige använder denna modell som första språk. Som alternativ till Lisp använder en del ML och Haskel (t ex Chalmers). På Y-programmet används Lisp-dialekten Scheme i sin första kurs: PRAM - Programmering, abstraktion och modellering.

3 9 10 Vad har vi gjorde sedan förra året. Vi hade sedan några år sedan senarelagt moment i laborationsserien, så att det hamnade i period 2, vilket medförde att belastningen blev fört stor i period 2 och man tyckte att man skulle flytta över moment till första perioden. Vi har även i år startat tidigare i prop-perioden med datorintroduktion. Vi börjar tidigare med Lisp-föreläsningarna, har flyttat en laboration (almanackan) till period 1. Dessutom passar det bra eftersom man gjort förändringar i matematiken, som läses parallellt under hösten. All den diskreta matematiken läses i period 1, med bättre möjlighet till samordning med den funktionella programmeringen. Vissa smärre förändringar i labbserien, bättre fokus på testning i en av laborationerna. Gruppstorlek: Lisplaborationer 1 och 2 i TDDC66 gör enskilt. Nytt för i år är att laborationerna fr o m labb 3 kan göras i labbgrupper om 2. Mål för Programmering i Lisp programmering, principer, problemlösning * strukturera program i mindre delar * bryta ned problem * läsbarhet av program huvudsaklig metodik * funktionell programmering, rekursion * abstrakta datatyper * bearbeta strukturerade dataobjekt, sekvenser, trädstrukturer mm datavetenskapliga begrepp och strukturer, likheter med matematiska begrepp i Diskret matematik (som ni läser parallellt) generella programspråksbegrepp språket Lisp - dialekten Common Lisp * listhantering * högre ordningens funktioner * imperativa konstruktioner programutveckling och hjälpmedel med Allegro * editor * felsökning projektuppgift * självständig programmering * gruppdiskussioner * dokumentation Allegro Common Lisp Emacs (programeditor) Lispsystem på skolan Föreläsningar - introducerar begreppen - ger översikt - sammanfattar och reflekterar - ligger alltid lite före Lispsystem på egna datorer Följ länkar från kursens www-sidor. Speciellt finns Allegro CL för Windows och Linux från Franz. Kurslitteratur Haraldsson, Programmering i Lisp, Studentlitteratur Kursmaterial i Funktionell programmering och Lisp - laborationer - Allegro CL via Emacs Gruppövning/Lektioner - systemgenomgångar - laborationsförberedelser - frågor, diskussioner - övningar Laborationer - frågor, diskussioner - övningar - arbeta med de obligatoriska uppgifterna - redovisa laborationer Egen tid - läs bok, torröva - lös många problem - öva, testa, experimentera på systemen - arbeta med de obligatoriska uppgifterna Framför allt - kom igång nu på en gång, bli inte efter - det räcker inte med de schemalagda laborationerna

4 13 14 Examination i Programmering i Lisp I kursen TDDC66 Datorsystem och programmering skall de tre första laborationerna redovisas tillsammans med två duggor. Momentet benämns: LAB1 Inledande laborationskurs (U, G), 2 hp. I kursen TDDC67 Funktionell programmering och Lisp skall resterande laborationer utföras samt en projektuppgift. Skriftlig tentamen på hela delen Programmering i Lisp, dvs moment från båda kurserna. Momenten benämns: TEN1 Skriftlig tentamen efter andra perioden (U,3,4,5), 3 hp. LAB1 Laborationer (U,G), 3 hp UPG1 Projektuppgift (U, G), 2 hp Lisp historik 1959 John McCarthy - Lisp 1.5 LISP = LISt Processing language utvecklats inom forskningsmiljön inom artificiell intelligens INTERLISP/Medley (BBN, Xerox, Lispmaskiner) MacLISP (MIT) Scheme (används i Data och programstrukturer) I samband med kommersialisering av språket togs ny standard fram: Common Lisp Lisp/Scheme används idag bl a som inbyggt programspråk i tillämpningar: - emacs bygger på elisp - cadsystem, autocad - utvecklingsmiljöer för spelindustrin Se gärna Franz www-sidor (som tillhandahåller Allegro Lispsystem) och som grundläggande programmeringsspråk i många datautbildningar Egenskaper i Lisp - enkel syntax (men mycket parenteser) - interaktion med språket sker genom en REPL (Read-Eval-Print-Loop) - språket är i grund interpretativt, dvs program beräknas av en intepretator - program kan kompileras till maskinkod - möjlighet att själv anropa de centrala interpretatorfunktionerna eval och apply (funcall) - man kan själv under beräkning skapa nya program som ges till beräkning, som används för sk makroutveckling - en delmängd pure Lisp kan enkelt beskrivas i Lisp, funktionen eval. Beskriver språkets semantik Lisp s påverkan på andra språk Ett stort antal konstruktioner har sitt ursprung från Lisp-språket - listor - extern notation av dataobjekt - rekursion - minneshantering - garbage collection - eval-modell - funktioner som data, lambda-uttryck Många nya programspråk idag har idag inkluderat många konstruktioner från Lisp inbyggt i språket symboler och listor (Python, Ruby) Funktioner som dataobjekt, lambda-uttryck, closure (Python, Ruby, C++) Top loop (REPL) (Python, Ruby)

5 17 Funktionell programmering Har nu kommit på ropet igen. Microsoft kommer med F#. Ett Ericsson-utvecklat språk Haskell används idag av många företag (t ex Klarna) Nu är det för att få enkla program som lättare går att kompilera till parallellitet, tex när vi har fler kärnor i en dator. Man vill komma ifrån den imperativa modellen där man i programmet där man lägger satser sekventiellt (efter varandra) vilket gör det svårare att utnyttja parallelliteten.

Imperativ programmering

Imperativ programmering Imperativ programmering 1DL126 3p Imperativ programmering Jesper Wilhelmsson ICQ: 20328079 Yahoo: amigajoppe MSN / epost: jesperw@it.uu.se Rum: 1335 Tel: 471 1046 Imperativ programmering Vilka programmeringsspråk

Läs mer

Välkomna till DIT012 IPGO

Välkomna till DIT012 IPGO Välkomna till DIT012 IPGO 1 Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare Joachim von Hacht, hajo@chalmers.se, 772 1003 Handledare (se även kurssida) Alexander Sjösten, sjosten@chalmers.se

Läs mer

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket?

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket? Jonas Kvarnström jonkv@ida.liu.se 2013 Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket? Rena OO-språk (allt är objekt) Scala, Smalltalk, Eiffel, Ruby,

Läs mer

Kursinformation Grundkurs i programmering med Python

Kursinformation Grundkurs i programmering med Python Hösten 2009 Två kurser i en 5DV105 - Programmeringsteknik med Python och MATLAB Programmeringsteori Föreläsningar om Python Färdighetsövning Laborationer i Python 5DV106 - Programmering i Python Praktisk

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning I: kursinfo, att programmera datorer, första programmet Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2015 Outline Hemsida Organization Examination

Läs mer

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014 Introduktion till Datalogi DD1339 Föreläsning 1 8 sept 2014 Kontaktuppgifter & Info: Kurskod: DD1339, 19hp Kursomgång: inda14 Kursansvarig: Christian Smith, ccs@kth.se Michael Minock, minock@kth.se Dilian

Läs mer

TDIU01 (725G67) - Programmering i C++, grundkurs

TDIU01 (725G67) - Programmering i C++, grundkurs TDIU01 (725G67) - Programmering i C++, grundkurs Introduktion till kursen och programmering Eric Elfving Institutionen för datavetenskap 2 september 2014 Översikt Kursinformation Personal Kursmål Upplägg

Läs mer

729G06 Föreläsning 1 Objektorienterad programmering

729G06 Föreläsning 1 Objektorienterad programmering Översikt Formalia Vad är objektorienterad programmering 729G06 Föreläsning 1 Objektorienterad programmering Definieria klasser Skapa och använda objekt Annika Silvervarg Ciltab, IDA, Linköpings universitet

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Aletta Nylén http://user.it.uu.se/~aletta Epost: aletta.nylen@it.uu.se Rum: 1216 Kursinfo Lärare: Aletta Nylén Jesper Wilhelmsson Litteratur: Object-Oriented Software Development

Läs mer

TDP001/TDP002. Introduktionsföreläsning. Eric Elfving Institutionen för Datavetenskap (IDA)

TDP001/TDP002. Introduktionsföreläsning. Eric Elfving Institutionen för Datavetenskap (IDA) TDP001/TDP002 Introduktionsföreläsning Eric Elfving Institutionen för Datavetenskap (IDA) Översikt Innovativ Programmering Personal Handhavande av datorsystem (TDP001) Syfte och mål Examinationsmoment

Läs mer

Datavetenskapligt program, 180 högskolepoäng

Datavetenskapligt program, 180 högskolepoäng GÖTEBORGS UNIVERSITET UTBILDNINGSPLAN IT-fakultetsstyrelsen 2013-02-14 Datavetenskapligt program, 180 högskolepoäng (Computer Science, Bachelor s Programme, 180 credits) Grundnivå/First level 1. Fastställande

Läs mer

Outline. Objektorienterad Programmering (TDDC77) Kursinfo. Outline. Hemsida. Organization. Ahmed Rezine Examination. Webreg.

Outline. Objektorienterad Programmering (TDDC77) Kursinfo. Outline. Hemsida. Organization. Ahmed Rezine Examination. Webreg. Outline Objektorienterad (TDDC77) Föreläsning I: kursinfo, att programmera datorer, första programmet Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Kursinfo Outline I hemsida: http://www.ida.liu.se/~tddc77

Läs mer

Program & programmering

Program & programmering Program & programmering Vad är program? Satser och instruktioner, toggla igenom exempel Program på olika nivåer, för olika maskiner, för olika saker Tolka program; kompilator, intepretator, binärbytekod,

Läs mer

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen (17 januari 2017 F1 1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna Eckerdal och Tom Smedsaas samt ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer

Läs mer

Exempel på typer av datorspråk EXCEL

Exempel på typer av datorspråk EXCEL 1 2 TDDB82 Perspektiv på Datateknik Breddgivande föreläsning Datorspråk Programmeringsparadigmer Programmeringsspråk Konstruktioner i programmeringsspråk Litteratur: Brookshear, Computer Science - an overview,

Läs mer

Imperativ och Funktionell Programmering i Python #TDDD73

Imperativ och Funktionell Programmering i Python #TDDD73 Imperativ och Funktionell Programmering i Python #TDDD73 Fredrik Heintz, IDA fredrik.heintz@liu.se @FredrikHeintz Mål med föreläsningen Du ska bli grymt inspirerad att lära dig programmera! Du ska känna

Läs mer

Datorsystem och programmering

Datorsystem och programmering Datorsystem och programmering Peter Dalenius petda@ida.liu.se Institutionen för datavetenskap Linköpings universitet 2010-08-23 Målsättning Kursens syfte är dels att studenterna ska skaffa sig erfarenheter

Läs mer

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen (16 januari 2016 F1.1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna Eckerdal och Tom Smedsaas samt ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer

Läs mer

Introduktion till programmering

Introduktion till programmering Introduktion till programmering TDDC66 Datorsystem och programmering Föreläsning 1 Peter Dalenius Institutionen för datavetenskap 2014-09-01 Översikt Vad är programmering? Kursens målsättning och organisation

Läs mer

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen (18 januari 2015 F1.1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna, Carl, Johan, Tom och ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer Kursmaterial

Läs mer

Datamodeller och databaser, avancerad kurs

Datamodeller och databaser, avancerad kurs 1(6) Datamodeller och databaser, avancerad kurs Programkurs 6 hp Advanced Data Models and Databases TDDD43 Gäller från: Fastställd av Programnämnden för data- och medieteknik, DM Fastställandedatum LINKÖPINGS

Läs mer

Föreläsning 2. Operativsystem och programmering

Föreläsning 2. Operativsystem och programmering Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data

Läs mer

Programming in C# and.net Framework

Programming in C# and.net Framework DNR LIU-2017-00432 1(5) Programmering i C# och.net Framework Programkurs 4 hp Programming in C# and.net Framework TDDD49 Gäller från: 2017 VT Fastställd av Programnämnden för data- och medieteknik, DM

Läs mer

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg niklas.broberg@chalmers.

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg niklas.broberg@chalmers. Programmering Seminarier i datavetenskap, datorteknik och informationsteknik Niklas Broberg niklas.broberg@chalmers.se 2015-09-24 Hur många från Datavetenskap? Datateknik? Informationsteknik? Översikt

Läs mer

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Hej, jag heter Ingela Johansson och hälsar dig välkommen till kursen Programutveckling med Java. Den är på 7.5

Läs mer

Datavetenskapliga programmet, 180 högskolepoäng

Datavetenskapliga programmet, 180 högskolepoäng Utbildningsplan Sida 1 av 5 2013-04-18 Dnr: MDH 2.1.2-178/13 liga programmet, 180 högskolepoäng Bachelor Program in Computer Science, 180 Credits Denna utbildningsplan gäller för utbildning som ges efter

Läs mer

Introduktion till programmering

Introduktion till programmering Introduktion till programmering TDDC66 Datorsystem och programmering Föreläsning 1 Peter Dalenius Institutionen för datavetenskap 2013-09-02 Översikt Vad är programmering? Kursens målsättning och organisation

Läs mer

Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17

Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17 Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17 Bakgrund och kursmål Kursens mål är att ge kunskaper inom funktionell programmering, fördjupade kunskaper inom objektorienterad

Läs mer

Exempel på typer av datorspråk EXCEL

Exempel på typer av datorspråk EXCEL 1 2 TDDC10 Perspektiv på datateknik/datavetenskap TDDC79 Perspektiv på informationsteknologi TDP001 Handhavande av datormiljö (D, IT, C, IP) Breddgivande föreläsning Historik Datorspråk Programmeringsparadigmer

Läs mer

Tentamen i. TDDC67 Funktionell programmering och Lisp

Tentamen i. TDDC67 Funktionell programmering och Lisp 1 Linköpings tekniska högskola Institutionen för datavetenskap Anders Haraldsson Tentamen i TDDC67 Funktionell programmering och Lisp och äldre kurser TDDC57 Programmering, Lisp och funktionell programmering

Läs mer

Introduktion till programmering. Programspråk och paradigmer

Introduktion till programmering. Programspråk och paradigmer Introduktion till programmering Programspråk och paradigmer Vad är ett programspråk? Aprogramming languageis a formal constructedlanguagedesigned to communicate instructions to a machine, particularly

Läs mer

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15 Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15 Aktuell kursplan finns på studentwebben, http://www.kth.se/student/kurser/kurs/hi1027. Lärare och examinator Anders Lindström, anders.lindstrom@sth.kth.se,

Läs mer

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering Föreläsning 1: Intro till kursen och programmering Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/vt11 Studentportalen http://www.studentportalen.uu.se Lärare: Tom Smedsaas, Tom.Smedsaas@it.uu.se

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar hur mjukvaror skapas, anpassas och utvecklas samt programmeringens roll i informationstekniska sammanhang som datorsimulering och praktisk datoriserad problemlösning.

Läs mer

EDAA01 Programmeringsteknik - fördjupningskurs

EDAA01 Programmeringsteknik - fördjupningskurs EDAA01 Programmeringsteknik - fördjupningskurs Läsperiod lp 1+2 (Ges även lp 3) 7.5 hp anna.axelsson@cs.lth.se sandra.nilsson@cs.lth.se http://cs.lth.se/edaa01ht Förkunskapskrav: Godkänd på obligatoriska

Läs mer

Föreläsning 5 5DV086 - Programspråk

Föreläsning 5 5DV086 - Programspråk Föreläsning 5 5DV086 - Programspråk Petter Ericson (pettter@cs.umu.se) Umeå University 6 februari, 2015 Haskell-frågor? Haskell-tips do-syntax State-monaden Dagens plan Programspråksteori Varför? Vad?

Läs mer

Introduktion till Unix och Linux

Introduktion till Unix och Linux Introduktion till Unix och Linux TDDC66 Datorsystem och programmering Föreläsning (i) Peter Dalenius Institutionen för datavetenskap 2014-08-22 2 3 Vem riktar sig kursen till? Hjälp! Jag fattar noll! Rädda

Läs mer

729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo

729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo 729G75: Programmering och algoritmiskt tänkande Tema 1, föreläsning 1 Jody Foo Föreläsningsöversikt Kursinfo / Om kursen Algoritmer Objektorienterad programmering i praktiken terminologi använda objekt

Läs mer

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk

Läs mer

Programvaruteknik, hp

Programvaruteknik, hp 1 (6) Utbildningsplan för: Programvaruteknik, 120-180 hp Software Engineering, 120-180 Credits Allmänna data om programmet Programkod Tillträdesnivå Diarienummer TPVAG Grundnivå MIUN 2010/1734 Högskolepoäng

Läs mer

Kursanalys för Programmeringsparadigm 2D1361, läsperiod 1 och 2 läsåret 2005/2006

Kursanalys för Programmeringsparadigm 2D1361, läsperiod 1 och 2 läsåret 2005/2006 Leif Kusoffsky 2005 - dec - 07 Nada KTH Kursanalys för Programmeringsparadigm 2D1361, läsperiod 1 och 2 läsåret 2005/2006 Kursdata Momentindelning Kursen genomförd Kursledare Kurslitteratur Antal studenter

Läs mer

TDP002 Imperativ programmering

TDP002 Imperativ programmering TDP002 Imperativ programmering Introduktion till kursen och python Eric Elfving Institutionen för datavetenskap (IDA) Översikt Programmering En introduktion Python Köra och skriva program Python grunderna

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Kort kursinfo Lab info Föreläsning - Vad utmärker ett bra användargränssnitt?

Läs mer

TDDD73-funktionell och imperativ programmering i python

TDDD73-funktionell och imperativ programmering i python 1 (7) TDDD73-funktionell och imperativ programmering i python Sändlista Inger Erlander Klein Tea Nygren Siv Söderlund Fredrik Wiklund Peter Dalenius Peter Dalenius Kurskod Examinator TDDD73 Peter Dalenius

Läs mer

Kursanalys DD1312 hösten 2008

Kursanalys DD1312 hösten 2008 Kursanalys DD1312 hösten 2008 Författare: Vahid Mosavat Nedan följer en kursanalys av kursen programmeringsteknik och matlab för I1. Kursanalysen är framtaget av kursledarens anteckningar under kursens

Läs mer

Datavetenskapliga programmet, Allmän inriktning 180 högskolepoäng

Datavetenskapliga programmet, Allmän inriktning 180 högskolepoäng Utbildningsplan Sida 1 av 5 Programkod: TCV20 OINR liga programmet, Allmän inriktning 180 högskolepoäng Bachelor Program in Computer Science, General Profile 180 Credits Denna utbildningsplan är fastställd

Läs mer

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng IT-FAKULTETEN Dnr G 2017/62 Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng Computer Science, Bachelor s Programme, 180 credits Grundnivå/programkod (N1COS) 1. Fastställande Utbildningsplanen

Läs mer

Grundkurs i programmering - intro

Grundkurs i programmering - intro Grundkurs i programmering - intro Linda Mannila 4.9.2007 Dagens föreläsning Allmän kursinformation: mål, syfte, upplägg, examination, litteratur, etc. Hur arbetar en dator? Hur vi får datorn att förstå

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Armin Nezirevic Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Vad utmärker ett bra användargränssnitt? Kort kursinfo

Läs mer

Presentation. Curriculum Vitae för Lars Kristiansson, 2004-10-28-1 -

Presentation. Curriculum Vitae för Lars Kristiansson, 2004-10-28-1 - Presentation Jag heter Lars Kristiansson. Jag är född 1963 och har studerat datavetenskap på Göteborgs Universitet. Jag har nu avslutat utbildningen, och är alltså filosofie kandidat i datalogi. Nyligen

Läs mer

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering Föreläsning 1: Intro till kursen och programmering λ Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/mafykht11/ λ Studentportalen http://www.studentportalen.uu.se UNIX-konton (systemansvariga

Läs mer

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng IT-FAKULTETEN Dnr G 2015/217 Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng Computer Science, Bachelor s Programme, 180 higher education credits Grundnivå/programkod (N1COS) 1. Fastställande

Läs mer

Imperativ programmering i ADA

Imperativ programmering i ADA 1 (6) Imperativ programmering i ADA Sändlista Kurskod Examinator Inger Klein Jonas Detterfelt Siv Söderlund Johan Högdahl Torbjörn Jonsson Tommy Färnqvist TDDC68 Torbjörn Jonsson Kursen gavs Årskurs 1

Läs mer

Objekt-orienterad Programmering och Design. TDA551 Alex Gerdes, HT-2016

Objekt-orienterad Programmering och Design. TDA551 Alex Gerdes, HT-2016 Objekt-orienterad Programmering och Design TDA551 Alex Gerdes, HT-2016 Kursteamet Dr. Alex Gerdes kursansvarig, föreläsare Dr. Niklas Broberg examinator, (föreläsare) Fredrik Sjöholm handledare Johan Andersson

Läs mer

SKOLFS. beslutade den XXX 2017.

SKOLFS. beslutade den XXX 2017. 1 (11) Föreskrifter om ändring i Skolverkets föreskrifter (SKOLFS 2010:247) om ämnesplan för ämnet programmering i gymnasieskolan, inom kommunal vuxenutbildning på gymnasial nivå och inom vidareutbildning

Läs mer

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34 Tentamen Datalogi I, grundkurs med Java 10p, 2D4112, 2002-2003 Lördagen den 30 november 2002 kl 9.00 14.00, salar E33, E34 Inga hjälpmedel 30 poäng ger säkert godkänt, 40 poäng ger betyg 4 50 poäng ger

Läs mer

Datavetenskapliga programmet, Spel, 180 högskolepoäng

Datavetenskapliga programmet, Spel, 180 högskolepoäng Utbildningsplan Sida 1 av 5 2012-01-20 liga programmet, Spel, 180 högskolepoäng Bachelor Program in Computer Science, Computer Games Development, 180 Credits Denna utbildningsplan gäller för utbildning

Läs mer

MATLAB-modulen Programmering i MATLAB. Höstterminen 2015 3hp. Vad är MATLAB

MATLAB-modulen Programmering i MATLAB. Höstterminen 2015 3hp. Vad är MATLAB MATLAB-modulen Programmering i MATLAB Höstterminen 2015 3hp Vad är MATLAB MatrixLaboratory Avancerad miniräknare. Maskinoberoende programmeringsspråk högnivåspråk (Python, Javascript) - interaktivt Behöver

Läs mer

Distanskursen objektorienterad programmering med Java

Distanskursen objektorienterad programmering med Java Distanskursen objektorienterad programmering med Java Sven-Olof Nyström Uppsala Universitet 11 mars 2005 1 Idag Praktiska detaljer Allmänt om kursen Planering i stort Lite om Java 2 Registrering Registrera

Läs mer

Utbildningsplan Dnr CF 52-66/2007. Sida 1 (7)

Utbildningsplan Dnr CF 52-66/2007. Sida 1 (7) Utbildningsplan Dnr CF 52-66/2007 Sida 1 (7) PROGRAMMET FÖR SIMULERING OCH DATASPELSUTVECKLING, 180 HÖGSKOLEPOÄNG Programme in Simulation and Computer Game Development, 180 ECTS Utbildningsplanen är inrättad

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

DD1361 Programmeringsparadigm Föreläsning 1: Intro

DD1361 Programmeringsparadigm Föreläsning 1: Intro DD1361 Programmeringsparadigm Föreläsning 1: Intro Per Austrin KTH 2015-08-31 https://www.kth.se/social/course/dd1361/ Dagens föreläsning Översikt om: 1. Ämnet 2. Lärarna 3. Kursformalia (betyg etc) Dagens

Läs mer

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2006. Kursprogram

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2006. Kursprogram Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt 2006 Kursprogram Kursens mål är att ge dig kunskaper om begreppen och principerna inom objektorienterad programmering kunskaper

Läs mer

Beslut om fastställande: - - Behörighetskrav: -

Beslut om fastställande: - - Behörighetskrav: - Dnr: HS 2014/146 Fakulteten för humaniora och samhällsvetenskap Utbildningsplan IT-design Programkod: SGITD Beslut om fastställande: - - Programmets benämning: IT-design Study programme in IT-Design Högskolepoäng:

Läs mer

Datavetenskapliga programmet, Mjukvaruutveckling 180 högskolepoäng

Datavetenskapliga programmet, Mjukvaruutveckling 180 högskolepoäng Utbildningsplan Sida 1 av 5 2012-01-20 liga programmet, Mjukvaruutveckling 180 högskolepoäng Bachelor Program in Computer Science, Software Development, 180 Credits Denna utbildningsplan gäller för utbildning

Läs mer

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan SGITD. IT-Designprogrammet. Study programme in IT-Design

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan SGITD. IT-Designprogrammet. Study programme in IT-Design Fakulteten för ekonomi, kommunikation och IT Utbildningsplan IT-Designprogrammet Programkod: Programmets benämning: Inriktningar: SGITD IT-Designprogrammet Study programme in IT-Design Affärssystem och

Läs mer

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID Vad gör vi här? Programmeringsteknik fördjupningskurs (EDAA01; 7,5hp) Valfri för F, N & BME (kan läsas från åk 2 eller i sommar!) Avancerad

Läs mer

TDP002 - Imperativ programmering

TDP002 - Imperativ programmering . TDP002 - Imperativ programmering Introduktion till kursen och Python Eric Elfving Institutionen för datavetenskap 14 augusti 2015 Översikt 2/29 Programmering - en översikt Python - Köra och skriva program

Läs mer

Funktionell programmering

Funktionell programmering Funktionell programmering TDDD73 Funktionell och imperativ programmering i Python Föreläsning 8 Peter Dalenius Institutionen för datavetenskap 2013-10-09 Översikt Vad är ett programmeringsparadigm? Vad

Läs mer

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT14

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT14 Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT14 Aktuell kursplan finns på studentwebben, http://www.kth.se/student/kurser/kurs/hi1027. Lärare och examinator Anders Lindström, anders.lindstrom@sth.kth.se,

Läs mer

Objektorienterad programmering och Java

Objektorienterad programmering och Java Objektorienterad programmering och Java Sändlista Inger Klein Jonas Detterfelt Siv Söderlund Johan Högdahl Jonas Kvarnström Peter Dalenius Kurskod Examinator TDDC69 Jonas Kvarnström Kursen gavs Årskurs

Läs mer

Ny programansvarig och visioner för Datateknik, 300hp

Ny programansvarig och visioner för Datateknik, 300hp Ny programansvarig och visioner för Datateknik, 300hp 9 maj 2011 Bakgrund: Vem är Patrik? Utb.: student Chalmers F 1992 1995, doktorand 2000, nu docent i programvaruteknik på D&IT-institutionen. Undervisning:

Läs mer

729G74 IT och programmering, grundkurs. Tema 1, Föreläsning 3 Jody Foo,

729G74 IT och programmering, grundkurs. Tema 1, Föreläsning 3 Jody Foo, 729G74 IT och programmering, grundkurs Tema 1, Föreläsning 3 Jody Foo, jody.foo@liu.se Föreläsningsöversikt Kurslogistik Diskret matematik & Uppgifter i Python Kompletteringar Tema 1: Olika perspektiv

Läs mer

Objektorienterad analys och design

Objektorienterad analys och design Objektorienterad analys och design Objektorienterad analys och design 1 Dagens föreläsning Första delen, innan rasten: Motivation och bakgrund Analys Funktioner Andra delen, efter rasten: Objektorienterade

Läs mer

BER AKNINGSBARHET F OR DATALOGER. Kent Petersson. Institutionen for Datavetenskap Goteborgs Universitet / Chalmers Goteborg, Sweden

BER AKNINGSBARHET F OR DATALOGER. Kent Petersson. Institutionen for Datavetenskap Goteborgs Universitet / Chalmers Goteborg, Sweden BER AKNINGSBARHET F OR DATALOGER Fran till P Kent Petersson Institutionen for Datavetenskap Goteborgs Universitet / Chalmers 412 96 Goteborg, Sweden ii Kent Petersson Department of Computer Science Goteborgs

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan SGITD. IT-design. Study programme in IT-Design

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan SGITD. IT-design. Study programme in IT-Design Fakulteten för ekonomi, kommunikation och IT Utbildningsplan IT-design Programkod: Programmets benämning: Inriktningar: SGITD IT-design Study programme in IT-Design Affärssystem och ekonomi (AFEK) Programvarudesign

Läs mer

SKOLFS. beslutade den -- maj 2015.

SKOLFS. beslutade den -- maj 2015. SKOLFS Föreskrifter om ändring i Skolverkets föreskrifter (SKOLFS 2010:247) om ämnesplan för ämnet programmering i gymnasieskolan och inom kommunal vuxenutbildning på gymnasial nivå; beslutade den -- maj

Läs mer

Personal. Objektorienterad programmeringsmetodik 5DV133. Kursmål. Kursens uppläggning. Lärare. Handledare och gruppövningar.

Personal. Objektorienterad programmeringsmetodik 5DV133. Kursmål. Kursens uppläggning. Lärare. Handledare och gruppövningar. Personal Objektorienterad programmeringsmetodik 5DV133 Java VT-16 1 Lärare Anders Broberg, anders.broberg@cs.umu.se Handledare och gruppövningar Niklas Fries Adam Dalhgren Jonathan Westin Erik Moström

Läs mer

GRUNDKURS I C-PROGRAMMERING

GRUNDKURS I C-PROGRAMMERING SAMMANSTÄLLNING 1 (9) Inst för informationsteknologi GRUNDKURS I C-PROGRAMMERING del av 1TD442 ALGORITMER OCH DATASTRUKTURER DV1/ 1IT022 PROGRAMKONSTRUKTION II Period 3, 2006 DV/IT Sammanfattning: Vad

Läs mer

Introduktion till Linux. TDDC66 Datorsystem och programmering Föreläsning 1 Peter Dalenius Institutionen för datavetenskap

Introduktion till Linux. TDDC66 Datorsystem och programmering Föreläsning 1 Peter Dalenius Institutionen för datavetenskap Introduktion till Linux TDDC66 Datorsystem och programmering Föreläsning 1 Peter Dalenius Institutionen för datavetenskap 3 Vem riktar sig kursen till? Hjälp! Jag fattar noll! Rädda mig! Ska man trycka

Läs mer

1. Flervalsfråga Andel

1. Flervalsfråga Andel Page 1 of 8 Kursutvärdering Tillbaka till Välj resultat Antal svar: 39 1. Flervalsfråga Andel Vilken kvalitet upplever du att kursen har hållit sammantaget? Mycket låg 5,1% Låg 20,5% Godtagbar 43,6% Hög

Läs mer

Mjukstart i programmering

Mjukstart i programmering Mjukstart i programmering För intresserade och datorvana nybörjare TDDE23 Funktionell och imperativ programmering, del 1 Föreläsning 2 Peter Dalenius Institutionen för datavetenskap 2 Översikt 1. Vad är

Läs mer

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT17

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT17 Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT17 Lärare och examinator Anders Lindström, anders.lindstrom@sth.kth.se, telefon 08 790 48 13 (kursansvarig och examinator) Kursbeskrivning

Läs mer

Evaluation Summary - CT3380 Grundläggande webbdesign HT05 Dan Levin

Evaluation Summary - CT3380 Grundläggande webbdesign HT05 Dan Levin Evaluation Summary - CT8 Grundläggande webbdesign HT Dan Levin Antal kursutvärderingar: Q. Anser du dig ha tillräckligt med förkunskaper för att klara kursen? (=JA =NEJ) Q. a Kurslitteratur? 7 Medel:.

Läs mer

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo Objektorienterade språk Historik Simula 67 Smalltalk 80 Procedurorienterad programmering Subprogram Programbibliotek Dataorienterad programmering Abstrakta datatyper Objektbaserade språk, föregångare till

Läs mer

Kandidatprogrammet i datavetenskap

Kandidatprogrammet i datavetenskap Kandidatprogrammet i datavetenskap Bachelor of Science Programme in Computing Science Omfattning: 180 högskolepoäng Examen: Filosofie kandidatexamen med huvudområdet datavetenskap. Examensbeskrivningen

Läs mer

TDP002 - Imperativ programmering

TDP002 - Imperativ programmering TDP002 - Imperativ programmering Introduktion till kursen och Python Eric Elfving Institutionen för datavetenskap 1 Programmering - en översikt 2 Python Inbyggda typer Satser och uttryck 1 Programmering

Läs mer

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot KUNGLIGA TEKNISKA HÖGSKOLAN Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot Josef Karlsson Malik 2015-09- 02 jkmalik@kth.se Introduktionskurs i datateknik (II0310) Sammanfattning

Läs mer

TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2010

TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2010 ITN/KTS Stefan Engevall/Joakim Ekström Kursinformation TNSL05, Optimering, Modellering och Planering, HT2010 TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2010 1 Kursmål & innehåll 1.1 Mål med

Läs mer

Distribuerade affärssystem

Distribuerade affärssystem Distribuerade affärssystem Kursens mål Bygga upp, strukturera och programmera distribuerade system med en flerskiktsarkitektur Beskriva och förklara teorier och uttryck som används inom affärskritiska

Läs mer

Välkomna till NADA. Paradigm i datalogin. Vad är ett paradigm

Välkomna till NADA. Paradigm i datalogin. Vad är ett paradigm Välkomna till NADA (Numerisk Analys och DAtalogi) och kursen Paradigm i datalogin, orienteringskurs GN, 7,5 hp (PID) Välkomna... Jag: Serafim Dahl Osquars Backe 2, plan 5 Rum 1531 Postfack: Lindstedtsvägen

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Emil Ahlqvist (c10eat@cs.umu.se) Didrik Püschel (dv11dpl@cs.umu.se) Johan Hammarström (c08jhm@cs.umu.se) Hannes Frimmel Moström (c10hml@cs.umu.se) 1 1. Introduktion 1.1 Objektorienterad

Läs mer

Kursledare och övriga föreläsare och övningsassistenter. Antal undervisningstimmar uppdelat på föreläsningar, övningar och andra undervisningsformer

Kursledare och övriga föreläsare och övningsassistenter. Antal undervisningstimmar uppdelat på föreläsningar, övningar och andra undervisningsformer Kursdata Kursens namn, nummer och poängtal XML för publicering, 2D1517, 5 poäng När kursen genomfördes Period 1-2, 2002 Kursledare och övriga föreläsare och övningsassistenter Kursledare/föreläsare/labhandledare:

Läs mer

Välkommen till. Datastrukturer, algoritmer och programkonstruktion. eller DOA

Välkommen till. Datastrukturer, algoritmer och programkonstruktion. eller DOA Välkommen till Datastrukturer, algoritmer och programkonstruktion eller DOA Jag: Christer Labbassar: Caroline: Johan: Agenda, före lunch Inledning om DOA-kursen Backspegel Mål Syfte Examination Om lärande

Läs mer

TDP002 Imperativ programmering. Laborationsmaterial emacs python-mode

TDP002 Imperativ programmering. Laborationsmaterial emacs python-mode TDP002 Imperativ programmering Laborationsmaterial emacs python-mode Höstterminen 2008 Innehållsförteckning Introduktion...3 Redovisning av laborationer...3 Laboration 1 emacs python-mode...4 Uppgift 1

Läs mer

Administrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Mattias Enervall (Övningsassistent) Examination. 1 Skriftlig tentamen (betyg)

Administrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Mattias Enervall (Övningsassistent) Examination. 1 Skriftlig tentamen (betyg) Programmering hh.se/db2004 Föreläsning 1 Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Välkomna till en kurs i programmering! Att programmera är att få datorn att bete sig på

Läs mer

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan. Högskoleingenjörsprogrammet i datateknik TGDDI

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan. Högskoleingenjörsprogrammet i datateknik TGDDI Fakulteten för ekonomi, kommunikation och IT Utbildningsplan Högskoleingenjörsprogrammet i datateknik Programkod: Programmets benämning: Inriktningar: TGDDI Högskoleingenjörsprogrammet i datateknik Study

Läs mer

TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2011

TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2011 ITN/KTS Stefan Engevall/Joakim Ekström Kursinformation TNSL05, Optimering, Modellering och Planering, HT2011 TNSL05, Optimering, Modellering och Planering 6 hp, HT2-2011 1 Kursmål & innehåll 1.1 Mål med

Läs mer

Tekniska högskolan vid Linköpings universitet Uppdaterad 2010-01-22 ITN DT2/ELE2/BI3. Kursinformation. TNIU03 Industriella styrsystem, 6 hp VT1 2010

Tekniska högskolan vid Linköpings universitet Uppdaterad 2010-01-22 ITN DT2/ELE2/BI3. Kursinformation. TNIU03 Industriella styrsystem, 6 hp VT1 2010 Tekniska högskolan vid Linköpings universitet Uppdaterad 2010-01-22 ITN DT2//BI3 Kursinformation TNIU03 Industriella styrsystem, 6 hp VT1 2010 Mål Kursen skall ge grundläggande kunskaper i styrteknik och

Läs mer