Introduktionsmöte Innehåll

Relevanta dokument
EDAA01 Programmeringsteknik - fördjupningskurs

Mål Förklaring av termer

Mål Förklaring av termer

EDAA30 Programmering i Java - fortsättningskurs

Föreläsning 1 Innehåll

Föreläsning 1 Innehåll. EDAA01 Programmeringsteknik - fördjupningskurs. Detta ska du lära dig... Kursens mål. Detta kan du...

Programmeringsteknik II

Föreläsning 14 Innehåll

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

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

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

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

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion

Föreläsning 15: Repetition DVGA02

Kursanalys DD1312 hösten 2008

Poäng. Start v. DV1: Datavetenskapens byggstenar 7.5. Antal registrerade (män/kvinnor) 38 (38/0)

Innehåll. Mina målsättningar. Vad krävs för att nå dit? Obligatoriska uppgifter. Websajten. Datastrukturer och algoritmer

Programmering, grundkurs

Föreläsning 1: Introduktion till kursen

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

Kursplanering Objektorienterad programmering

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

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

Inlämningsuppgiften. Föreläsning 9 Innehåll. Träd. Datastrukturer i kursen

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

Föreläsning 9 Innehåll

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

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen

Föreläsning 10 Innehåll. Prioritetsköer och heapar. ADT Prioritetskö. Interface för Prioritetskö. Exempel på vad du ska kunna

Välkomna till DIT012 IPGO

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

Datateknik GR (A), Introduktion till programmering i C++, 7,5 hp

Grundläggande Datalogi

Datastrukturer i kursen. Föreläsning 8 Innehåll. Träd rekursiv definition. Träd

Objektorienterad programmering

Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper.

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp

ADT Prioritetskö. Föreläsning 12 Innehåll. Prioritetskö. Interface för Prioritetskö. Prioritetsköer och heapar

Programmering för språkteknologer II, HT2011. Rum

Kursinformation Grundkurs i programmering med Python

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

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

Datastrukturer och algoritmer

Vad handlar kursen om? Algoritmer och datastrukturer. Vad handlar kursen om? Vad handlar kursen om?

Föreläsning 1 & 2 INTRODUKTION

Kursanalys DA2003 sommar 2017

Sätt att skriva ut binärträd

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java

Introduktion till kursen och MATLAB

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

VSMF10 Byggnadskonstruktion - Kursprogram 2019

Datastrukturer och algoritmer

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java

Objektorienterad Systemutveckling Period 3

Kursanalys. Douglas Wikström 15 juni Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008

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

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

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

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

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

Objektorienterad Programkonstruktion

Kursprogram VSMF10 Byggnadskonstruktion

Kursprogram VSMF10 Byggnadskonstruktion

Innehåll. Inblandade personer. ÿkurspresentation Inblandade personer Administration Målsättning Förkunskaper Kursutvärdering Upplägg Översikt

Föreläsning REPETITION & EXTENTA

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

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

CEQ-kommentarer Kurser år 2. CEQ-kommentarer Kurser år 2

Programmeringsteknik F1/TM1

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

Kursanalys DA2003 höst 2017

Föreläsning 13 Innehåll

Föreläsning 9 Innehåll

Objektorienterad programmering Föreläsning 8. Copyright Mahmud Al Hakim Agenda (halvdag)

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

1DV433 HT13. 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?

Abstrakt datatyp. -Algoritmer och Datastrukturer- För utveckling av verksamhet, produkter och livskvalitet.

Tentamen, Algoritmer och datastrukturer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

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?

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

Seminarium 13 Innehåll

Objektorienterad programmering

Kungl. Tekn. Högskolan Förel 1, bild 1 Föreläsning 1: Introduktion ffl Kursinnehåll ffl Javarepetition ffl Referenser ffl Nyckelordet static ffl Klass

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

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 9 Jonas Lindgren, Institutionen för Datavetenskap, LiU

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

