Välkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.

Relevanta dokument
Välkomna till DIT012 IPGO

Programmeringsteknik I

Planering Programmering grundkurs HI1024 HT TIDAA

Planering Programmering grundkurs HI1024 HT data

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

Föreläsning 1: Introduktion till kursen

Introduktionsmöte Innehåll

Imperativ programmering. Föreläsning 2

Föreläsning 1: Introduktion till kursen

Planering Programmering grundkurs HI1024 HT 2014

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

Grundkurs i programmering - intro

Föreläsning 1: Introduktion till kursen

GRUNDKURS I C-PROGRAMMERING

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

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

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

Hur tycker du kursen har varit? Tycker du att kursens upplägg har underlättat för dig att uppnå lärandemålen?

Design och konstruktion av grafiska gränssnitt

Poäng. Start v. Applikationsprogramm ering i Python 7.5. Antal registrerade (män/kvinnor) 50 (34/16)

Objektorienterad Programmering (TDDC77)

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

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion

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

KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012

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

Programmeringsteknik II

Introduktion till Haskell

Kursinformation Grundkurs i programmering med Python

Evaluation Summary - CDT104 Grundläggande Webbdesign HT07 Dan Levin

Välkomna till kursen i grundläggande programmering DVGA08, ISGA04

Föreläsning 1 & 2 INTRODUKTION

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

Objektorienterad programmering och Java

729G06 Föreläsning 1 Objektorienterad programmering

729G04 Programmering och diskret matematik TEN kl 8-12

Objekt-orienterad programmering och design. DIT953 Niklas Broberg, 2018

1DV432 ST14. I vilken utsträckning har kursens innehåll och uppläggning gett förutsättningar för att du ska ha uppnått respektive lärandemål?

Datavetenskapligt program, 180 högskolepoäng

Objektorienterad programmering

Grundläggande programmering med matematikdidaktisk inriktning för lärare i åk 7-9

Imperativ programmering

Design och konstruktion av grafiska gränssnitt

Föreläsning 3. Programmering, C och programmeringsmiljö

Thomas Padron-Mccarthy Mobila applikationer med Android, 7.5 hp (Distans) (DT107G ) Antal svarande = 11. Svarsfrekvens i procent = 14.

Programming in C# and.net Framework

Tentamen i Grundläggande Programvaruutveckling, TDA548

Om mentorsverksamheten i matematik

Kvantfysikaliska koncept

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

Grundläggande programmering med matematikdidaktisk inriktning för lärare i åk 7-9

Erfarenheter från labben

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

Objektorienterad Programmering (TDDC77)

Objekt-orienterad Programmering och Design. TDA552 Alex Gerdes, HT-2018

Outline. For. I istället för att följa det normala ordningen, man ändra den. I i Java får man inte göra hopp hur som helst

Labb 1: Vad, hur, och varför?

Enkätresultat. Kursenkät, Flervariabelanalys. Datum: :47:04. Aktiverade deltagare (MMGF20, V10, Flervariabelanalys) Grupp:

KURSUTVÄRDERING MATEMATIK I: 5B1115

Poäng. Start v. Programmeringsteknik med C och Matlab 7,50. Antal registrerade (män/kvinnor) 274 (194/80)

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

RESULTAT - MÅLUPPFYLLELSE

729G04 Programmering och diskret matematik

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Kursinformation, TNIU19 Matematisk grundkurs fo r byggnadsingenjo rer, 6 hp

Tentamen i Grundläggande Programvaruutveckling, TDA548

ST16-1DV432-7,5hp. Antal svar: 26

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

Hur man programmerar. Exempel på problemlösning i Python

729G04 Programmering och diskret matematik

Dagens föreläsning (F15)

Introduktion till kursen och MATLAB

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

Mall för att skapa och revidera kursplan

Att göra examensarbete i Miljö och vattenteknik. Se W:s exjobbssida.

Miniprojekt 1 (forts): 2D datorgrafik, avbildningar och begrepp

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java

TDDD78 Att välja och planera ett projekt

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

7,5 högskolepoäng. Objektorienterad systemutveckling I Provmoment: Ladokkod: 21OS1B Tentamen ges för: Lycka till! /Peter & Petter

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

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

