729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. ·...
Transcript of 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. ·...
![Page 2: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/2.jpg)
Föreläsningsöversikt⁃ Kursinformation:
Kursplan
Kursupplägg
⁃ Datorn
⁃ Program
⁃ Terminalen som gränssnitt
![Page 3: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/3.jpg)
Om kursen, kursupplägg och kursplan
![Page 4: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/4.jpg)
Digitala kontaktytor⁃ Kurshemsida
https://www.ida.liu.se/~729G46/
⁃ Webreg (anmälan till grupper)
https://www.ida.liu.se/webreg3/
⁃ Kursrum på Lisam (inlämningar)
https://lisam.liu.se
⁃ E-postlista
![Page 5: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/5.jpg)
Personal⁃ Examinator/kursledare
Jody Foo ([email protected])
⁃ Assistenter (handledda datorsalspass)
Daniel Holmer ([email protected])
Ludvig Fors ([email protected])
Otto Fors ([email protected])
⁃ Assistenter (seminarier)
Isabella Koniakowski ([email protected])
Otto Fors ([email protected])
⁃ Kursadministratör
Veronica Kindeland Gunnarsson ([email protected])
⁃ Studierektor
Jalal Maleki ([email protected])
![Page 6: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/6.jpg)
Kontorstider⁃ Välkomna torsdagar 10-12 (dock ej 22 augusti)
⁃ Rum E 3F:482 i E-huset
![Page 7: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/7.jpg)
Syftet med kursen⁃ Tillhandahålla
grunder i programmering
grunder i informationsteknologi
⁃ Förkunskapskrav och förberedelse inför fortsättningskurser, t.ex.
Artificiell intelligens
Språkteknologi
Projektkurser
Interaktionsprogrammering
Kandidatuppsats
⁃ Kognitionsvetares roll i arbetslivet
![Page 8: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/8.jpg)
Kursplanvarje kurs har en kursplan där lärandemål, kursinnehåll och examination beskrivs
![Page 9: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/9.jpg)
Kursplan⁃ Lärandemål
mål som studenter ska ha nått efter kursen
⁃ Kursinnehåll
ämnen, begrepp m.m. som tas upp i kursen
⁃ Examination
hur examineras kursmålen, hur delas examinationen upp (provkoder)
![Page 10: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/10.jpg)
Tre huvudområden⁃ Introduktion till programmering, programmeringsspråket
Python
⁃ Diskret matematik
⁃ Grundläggande informationsteknologi
![Page 11: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/11.jpg)
Lärandemål⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,
programmering och algoritmiskt tänkande till kognitionsvetenskap och kognitionsvetenskapliga tillämpningar
⁃ använda och förklara begrepp från grundläggande diskret matematik i formella beskrivningar
⁃ använda grundläggande datatyper/datastrukturer och styrstrukturer för att skriva enklare program
⁃ identifiera, förklara och konstruera abstraktioner i programkod med varierande grad av stöd i det underliggande programmeringsspråket
⁃ använda ett metodiskt och interaktivt tillvägagångssätt att lösa programmeringsrelaterade problem genom implementering, testning och felsökning
⁃ utarbeta och tillämpa algoritmer för att lösa problem
⁃ redogöra för vad ett program är och hur ett program fungerar, inklusive sådan programkod som de själva och andra skrivit
⁃ producera program med enkla grafiska användargränssnitt.
![Page 12: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/12.jpg)
Blooms taxonomi för lärandemål Kognitiva mål1
Kunskapstaxonomi med några aktiva verb för lärandets resultat
Lägre nivå av lärande Högre nivå av lärande
Faktakunskaper Förståelse Tillämpning Analys Syntes Värdering Komma ihåg Förstå med egna ord Använda i den aktuella
kontexten Ta isär i komponenter för att
förstå strukturen Sammanställa nya
mönster och strukturer Bedömning genom
kriterier Värdera Jämföra
Komma fram till Konstrastera
Kritisera Förklara Motivera Bevisa Avgöra Relatera
Sammanfatta Stödja
Försvara Föreslå
1 Bloom Benjamin S. and David R. Krathwohl. Taxonomy of Educational Objectives: The Classification of Educational Goals, by a committee of college and university examiners. Handbook I: Cognitive Domain. New York, Longmans, Green, 1956.
Definiera Beskriva Nämna Välja
Identifiera Lista
Lokalisera Citera
Recitera Upprepa Markera
Ange
Förklara Försvara
Skilja Utveckla
Generalisera Ge exempel
Förutse Skriva om
Sammanfatta Använda
Kunna tillämpa Beräkna Bevisa
Upptäcka Modifiera Verkställa
Förutse Förbereda Producera Relatera
Visa Lösa
Använda Skissera
Identifiera Urskilja Illustrera Peka ut Relatera
Välja Separera Indela Sortera
Differentiera Skissera
Ange Kritiskt bearbeta
Kategorisera Kombinera
Ställa samman Utarbeta Skapa
Tänka ut Konstruera
Förklara Framställa Modiviera Organisera
Planera Rekonstruera
Relatera Sammanfatta Ta ställning
Repetera någon annans definition av
en princip
Förklara principen genom exempel på dess användning
inom andra områden
Personligen använda principen på procedurer i
verkliga situationer
Kan separera fakta från antaganden i principer
Kombinerar ett antal principer till en ny fungerande strategi
Bedöma användningen av den nya strategin
Modellen bygger på en sammanfattning och översättning som Khalid El Gaidi gjort efter Gronlund N.E. How to Write and Use Instructional Objectives. (2000)
![Page 13: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/13.jpg)
Kursinnehåll⁃ Grundläggande informationteknologi som t.ex. filsystem, filer, internminne, processor, internet, nätverk,
server, klient, databas, kryptering, dataformat som XML, JSON, CSV
⁃ Översiktlig introduktion till datavetenskap
⁃ Handhavande av aktuella datorsystem
⁃ Programmeringsspråket Python
⁃ Kodstil i Python
⁃ Datatyper/datastrukturer, t ex tal, strängar, tupler, listor, sekventiella och hierarkiska strukturer, uppslagsbaserade strukturer
⁃ Styrstrukturer, t.ex. loopar och villkorssatser
⁃ Läsa och skriva information till/från filer
⁃ Läsa data från internetresurser
⁃ Grundläggande objektorienterad programmering
⁃ Grundläggande datavetenskapliga algoritmer som kan tillämpas inom kognitionsvetenskap och för kognitionsvetenskapliga tillämpningar.
⁃ Introduktion till programmeringsmetodik och tekniker för programdesign (t.ex. diagram, pseudokod)
⁃ Grundläggande diskret matematik, t ex mängder, relationer, funktioner, diskreta datastrukturer
⁃ Programmering av enklare grafik och användarinteraktion.
![Page 14: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/14.jpg)
729G46. Provkoder/Examinationsmoment⁃ LAB1. 2,5hp: Temauppgifter, Tema 1-3
⁃ EXA1. 2,5hp: Inlämningsuppgifter och seminarier, Tema 1-3
⁃ LAB2. 4,5hp: Temauppgifter, Tema 4-6
⁃ EXA2. 1,5hp: Inlämningsuppgifter och seminarier, Tema 4-6
⁃ DUG1. 1hp: Dugga i programmering
![Page 15: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/15.jpg)
![Page 16: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/16.jpg)
Betygsättning⁃ Moment med endast U/G:
EXA1 (begreppsseminarier, inlämningsuppgifter Tema 1-3)
DUG1 (dugga + uppgifter inför duggan)
⁃ Moment med U/G/VG:
LAB1, LAB2 (Temauppgifter, Tema 1-6)
EXA2 (seminarier, inlämningsuppgifter, Tema 4-6)
⁃ Kursbetyg
För G på kursen krävs G på alla examinationsmoment.
För VG krävs VG på LAB1, LAB2 och EXA2.
![Page 17: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/17.jpg)
Kurslitteratur⁃ Informationsteknologi
Janlert, L.-E. (2015). Tänkande och beräkning: en inledning till datavetenskap och kognitionsvetenskap. Studentlitteratur AB.
Lunell, H. (2011). Datorn i världen, världen i datorn: en introduktion till data- och informationsteknik. Studentlitteratur AB.
⁃ Python
Punch, W. F., & Enbody, R. (2017). The Practice of Computing Using Python, Global Edition, 3/E. Boston: Pearson.
⁃ Diskret matematik
Kuhlman, M., & Dahllöf, M. (2014). Matematik för språkteknologer. (PDF)
Ytterligare litteratur finns på kurshemsidan
![Page 18: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/18.jpg)
Frihet och eget ansvar⁃ "Offensiv kunskapsinhämtning"
⁃ Eget ansvar för aktivt deltagande i dina universitetsstudier
⁃ Finns inte möjlighet att gå igenom allt kursinnehåll på föreläsningar
⁃ Om du missar något moment kommer ingen jaga dig. Du får helt enkelt inga poäng.
⁃ Kogvets "Rekommendationer om examination och kursupplägg" (se kandidatprogramsidorna)
https://www.student.liu.se/program/kognitionsvetenskap-180-hp/student/om-examination-och-kursupplagg?l=sv
![Page 19: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/19.jpg)
Kursupplägg(hur kursplanen genomförs)
![Page 20: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/20.jpg)
729G46 Informationsteknologi och programmering⁃ 12hp ~ 320 timmar totalt över 20 veckor.
⁃ Kursen är designad för knapp halvfart (40%) dvs 16h vecka (parallell kurs 24h/vecka)
⁃ Hur många timmar som behövs för varje individ varierar
⁃ Kursen är uppdelad i 6 st teman:
Tema 1-3 grunder
Tema 4-6 fortsättning
⁃ Varje tema 3-4 veckor (48-64h)
![Page 21: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/21.jpg)
Tema 1-3⁃ Schemalagt / tema
3 föreläsningar
1 lektion
1 seminarium (1h)
4-5 handledda pass i datorsal
⁃ Redovisningar och inlämningar / tema
Seminarium i mindre grupper (3 par)
Temauppgift, muntlig redovisning
Inlämningsuppgift (Diskret matematik + reflektionsuppgift)
⁃ Dugga i mellan Tema 3 och Tema 4 (29 oktober)
⁃ Självstudier
Ni kommer behöva jobba med programmering utanför schemalagd tid
~20h schemalagt av totalt 48-64h tid/tema
![Page 22: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/22.jpg)
Tema 4-6⁃ Schemalagt / tema
2 föreläsningar
1 lektion
1 seminarium (1h)
4-5 handledda pass i datorsal
⁃ Redovisningar och inlämningar / tema
Temauppgift, muntlig redovisning
Seminarium i mindre grupper (3 par)
Inlämningsuppgift (Rapport)
⁃ Självstudier
Ni kommer behöva jobba med programmering utanför schemalagd tid
~20h schemalagt av totalt 48-64h tid/tema
![Page 23: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/23.jpg)
⁃ Alla uppgifter med undantag av uppgifterna i diskret matematik samt reflektionsuppgifterna genomförs i av en pargrupp. En pargrupp består av två studenter.
⁃ Tre par (dvs 6 personer) bildar en seminariegrupp.
⁃ Samma pargrupp Tema 1-3. Ny pargrupp Tema 4-6.
Grupper
![Page 24: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/24.jpg)
Registrera pargrupp för Tema 1-3 i Webreg⁃ Registrera er pargrupp i Webreg.
https://www.ida.liu.se/webreg3
⁃ Pargrupp registreras för två examinationsmoment: LAB1 och EXA1.
⁃ OBS! Se till att ni registrera pargruppen så att den har samma gruppbeteckning i båda examinationsmomenten!
⁃ Om ni registrerar er som grupp D.3 i LAB1 ska ni också registrera er som grupp D.3 i EXA1.
![Page 25: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/25.jpg)
Uppgifter/seminarier/redovisningar
![Page 26: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/26.jpg)
Temauppgift⁃ Genomförs i pargrupp.
⁃ Programmeringsuppgift.
⁃ Redovisas muntligt på schemalagt redovisningstillfälle.
⁃ Missad redovisning kompletteras via screencast som lämnas in via Lisam (mer info finns på kurshemsidan)
![Page 27: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/27.jpg)
Pythonuppgifter (Tema 1-3)⁃ Genomförs som del av Temauppgift 1-3
⁃ Består av 3 delar. T.ex. Pythonuppgifter 1 = 1.1, 1.2, 1.3
⁃ Genomgång av nya programmeringskonstruktioner.
⁃ Övning inför duggan.
⁃ Automatisk rättning:
skriv kod i textfil
kör rättningsskript via terminalen
kopiera rättningskod till textfil (en textfil för varje del)
lämna in textfilerna via Lisam
![Page 28: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/28.jpg)
Begreppsseminarium⁃ Seminariegrupper: 3 par (6 personer)
Seminariegrupp A består av paren A1, A2 och A3.
45 minuter per seminariegrupp.
⁃ Format
Demonstration på dator
frågor/diskussion
max 12 min per par inklusive frågor
⁃ Komplettering
Missat seminarium kompletteras genom att spela in screencast som lämnas in via Lisam
![Page 29: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/29.jpg)
Inlämningsuppgift i slutet av teman⁃ Uppgifter i diskret matematik: grundläggande notation och
begrepp
⁃ Reflektion kring temat.
![Page 30: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/30.jpg)
Översikt, Tema 1-3
![Page 31: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/31.jpg)
Föreläsning 1-3⁃ Föreläsning 1: Kontext. Vilka färdigheter behöver en
kognitionsvetare? Vad betyder det att programmera en dator? Vad är en dator?
⁃ Föreläsning 2: Programmeringsspråk, Python: operationer och funktioner, variabler och datatyper.
⁃ Föreläsning 3: Datorn som ett diskret system. Diskret matematik: mängder.
![Page 32: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/32.jpg)
Datorn
![Page 33: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/33.jpg)
Turing-maskinen (1936)⁃ Teoretisk beskrivning av en beräkningsmaskin / dator
⁃ Maskinens beståndsdelar:
Ett band med oändligt antal rutor som kan innehålla en symbol (eller vara tom)
Ett läs- och skrivhuvud som kan läsa och skriva symboler till/från bandet
En ändlig lista över tillstånd.
Ett tillståndsregister som lagrar maskinens aktuella tillstånd.
En ändlig uppsättning instruktioner som beskriver vad som ska göras givet maskinens tillstånd, samt aktuell symbol.
⁃ En instruktion beskriver
vad som ska göras med aktuell ruta (skriva/sudda)
om/hur huvudet ska flytta på sig
maskinens nya tillstånd efter
![Page 34: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/34.jpg)
ENIAC - dator utan lagring av program (1945)
USArmyPhoto
![Page 35: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/35.jpg)
von Neumann-arkitekturen (1945)⁃ En beskrivning av en fysisk arkitektur
⁃ Central processorenhet, Central Processing Unit: styrenhet & aritmetisk-logisk enhet
⁃ Primärminne, Random Access Memory (RAM)
⁃ Input- och output-enhet
![Page 36: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/36.jpg)
von Neumann-arkitekturen⁃ Data och program lagras i gemensamt minne
⁃ Instruktioner utförs sekventiellt, en instruktion i taget
⁃ En operand ("en styck data") bearbetas åt gången
![Page 37: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/37.jpg)
von Neumann-arkitekturen⁃ Gemensam lagring av program och data
Ett program kan skriva data som sedan används som program
Vi kan skapa program som hjälper oss skapa mer avancerade program!
⁃ Sekventiell exekvering: förutsägbarhet när program körs
![Page 38: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/38.jpg)
Några exempel särskilt stora och små datorer
![Page 39: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/39.jpg)
IBM System/360 Modell 91 på Goddard Space Flight Center slutet på 1960-talet
ByUnknown-NASA,PublicDomain,h:ps://commons.wikimedia.org/w/index.php?curid=931293
![Page 40: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/40.jpg)
SIM-kort (JavaCard)
h:ps://www.oracle.com/technetwork/java/embedded/javacard/documentaLon/smartcards-136372.html
![Page 41: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/41.jpg)
Program
![Page 42: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/42.jpg)
Program⁃ samling instruktioner som utför en specifik uppgift när de
körs på en dator
![Page 43: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/43.jpg)
Typer av program⁃ Systemprogram/Plattform
Program som systemprogram som hanterar datorns resurser; hur tillämpningsprogram kan/får använda dem.
Exempel: Operativsystem
⁃ Tillämpningsprogram/applikationer
Program som gör att datorn kan användas för en specifik tillämpning av användaren (utöver att bara "fungera")
Exempel: ordbehandlingsprogram, webbläsare
![Page 44: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/44.jpg)
Operativsystem⁃ Syfte (bl.a.)
Gränssnitt mellan hårdvara och andra program
Gränssnitt mellan program och användare
⁃ Består av flera komponenter
⁃ Exempel på komponenter
processhantering
filsystem
⁃ Exempel på operativsystem
Windows, macOS, Linux, Solaris
![Page 45: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/45.jpg)
ThinLinchttps://www.ida.liu.se/local/students/remote/index.sv.shtml
![Page 46: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/46.jpg)
Terminalen som gränssnitt
![Page 47: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/47.jpg)
Varför använda ett textbaserat gränssnitt⁃ Syfte: miljö för att utveckla och köra egna program
⁃ Enklare (färre rörliga delar):
Output: text (en rad/tecken i taget)
Input: textkommandon
⁃ Kraftfullt
⁃ Jämfört med grafiskt gränssnitt:
Output: fönster med olika interaktiva grafiska komponenter
Input: musposition, musklick, tangenttryckningar, objekt som dras och släpps m.m.
![Page 48: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/48.jpg)
"Terminalen"⁃ Terminalprogrammet tillhandahåller funktionalitet för
program att visa text och ta emot tangentbordstryck från användaren.
⁃ Terminalprogrammet kör ett skalprogram: bash (Bourne Again SHell) som tillhandahåller ett interaktivt gränssnitt för att köra kommandon
⁃ Prompt: sekvens av tecken som visar att skalet är redo att ta emot ett kommando.
⁃ Tecknet $ används ofta för att representera prompten.
![Page 49: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/49.jpg)
"Skriva kommandon"⁃ I terminalen kan man köra inbyggda kommandon,
kompilerade program och skript
⁃ Ingen skillnad på kommandon, program och skript till "utseendet"
⁃ Både kommandon och program körs genom att rätt ord skrivs i prompten
⁃ Jämförelse med grafiskt gränssnitt: "i gränssnittet kan du klicka på knappar, program och skript"
⁃ I kursen kommer ordet "kommando" att användas för att referera till alla varianter
![Page 50: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/50.jpg)
Argument⁃ De flesta kommandon tar emot argument
⁃ Som användare använder vi argument för att styra ett programs beteende
⁃ Syntax för kommando + argument:
$ kommando argument1 argument2
![Page 51: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/51.jpg)
Sökväg⁃ Beskrivning av en plats i filsystemet
⁃ Filsystem: består av kataloger och filer
Kataloger kan innehålla kataloger och filer
Filer innehåller data
⁃ Tecknet / används som skiljetecken mellan namnet på en katalog och kataloger eller filer som ligger i den
![Page 52: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/52.jpg)
Filsystemets trädstruktur⁃ katalog1
⁃ katalog1/katalog1_1
⁃ katalog1/katalog1_1/fil4
⁃ katalog2/hejsan/hoppsan/fallerallera
![Page 53: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/53.jpg)
Rot-, arbets- föräldra- och hemkatalog⁃ Toppen av filträdet, "roten": /
⁃ Aktuell katalog (arbetskatalog): ./
⁃ Föräldrakatalog: ../
⁃ Din användares hemkatalog: /home/<liuid>
/home/jodfo01
![Page 54: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/54.jpg)
Absoluta och relativa sökvägar⁃ Absolut sökväg har med roten
/courses/729G46/kursmaterial/temauppg1
/home/jodfo01/katalog1/fil1
/home/jodfo01/katalog1/katalog2/fil2
/home/jodfo01/katalog1/katalog3/fil3
⁃ Relativ sökväg har inte med roten och utgår från aktuell arbetskatalog (katalogen man står i)
kursmaterial/temauppg1
katalog1/fil1
../katalog3/fil3
![Page 55: 729G46 Informationsteknologi och programmering729G46/kursmaterial/... · 2020. 2. 3. · Lärandemål ⁃ redogöra för och relatera grundläggande informationsteknologiska begrepp,](https://reader035.fdocuments.net/reader035/viewer/2022081623/6143ee746cc38f259c25d9c7/html5/thumbnails/55.jpg)
Exempel på kommandon⁃ echo: skriver ut dess argument
⁃ ls: visar innehåll i katalog
⁃ cd: byter katalog
⁃ mv: flytta fil eller katalog
⁃ mkdir: skapa katalog
⁃ cat: skriv ut innehåll i fil
⁃ touch: skapa ny fil/uppdatera senast ändrad hos existerande fil
⁃ man: hjälptext för kommando