Datavetenskapligt program, 180 högskolepoäng

Lägg uppgifterna i ordning. Skriv uppgiftsnummer och din anmälningskod överst i högra hörnet på alla papper.

OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson

Poäng. Start v. Utveckling av mobila applikationer 7.5. Antal registrerade (män/kvinnor) 230 (202/28)

Programmering B PHP. Specialiseringen mot PHP medför att kursens kod i betygshanteringen heter PPHP1408.

Föreläsning 1-2 innehåll

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Tentamen TEN1 HI

Föreläsning 1 Programmeringsteknik och C DD1316. Kurswebbsidan. Mål

Transkript:

Introduktionsmöte Innehåll Introduktion till kursen Kursens mål och innehåll Undervisning Datavetenskap (LTH) Introduktionsmöte ST 2019 1 / 14

EDAA01 Programmeringsteknik - fördjupningskurs Ingen sommarkurs men stöd för din egen inläsning möten för handledning och frågor, juni augusti (ordinarie kurs ges lp 1+2, därefter en gång till i lp3) 7.5 hp patrik.persson@cs.lth.se cs.lth.se/edaa01/sommar Förkunskapskrav: Godkänd på de obligatoriska momenten i EDAA45 Programmering, grundkurs eller godkänt betyg på tentamen i denna kurs eller i EDAA20, EDAA50, EDAA55, EDAA65, EDA011, EDA016, EDA017 eller EDA501 Datavetenskap (LTH) Introduktionsmöte ST 2019 2 / 14

Detta kan du... Förkunskaper en hel del om programmering och objektorientering begrepp som klass, objekt, attribut, metod, parameter skriva mindre program i programspråket Java skriva och debugga program i utvecklingsverktyget Eclipse använda vektorer, matriser och (delvis) klassen ArrayList enkla algoritmer som t.ex. linjärsökning, insättning i en redan sorterad vektor använda arv superklass, subklass, abstrakt metod Datavetenskap (LTH) Introduktionsmöte ST 2019 3 / 14

Detta ska du lära dig... Kursens mål mer om programmering och objektorientering interface, exceptions, generik... formulera och använda olika algoritmer för att effektivt lösa problem sökning, sortering, rekursiva algoritmer... Känna till olika abstrakta datatyper viktigaste operationerna, användningsområden lista, stack, kö, mängd, map, prioritetskö använda olika datastrukturer vektorer, länkade listor, binära sökträd, hashtabeller, heapar dels genom att använda färdiga klassbibliotek och dels genom att göra egna implementeringar skriva program med grafiska användargränssnitt (JavaFX) testa klasser (junit) analysera och jämföra algoritmers tidsåtgång Datavetenskap (LTH) Introduktionsmöte ST 2019 4 / 14

Mål Förklaring av termer Algoritm Beskrivning hur man stegvis löser ett problem. Ex: matrecept, linjärsökning Abstrakt datatyp En abstrakt modell tillsammans med de operationer man kan utföra på den. Ex: lista med operationer för att sätta in och ta bort element Datastruktur En samling variabler (ofta med samma datatyp) som hör ihop. Ex: vektor Klassbibliotek Färdiga klasser som är tänkta att användas i andra program. Fungerar som en utvidgning av programspråket. Ex: Java Collections Framework Datavetenskap (LTH) Introduktionsmöte ST 2019 5 / 14

Varför är detta viktigt att kunna? Till skillnad mot övningsprogram är riktiga program stora, skrivs av flera personer, har lång livstid, kräver underhåll.... Därför är följande viktigt: bra design läsbar kod att man kan välja lämpliga algoritmer, datastrukturer och färdiga byggstenar (klasser ur bibliotek) bra verktyg för programutveckling, felsökning och testning Datavetenskap (LTH) Introduktionsmöte ST 2019 6 / 14

