Programmering, grundkurs, 8 hp
Introduction to Computer Programming, 8 credits
TDDE44
Huvudområde
Datateknik, DatavetenskapUtbildningsnivå
GrundnivåKurstyp
ProgramkursExaminator
Johan FalkenjackStudierektor eller motsvarande
Anders FröbergUndervisningstid
Preliminär schemalagd tid: 66 hRekommenderad självstudietid: 147 h
| Kursen ges för | Termin | Period | Block | Språk | Ort/Campus | VOF | |
|---|---|---|---|---|---|---|---|
| 6CMED | Civilingenjör i medicinsk teknik | 2 (VT 2027) | 1, 2 | 2, 1 | Svenska | Linköping, Valla | O |
| 6CYYY | Civilingenjör i teknisk fysik och elektroteknik | 2 (VT 2027) | 1, 2 | 2, 1 | Svenska | Linköping, Valla | O |
| 6CTMA | Civilingenjör i teknisk matematik | 2 (VT 2027) | 1, 2 | 2, 1 | Svenska | Linköping, Valla | O |
| 6KMAT | Matematik, kandidatprogram | 2 (VT 2027) | 1, 2 | 2, 1 | Svenska | Linköping, Valla | O |
Huvudområde
Datateknik, DatavetenskapUtbildningsnivå
GrundnivåFördjupningsnivå
G1NKursen ges för
- Kandidatprogram i matematik
- Civilingenjörsprogram i teknisk fysik och elektroteknik
- Civilingenjörsprogram i medicinsk teknik
- Civilingenjörsprogram i teknisk matematik
Rekommenderade förkunskaper
Elementär datorvana.
Lärandemål
Kursens syfte är att studenterna ska förvärva grundläggande kunskaper inom programmering och datavetenskap. Studenterna ska även utveckla grundläggande förmåga och färdigheter i att modellera och lösa problem med hjälp av programmering. Efter avslutad kurs ska studenterna kunna:
- använda aktuella datorsystem för laborativ verksamhet
- redogöra för grundläggande begrepp relaterade till datavetenskap, programmering och programspråk
- lösa programmeringsrelaterade problem metodiskt med hjälp av ett interaktivt arbetssätt med implementering, testning och felsökning
- konstruera abstraktioner med varierande grad av stöd i det underliggande programmeringsspråket
- lösa programmeringsproblem genom att bryta ner det i delproblem
- konstruera rekursiva och iterativa algoritmer
Kursinnehåll
- Översiktlig introduktion till datavetenskap
- Grunder i programmering: uttryck, grundläggande datatyper, variabler, funktioner och kontrollstrukturer, filhantering, filformat, moduler
- Programspråket Python
- Användning av öppna dataresurser från webben
- Interaktiv och inkrementell programutveckling
- Testnings- och felsökningsmetodik
- Programkonstruktion enligt funktionella och procedurella principer
- Dataabstraktion enligt objektorienterade principer
Undervisnings- och arbetsformer
Kursen består av föreläsningar, lektioner och laborationer. Föreläsningar och lektioner behandlar begrepp och dess tillämpningar. På lektioner och laborationer övas förmåga och färdigheter att lösa programmeringsuppgifter. Kursens upplägg förutsätter hög studentaktivitet och självstudier utanför schemalagda tillfällen. Det rekommenderas att studenten har tillgång till egen bärbar dator under kursens gång.
Examination
| LAB2 | Data- och programabstraktion/ intro till objektorientering | 3 hp | U, G |
| LAB1 | Grunder i programmering och användning av datorsystem | 3 hp | U, G |
| DAT1 | Datortentamen | 2 hp | U, 3, 4, 5 |
Betyg på delmoment/modul beslutas i enlighet med de bedömningskriterier som presenteras vid kursstart.
Betygsskala
Fyrgradig skala, LiU, U, 3, 4, 5Övrig information
Påbyggnadskurser: Programmering - tillämpning och datastrukturer. Data- och programstrukturer.
Om undervisnings- och examinationsspråk
Undervisningsspråk visas på respektive kurstillfälle på fliken "Översikt". Examinationsspråk relaterar till undervisningsspråk enligt nedan:
- Om undervisningsspråk är ”Svenska” kan kursen ges i sin helhet på svenska eller delvis på engelska. Examinationsspråk är svenska, men delar av examinationen kan ske på engelska.
- Om undervisningsspråk är Engelska ges kursen i sin helhet på engelska. Examinationsspråk är engelska.
- Om undervisningsspråk är ”Svenska/Engelska” ges kursen i sin helhet på engelska om studenter utan tidigare kunskap i svenska språket deltar. Examinationsspråk följer undervisningsspråk.
Övrigt
Kursen bedrivs på ett sådant sätt att likvärdiga villkor råder med avseende på kön, könsöverskridande identitet eller uttryck, etnisk tillhörighet, religion eller annan trosuppfattning, funktionsnedsättning, sexuell läggning och ålder.
Planering och genomförande av kurs skall utgå från kursplanens formuleringar. Den kursvärdering som ingår i kursen skall därför genomföras med kursplanen som utgångspunkt.
Kursen är campusförlagd på den ort som anges för kurstillfället om inget annat anges under ”Undervisnings – och arbetsformer”. I en campusförlagd kurs kan dock enstaka moment på distans ingå.
Institution
Institutionen för datavetenskapKurslitteratur
Kompletterande litteratur
Böcker
- Downey, Allen B., (2024) Think Python : how to think like a computer scientist. Third edition Sebastopol : O'Reilly, 2024
ISBN: 9781098155438
https://allendowney.github.io/ThinkPython/ - Lutz, Mark, (2025) Learning Python : powerful object-oriented programming
ISBN: 9781098171308, 1098171306 - Miller, Bradley N., Ranum, David L., (2011) Problem solving with algorithms and data structures using Python. 2nd ed. 2011
ISBN: 9781590282571, 1590282574 - Punch, William, Enbody, Richard, (2017) The practice of computing using Python. Third edition Global edition Boston : Pearson, 2017
ISBN: 9781292166629, 1292166622 - Skansholm, Jan, (2019) Python från början. Studentlitteratur.
ISBN: 9789144134932 - Swaroop, C. H., (2018) A Byte of Python
https://python.swaroopch.com/ - Zelle, John M., (2017) Python Programming : An Introduction To Computer Science Third Edition. Franklin, Beedle & Associates, 2017.
ISBN: 9781590282755, 1590282752
| Kod | Benämning | Omfattning | Betygsskala |
|---|---|---|---|
| LAB2 | Data- och programabstraktion/ intro till objektorientering | 3 hp | U, G |
| LAB1 | Grunder i programmering och användning av datorsystem | 3 hp | U, G |
| DAT1 | Datortentamen | 2 hp | U, 3, 4, 5 |
Betyg på delmoment/modul beslutas i enlighet med de bedömningskriterier som presenteras vid kursstart.
Kompletterande litteratur
Böcker
ISBN: 9781098155438
ISBN: 9781098171308, 1098171306
ISBN: 9781590282571, 1590282574
ISBN: 9781292166629, 1292166622
ISBN: 9789144134932
ISBN: 9781590282755, 1590282752
Ladda ner
| I | U | A | Moduler | Kommentar | ||
|---|---|---|---|---|---|---|
| 1. ÄMNESKUNSKAPER | ||||||
| 1.1 Kunskaper i grundläggande matematiska och naturvetenskapliga ämnen (kurser på G1X-nivå) |
|
|
X
|
Illustrationer och övningsuppgifter med enklare matematiska inslag |
||
| 1.2 Kunskaper i grundläggande teknikvetenskapliga ämnen (kurser på G1X-nivå) |
X
|
X
|
|
DAT1
LAB1
LAB2
|
Programmering/datavetenskap samt problemlösning med hjälp av datalogiskt tänkande. |
|
| 1.3 Fördjupade kunskaper, metoder och verktyg inom något av: matematik, naturvetenskap, teknik (kurser på G2X-nivå) |
X
|
|
|
Tillämpningar i tekniska områden används ibland som illustrationer i föreläsningarna. |
||
| 1.4 Väsentligt fördjupade kunskaper, metoder och verktyg inom något av: matematik, naturvetenskap, teknik (kurser på A1X-nivå) |
X
|
|
|
Tillämpningar inom avancerade tekniska områden presenteras ofta i föreläsningarna som fördjupningar av det aktuella ämnet. |
||
| 1.5 Insikt i aktuellt forsknings- och utvecklingsarbete |
X
|
|
|
Hur programmering kan användas i forsknings- och utvecklingsarbete. T.ex. för prototypning, modellering, analys, datahantering, etc. |
||
| 2. INDIVIDUELLA OCH YRKESMÄSSIGA FÄRDIGHETER OCH FÖRHÅLLNINGSSÄTT | ||||||
| 2.1 Analytiskt tänkande och problemlösning |
|
X
|
|
DAT1
LAB1
LAB2
|
Problemlösning med hjälp av datalogiskt tänkande mer generellt. |
|
| 2.2 Experimenterande och undersökande arbetssätt samt kunskapsbildning |
|
X
|
|
LAB1
LAB2
|
Kursen organiserad kring laborativa och problemlösningsfokuserade programmeringsuppgifter. |
|
| 2.3 Systemtänkande |
X
|
|
|
Möjligheter och konsekvenser av automatisering med mjukvara. |
||
| 2.4 Förhållningssätt, tänkande och lärande |
X
|
X
|
|
DAT1
LAB1
LAB2
|
Programmering och problemlösning. Förhållningssätt och förmåga att använda referensdokumentation och söka efter kunskap på webben. |
|
| 2.5 Etik, likabehandling och ansvarstagande |
X
|
|
|
Konsekvenser av mjukvara som är felaktigt eller problematiskt specificerad, implementerad eller applicerad. |
||
| 3. FÖRMÅGA ATT ARBETA I GRUPP OCH ATT KOMMUNICERA | ||||||
| 3.1 Arbete i grupp |
|
|
X
|
LAB1
LAB2
|
Laborationer genomförs i par |
|
| 3.2 Kommunikation |
|
|
X
|
LAB1
LAB2
|
Laborationer genomförs i par |
|
| 3.3 Kommunikation på främmande språk |
|
X
|
|
LAB1
LAB2
|
Engelska termer introduceras bredvid svenska termer och beskrivningar emedan kodexempel, inkl. kodkommentarer, oftast är skrivna på engelska. Kod, och dokumentation i koden, producerad under laborationer förväntas skrivas på engelska. |
|
| 4. PLANERING, UTVECKLING, REALISERING OCH DRIFT AV TEKNISKA PRODUKTER OCH SYSTEM MED HÄNSYN TILL AFFÄRSMÄSSIGA OCH SAMHÄLLELIGA BEHOV OCH KRAV | ||||||
| 4.1 Samhälleliga villkor, inklusive ekonomiskt, socialt och ekologiskt hållbar utveckling |
X
|
|
|
Effekter och möjligheter med mjukvara i ett digitaliserat samhälle. |
||
| 4.2 Företags- och affärsmässiga villkor |
X
|
|
|
Exempel under föreläsningar. |
||
| 4.3 Att identifiera behov samt strukturera och planera utveckling av produkter och system |
|
|
|
|||
| 4.4 Att konstruera produkter och system |
X
|
|
|
Introduktion till mjukvaruutvecklingsprocesser. |
||
| 4.5 Att realisera produkter och system |
X
|
X
|
|
LAB2
|
Laborationer som illustrerar användning av programmering i framtida yrkessituationer med hänsyn till effektivt resursutnyttjande. |
|
| 4.6 Att ta i drift och använda produkter och system |
X
|
|
|
Produktionsmiljöer och användbarhet introduceras i föreläsningarna när det är relevant för huvudämnet. |
||
| 5. PLANERING, GENOMFÖRANDE OCH PRESENTATION AV FORSKNINGS- ELLER UTVECKLINGSPROJEKT MED HÄNSYN TILL VETENSKAPLIGA OCH SAMHÄLLELIGA BEHOV OCH KRAV | ||||||
| 5.1 Samhälleliga villkor, inklusive ekonomiskt, socialt och ekologiskt hållbar utveckling inom forsknings- och utvecklingsprojekt |
X
|
|
|
Effekter och möjligheter med mjukvara i ett digitaliserat samhälle. Konsekvenser av ineffektivt resursutnyttjande, t.ex. i relation till användning av generativ AI och AI-genererad mjukvara. |
||
| 5.2 Ekonomiska villkor för forsknings- och utvecklingsprojekt |
|
|
|
|||
| 5.3 Att identifiera behov samt strukturera och planera forsknings- eller utvecklingsprojekt |
|
|
|
|||
| 5.4 Att genomföra forsknings- eller utvecklingsprojekt |
|
|
|
|||
| 5.5 Att redovisa och utvärdera forsknings- eller utvecklingsprojekt |
|
|
|
|||
Denna flik innehåller det material som är publikt i Lisam. Den information som publiceras här är inte juridiskt bindande, sådant material hittar du under övriga flikar på denna sida.
Det finns inga filer att visa.