TDIU01 (725G67) - Programmering i C++, grundkurs Introduktion till kursen och programmering Eric Elfving Institutionen för datavetenskap 2 september 2014
Översikt Kursinformation Personal Kursmål Upplägg Tidsplan Kurshemsidorna Programmering - historia och grunderna
Personal Namn Torbjörn Jonsson Eric Elfving Daniel Persson John Litborn Tore Risinger Viktor Olsson Madeleine Häger Dahlqvist Tommy Färnqvist Roll Examinator Kursledare Assistenter Kursadministratör Studierektor
Kursmål Kursens syfte är att ge färdighet i att använda ett unixbaserat datorsystem, ge en grund för att kunna utveckla små datorprogram och lära ut grunderna i programspråket C++. Efter genomgången kurs ska studenten kunna konstruera programmerbara lösningar för givna problem och implementera dessa i programspråket C++ samt använda ett datorsystem för att arbeta med program och texter samt söka information.
Upplägg Föreläsningar (FÖ) Lektioner (LE) Laborationer (SN) Seminarier (SE) Dugga (DU) Datortentamen
Upplägg - Lektioner Problemlösning i grupp Tre hastighetsnivåer : Intro Mellan Erfaren Alla grupper tar upp samma material Känner du att du gått fel - byt grupp!
Upplägg - Laborationer Arbete i par Anmälan via länken labgruppsanmälan på kurshemsidan Hemarbete VIKTIGT Hård respektive mjuk deadline Inkluderar datorintroduktion Egna övningar man redovisar enskilt för assistent
Upplägg - Seminarie Fokus på problemlösning Hemarbete Presentation och diskussion i mindre grupper
Upplägg - Dugga En dugga efter varje seminarie Uppgiften bygger vidare på motsvarande seminarieuppgift Egen kontroll av problemllsningskunskaper Frivillig, men godkänd på minst två av de fyra sista duggorna ger automatiskt betyg 3 på tentan!
Upplägg - Tentamen Fokus på problemlösning Datortenta 5 timmar Liverättad Anmälan via studentportalen
Tidsplan Kursen är värd 6hp vilket motsvarar ungefär 160h arbete. Ungefär 80h är schemalagd tid vilket betyder att ni för varje schemalagd timme bör arbeta (minst) en timme på egen tid.
Kurshemsidorna http://www.ida.liu.se/~tdiu01 Innehåller mycket nyttig information Laborationer Kursinformation Kontaktinformation Föreläsningsbilder Gamla tentauppgifter Mycket mera
Programmering - En introduktion Vad är programmering?
Programmering - En introduktion Två grundbegrepp Källkod (source code) Valfri uppsättning datorinstruktioner i något, av människor, läsbart programmeringsspråk. Vanligtvis i textuellt format. Kompilator Ett program som översätter från ett språk till ett annat, vanligtvis från källkod till ett exekverbart (körbart) språk.
Programmering - En introduktion Programmeringsspråkens nivåer Maskinspråk Datorns interna språk, i form av binärkod (0 eller 1) Assemblerspråk Mnemoniskt maskinspråk, ex MOV A,#0FFH Högnivåspråk Språk utvecklade för att bättre passa mänskliga programmerare
Programmering - En introduktion Tips för att bli en bra programmerare Att lösa problemet är det intressanta Ju svårare desto bättre Fokusera på ett (del-)problem i taget Klienterna kommer till dig för att det är svårt Arbeta systematiskt Välj dina uppdrag med omsorg Övning ger färdighet!
C++ - en introduktion Historik Bjarne Stroustrup påbörjade C with classes vid Bell Labs under 1979 Grundas på C men har influenser från Simula, Ada, Algol 68 med flera 1983 bytte språket namn till C++ och Bjarne släppte första upplagan av boken The C++ Programming Language 1985. Denna fungerade som standard tills den första officiella standarden släpptes. 1998 Första standarden godkänns av ISO 2003 En ny standard släpps men får inte så stor slagkraft 2011 Ny standard med många förbättringar släpps (C++11) 2013 Bjarne släpper fjärde upplagan av The C++ Programming Language
C++ - en introduktion Olika sätt att programmera C++ Texteditor + kompilator Kod skrivs i en texteditor (ej ordbehandlare) och kompileras därefter separat till exekverbar kod. IDE - Integrated Development Environment Utvecklingsmiljö med integrerad kompilator, t.ex. Eclipse och Code::Blocks I denna kurs (och många följande kurser) rekommenderar vi det första alternativet.
www.liu.se