Exempel Skriv program för att hantera kontakter (namn, mobil nr...). Att fundera på: Ska vi använda en vektor eller finns det andra, bättre sätt att lagra posterna? Finns det färdiga klasser som kan användas? Hur sker kommunikationen med användaren (utskrifter i konsolfönstret eller snyggare grafiskt användargränssnitt)? Hur designar man programmet så att man lätt kan byta sätt? Hur söker man snabbt om antal poster är stort?... Datavetenskap (LTH) Introduktionsmöte ST 2019 7 / 14

Från problem till program Specifikation av problemet Design Val av lösningsmetoder (algoritmer, datastrukturer) för delproblem Implementering (programskrivning) Testning Underhåll (korrigeringar och uppdateringar) 2 Behandlas i EDAF60, OMD Behandlas i denna kurs Parallellt: dokumentation Datavetenskap (LTH) Introduktionsmöte ST 2019 8 / 14

Kursmoment Laborationer 6 st, obligatoriska Kräver förberedelser. Kan lösas i grupper om två, eller individuellt. Inlämningsuppgift Kan lösas i grupper om två, tre, eller individuellt. Finns på webbsidan. Det finns två alternativ att välja mellan. Övningsuppgifter Viktigt komplement till laborationerna. Löses på egen hand. Datavetenskap (LTH) Introduktionsmöte ST 2019 9 / 14

Examination Skriftlig tentamen Kursen inrapporteras i Ladok i två delar Obligatoriska moment (laborationer + inlämningsuppgift) 3 hp Tentamen 4.5 hp Datavetenskap (LTH) Introduktionsmöte ST 2019 10 / 14

Rekommenderad lärobok E. Koffman och A. T. Wolfgang: Data Structures: Abstraction and Design Using Java, 3rd Edition, Wiley 2016. Det går även bra att använda den andra upplagan (med Java 7). Den första upplagan heter Objects, Abstraction, Data Structures and Design Using Java Version 5.0 och fungerar också. Litteraturanvisningar ges för alla tre upplagorna. Datavetenskap (LTH) Introduktionsmöte ST 2019 11 / 14

Relation till andra kurser För C och D ingår kursen i kurskedjor. Det är viktigt att känns till förkunskapskraven i kedjan. Finns på webbsidan. I övrigt gäller att nästan alla valfria kurser i datavetenskap kräver godkänt i EDAA01. Datavetenskap (LTH) Introduktionsmöte ST 2019 12 / 14

Om att lära sig programmera Programmering är kul! Programmering tar tid (fundera ut lösningar, hitta fel...). Man lär sig programmera genom att träna. Skriv program, testa, hitta på egna program, experimentera... Men inte bara - glöm inte bort teorin. Starten är viktig. Häng med från början! Det man lär sig kommer att byggas på och användas genom hela kursen. De olika undervisningsmomenten (övningsuppgifter, labbar, föreläsningar...) finns av en anledning och kompletterar varandra. Datavetenskap (LTH) Introduktionsmöte ST 2019 13 / 14

Sommarinläsningen bygger på ditt eget arbete Webbsida: cs.lth.se/edaa01/sommar Länk till kursmaterial (senaste ordinarie kursomgång) Här finner du alltså laborationer, övningar, inlämningsuppgift och kursprogram Använd föreläsningsbilderna och ev. kursboken Många av ämnena (binära sökträd, sorteringsalgoritmer,...) finns det även bra beskrivningar av på nätet Gör laborationerna + inlämningsuppgiften För handlednings- och redovisningstillfällen, se kurssidan ovan Anmälningslänk skickas ut ca en vecka innan varje tillfälle Du kan tentera i augusti E-post: Mail kommer vid behov att skickas till din student-mail. I nödfall går det bra att maila kursansvariga, men svaret kan dröja. Men kom ihåg: du förbinder dig inte till något, utan får gärna slutföra kursen under en senare kursomgång! Datavetenskap (LTH) Introduktionsmöte ST 2019 14 / 14