TDIU06 Programmering, grundkurs
Kursinformation
Mål
Kursen har flera mål.
Ett centralt mål är att deltagarna ska lära sig grunderna i programmering, dels allmänt i form av metodik och teknik, dels specifikt i form av programmering i C++. C++ ett stort och komplicerat språk och deltagarna förutsätts inte ha några förkunskaper i programmering, så kursen begränsar sig till grundläggande programmering i C++, grundläggande om klasser samt delar av standardbiblioteket.
Ett annat viktigt mål är att introducera deltagarna till användning av datorer i allmänhet och det datorsystem som kursen ska genomföras på i synnerhet (Sun-datorer med operativsystemet Solaris och fönstersystemet CDE, Common Desktop Environment). I denna datorintroduktion ingår även att lära sig Emacs, som är ett verktyg för att skriva och redigera text.
Organisation
De två första veckorna är renodlade introduktionsveckor. Kursen inleds med en föreläsning som presenterar kursen allmänt och introduktionsdelen i synnerhet samt lärarna. Under dessa två veckor ska deltagarna på laborationerna genomföra en webbaserad datorintroduktion.
I kursens tredje vecka startar C++-programmeringen. Detta inleds med en lektion, där den C++-miljö som vi ska använda kommer att presenteras. Emacs ska användas för att skriva programmens källkod. C++-kompilatorn g++ ska användas att översätta, kompilera, källkoden till motsvarande körbara program. Efter den första lektionen följer en introduktionslaboration, där deltagarna får skriva in, kompilera och köra några små, givna program. Ett syfte med detta är att introducera kompilatorn och hur man använder den, samt hur man hanterar filer som innehåller C++-program i olika former. Ett annat syfte är att introducera programmeringsspråket C++, genom att deltagarna får se några enkla program och därigenom bekanta sig med språkets syntax en del enkla konstruktioner och begrepp. Efter detta kommer de första föreläsningarna om C++. Resten av kursen består av föreläsningar, lektioner och laborationer varvade. På föreläsningarna gås C++ successivt igenom från grunden och deltagarna får arbeta praktiskt med programmering på lektioner och laborationer.
Schemalagda laborationer utförs på IDAs Sun-system i de s.k. programutvecklingslaboratorierna (PUL, SU-lokaler) som finns i hus B på plan 2 och 3. Det är dock i princip möjligt att arbeta från vilken dator som helst med internetanslutning för att utföra datorintroduktionen och för att genomföra C++-laborationer på vilken dator som helst som har en C++-kompilator installerad. Program och annat på fil måste dock kunna överföras till IDAs Sun-system och kunna användas där. Observera dock att obligatorisk närvaro gäller vid schemalagda laborationer.
Hemarbete är ett måste för instudering i samband med förberedelser inför föreläsningar, lektioner och laborationer och för att slutföra laborationer, om man inte hunnit göra klart dessa under de schemalagda laborationerna så man ligger i fas med angivna deadline.
Kursmaterial
En bok ingår i kurslitteraturen:
-
Skansholm, Jan: C++ direkt, andra upplagan, Studentlitteratur.
Materialet till introduktionen till datorsystemet finns i det webbkurssystem (STONE) som ska användas för den delen av kursen.
Laborationsuppgifter och annat material som hör till C++-delen av kursen, utöver boken C++ direkt, kommer att finnas tillgängligt på webben.
Examination
När vi når slutet på den första läsperioden kommer det första examinationsmomentet, UPG1. Detta innebär att den webbaserade datorintroduktionen nu ska vara genomförd och godkänd.
En laborationsserie examineras i och med att läsperiod 2 når sitt slut (LAB1), och en annan när läsperiod 3 når sitt slut (LAB2). Enskilda laborationsuppgifter kan dock ha deadline innan dess. Laborationer redovisas skriftligt genom att källkoden lämnas in till assistenten på papper och även skickas via e-post till assistenten. Om assistenten finner det motiverat kan även muntlig redovisning begäras.
I den tentamensperiod som direkt följer efter kursen kommer den sista examinationen, datortentamen (DAT1), vilken avser hela programmeringsdelen av kursen. Detta innebär lösning av mindre programmeringsuppgifter vid dator samt även att besvara frågor av teoretisk natur som rör programmering och språket C++ enligt kursens omfattning.
Tänk på att:
-
Den examination av datorintroduktionen som ingår i STONE ska utföras utan inblandning av andra personer.
-
Lösningarna till laborationsuppgifterna i C++ ska vara program som designats och kodats av laborationsgruppens medlemmar i jämbördigt samarbete.
-
Alla former av kopiering av texter, programkod, etc., är fusk och måste rapporteras till disciplinnämnden.
Sidansvarig: Tommy Olsson
Senast uppdaterad: 2006-04-25