1. Hur många timmar per vecka har du i genomsnitt lagt ner på kursen (inklusive schemalagd tid)?

Allmänna frågor om kursen: Kursutvärderare: IT-kansliet/Christina Waller. 1. Vad är ditt allmänna omdöme om kursen? Antal svar: 30 Medelvärde: 3.

Introduktionskurs i datavetenskap, 3p.

Ellära IF1330. Mål. Du skall kunna:

Övningsuppgift. En array baklänges. Steg 1. Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402

Objektorienterad programmering

GIT L0006B. C# och Windowsbaserad applikationsutveckling. Information inför kursstart

Tentamen Programmering fortsättningskurs DIT950

Välkomna! Utveckling och drift av mjukvarusystem. Webbprogrammerare. #wplnu #udmlnu.

Guide Studieteknik. Tips för lättare studier!

TDDD38-Avancerad programmering i C++

Sammanställning av kursutvärdering Samlad bedömning

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Den perfekta studenten ur lärarnas synvinkel

Administrivia. hh.se/db Verónica Gaspes (Kursansvarig) 2 Daniel Petersson (Labassistent) Examination. 1 Skriftlig tentamen (betyg)

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

SAMMANSTÄLLNING 1 (13) Datum för sammanställningen Period 3, 2007

Transkript:

Välkomna till DIT012 IPGO 1 Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.

Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare - Joachim von Hacht, hajo@chalmers.se, 772 1003 Övriga handledare, se kurssida 2

Studenter main :: IO () main = do xs <- readints let s = sum xs a = fromintegral s / fromintegral (length xs) putstrln $ "Sum = " ++ show s putstrln $ "Avg = " ++ show a readints :: IO [Int] readints = rec [] where rec xs = do putstr "> " txt <- getline let x = read txt if x < 0 then return xs else rec (x:xs) value = 1; sum = 0; n = 0; while 1 value = input( 'Enter an integer > '); if value >= 0 sum = sum + value; n = n + 1; else break; end end if n > 0 mean = sum / n; else mean = 0; end disp(sprintf('mean value is: %d', mean)); 3 Datavetare kommer från Haskell (vänster), matematiker från MathLab (höger)

Kommunikation Allt ni behöver finns på kurssidan - http://www.cse.chalmers.se/edu/course/dit012 Meddelanden och nyheter läggs in efter hand - Viktigt att besök sidan emellanåt - Kursen går för första gången i denna form, ev. fel och oklarheter kan dyka upp, meddelas på kurssida Det går, i alla sammanhang, alltid bra att fråga! 4

Innehåll per Vecka 1. Från Haskell/Mathlab till Java. Grundläggande imperativ programmering och arbetssätt 2. Referenser (~pekare) 3. Typer 4. Strängar och samlingar (intro OO) 5. Klasser och mer typer (forts. OO) 6. Objektorienterade tekniker (forts. 2 OO) 5

Planering Ca: (4h föreläsningar, 2h övningar, 7h laborationer)/vecka Veckor 1 2 3 4 5 6 7 Tentamen Lab 1 Lab 2 Lab 3 Övningar och laborationer i datorsalar. 6

Föreläsningar Föreläsningar kommer att innehålla inbäddade övningar - Jag lägger in då jag tycker det passar Inledningsvis dyker mycket upp - Vi repeterar och fördjupar efter hand 7 Jag kommer troligen inte att hinna gå igenom varenda bild - Viktigt att gå igenom allt själv!

Bok 8 Valfri bok, i bilden en engelsk som är bra, vill man ha en svensk tar man den andra - Ni får själva matcha kapitel i böcker mot mina föreläsningsanteckningar.

Föreläsningsanteckningar Föreläsningsanteckningar (bildserier) finns på kurssida - Ordnade efter område och (ungefär) veckor. - Veckobilder är sammanställda utifrån områdesbilder. - En del bilder finns i flera serier. - Minneskartor, finns också på kurssida, kanske hjälper med att få in begrepp 9

Språk 10 Svårt område: - Jag talar/använder det som känns bäst men försöker använda svenska (speciellt när det svenska ordet är självförklarande, enklare eller kortare). - Anger ofta begrepp på engelska också - All kod (verkligen all) skrivs dock på engelska - Se länk kurssida om olika svengelska uttryck.

Övningar och Laborationer Övningar - Övningar förbereder för laborationer - Behöver inte redovisas men diskutera gärna lösningar med handledare. - Vissa övningar står som Interactive på schemat. Innebär att vi kodar tillsammans (först ni, sedan visar jag min lösning) Laborationerna - Är obligatoriska. - Ni redovisar laborationer för handledare under laborationspassen. - Skall göras i grupper om 2 studenter. - Alla i gruppen måste bli godkända (kunna svara på frågor) för att gruppen skall bli godkänd. - U/G 11

Utvecklingsmiljö Vi använder Linux, Java 8 och IntelliJ - I skolan finns allt Vill du ha miljön på egen dator? - Java och IntelliJ finns för all operativ. - Installera Java först - Därefter IntelliJ Java 8 = Java 1.8 12

Omvänd Lärlingspedagogik Hämta övningsbunt från kurssida Titta igenom, få överblick Se kodexempel Studera/kör/ experimentera Gör övningsuppgifter Se föreläsnings anteckningar Se Bok Föreläsning Skriv ner frågor. Ta med till föreläsning! Fråga handledare Nästa övning Laboration 13 Kursen använder omvänd lärlingspedagogik - Omvänd = Kursen vänder på övningar och föreläsningar - D.v.s. ni börjar med övningarna utan att innehållet gåtts igenom på en föreläsning! - Lärlings = Ni arbetar som lärlingar under övningarna och laborationerna, d.v.s. studerar (härmar) exempel och får handledning av en mästare. - INLEDNINGSVIS SÅ FÅR NI HELT ENKELT HÄRMA FRÅN GIVNA KODEXEMPEL (eftersom inget har gåtts igenom) Varför? - Genom att göra övningar först har ni förarbetat (tänkt till) inför föreläsningen. Lättare att hänga med och ställa frågor. - Genom att ta med frågor från övningar/labbar har ni en chans att driva föreläsningar i den riktning ni vill. - Olika personer lär sig på olika sätt, ta chans att påverka! - Jag vet ungefär vad ni har sett och kan anknyta till detta.

Bra Labgrupper 14 I programmering förstärks skillnader i kunskaper. - En liten skillnad mellan två personer kan göra att den ena får (mycket) svårt att hinner med. - Att som nybörjare jobba ihop med en erfaren programmerare hjälper inte, tvärtom, det stjälper! - Försök hitta kamrater som ligger på så samma nivå som möjligt.

Tentamen Skriftlig tentamen - Papper, penna och suddgummi - Inga hjälpmedel (förutom lexikon engelska - valfritt språk) - Om ni gjort, och förstått, övningarna och laborationerna skall det inte behöva tentamenpluggas istället - repetera övningar och laborationer 15

Examination För att klara kursen måste du få alla laborationer godkända samt klara tentamen. Kursbetyg ges av tentamen enligt Betyg Poäng/Maxpoäng VG 0,73 G 0,4 U < 0,4 16

Programmering vs Matematik Start??? Start! Matematik Programmering 17 I t.ex. matematik finns en ganska tydlig ordning, vad som kommer först. - I programmering finns ingen lika tydlig sådan, det finns alltid något före - Man får acceptera att man inte för tillfället förstår alla detaljer. - När kursen är färdig skall allt (som gäller denna kurs) var uppenbarat.

Programmering är mer Problemlösning Arbetssätt Fackspråk Kvalitet 18 Förutom själva inlärningen av språket och kodandet sker det flera andra aktiviteter då man lär sig programmera - Vi måste lösa problem som inte direkt har med kodandet att gör. Problemet i sig kan vara svårt. - Vi måste arbeta på ett strukturerat sätt - Om ej kör vi fast och kommer inte vidare! - Våra program måste hålla av viss kvalitet, det räcker inte att programmet (kanske) fungerar. - Vi bygger upp ett fackspråk

Tänk först koda sen Tankar! 19 Har ni säkert gjort automatiskt eller hört någon säga - Använd papper och penna, visualisera, kommunicera!

Frågor? 20