bild
Skolan för
elektroteknik
och datavetenskap

Programsystemkonstr. m. C++, cprog07

Information f�r cprog07

Sista redovisningar

Det blir redovisningar 25:e och/eller 26:e med bibehallen bonus. Uppdatering, det blir redovisningar b�de m�ndag och tisdag eftermiddag. Jag tar redovisningar via sima-lista (endast eftermiddag) och kommer dit ni sitter. Eventuellt f�r jag hj�lp p� tisdag och kan l�gga bokningsbara tider.

Redovisningar augusti

Jag tar emot redovisningar f�r lab3 (+lab3 extrauppgifter) m�n 18:e och tis 19:e augusti ensam. Jag har en simak� �ppen och g�r till er n�r n�gon skriver upp sig. Jag kan �ven ta emot redovisningar efter 18 f�r de som jobbar och vill redovisa efter jobbet.

I �r verkar det vara flera som vill utnyttja augusti-redovisning, skulle det visa sig ohanterligt m�nga l�gger jag upp tider m�ndag och/eller tisdag 25-26.

Resultat fr�n labbveckan klara

Labbredovisningarna fr�n labbveckan �r inrapporterade till ladok.

Labbvecka i juni

Det finns en labbvecka i juni f�r de flesta labbkurser p� CSC, anm�l intresse f�r att redovisa lab3 h�r

R�ttade tentor

Tentorna �r r�ttade men inte anslagna. Tal 2 och 3 har inte g�tt s� bra och de �r viktiga tal.

Omtenta

Tisdag 15/1 �r det omtenta, det �r inte s� m�nga anm�lda och det finns 20 platser kvar. N�sta tenta �r ordinarietentan i oktober. Jag har f�rl�ngt anm�lningstiden f�r omtentan.

Tider f�r lab3

Deadline f�r lab3 flyttas till mitten p� januari p.g.a. handledarbrist. Jag l�gger upp tider f�r onsdag 16 januari.
Tider kan bokas via denna knapp. .

Kursenk�t

Tryck h�r f�r att h�mta kursenk�ten:

Om deadlines

  • Deadline f�r bonus p� lab3 flyttas till ett labbpass tidigt i januari. Datum best�ms senare. Man kan d� �ven redovisa grunduppgiften p� lab1 och lab2
  • �vriga redovisningstider �r under allm�na redovisningsveckan i juni samt i augusti en vecka f�re kursstart. D� kan man redovisa grunduppgiften p� labb ett, tv� och tre samt extrauppgifterna till lab3.
  • Deadline f�r redovisningar av lab1 och lab2 extrauppgifter �r imorgon

AFS nere

I morse var afs servern nere. Jag har f�tt brev fr�n tre grupper och bekr�ftat dessa brev. Kontrollera att ni f�tt undansparning bekr�ftat av mig.

Ny g�stf�rel�sning

Tid: 4:e december kl 13 sal E2

Daniel Aarno fr�n Virtutech kommer att prata om virtualisering och hur virtualisering kan hj�lpa mjukvaruutvecklare; speciellt med avseende p� de nya utmaningar som st�lls p� utvecklare i en tid d� multicoreplattformar blir allt vanligare och parallellismen i programmen �kar. L�s mer h�r

Jag kommer prata om hur man skriver parallella program generellt och visa exempel p� hur man kan wrappa pthreads i C++ f�r att f� ett mer objektorienterat API. Kommer �ven visa exempel p� l�s och hur man kan anv�nda RAII f�r att stoppa ett l�sobjekt p� stacken och automatiskt l�sa upp det d� funktionen returnerar eller h�jer undantag. Kommer �ven ta upp de vanligaste felfallen med parallela progra, races och dead-locks.

Tider f�r komplettering

Jag har provat ett nytt bokningssystem men �tergick till ett gammalt. Alla tider �r upplagda och f�s via knapp p� tentasidan.

Jag l�gger knappen h�r ocks� .

G�stf�rel�sning p�minnelse

M�ns Vestin fr�n Dice g�stf�rel�ser onsdag 21/11 15-17 i sal D2.

N�gra allm�na reflektioner om tentan

Jag har skrivit ner n�gra allm�na reflektioner som det �r bra om alla tar del av.

Om �verlagring

Om man �verlagrar en funktion s� blockeras alla gamla medlemsfunktioner med annan signatur. Det �r ett designbeslut. Man ska inte beh�va underh�lla basklassens inaktuella (deprecated) metoder. F�r att f� tillg�ng till dem kan man anv�nda using. Man skulle kunna t�nkt sig en annan designl�sning d�r man alltid f�r med basklassens alla metoder och explicit skrev en instruktion, t.ex. �rv_inte, f�r att exkludera dem.
struct A {
    void foo(int x) { std::cout << "K"; }
    void foo()      { std::cout << "J"; }
}
struct B : public A {
    void foo() { std::cout << "A"; }
}

Om tillst�nd

Ur programeringsteknisk synvinkel �r ett tillst�nd lika med en variabel. I objektorienterade spr�k f�respr�kas att tillst�nd ska ligga som medlemsvariabler i objekt hellre �n tvi, tve en global variabel. Tillst�nd �r ett centralt objekt i objektorienterad programmering och b�r ha n�mnts i tidigare kurser. D-linjen har det lite mer f�rsp�nt som har en hel kurs som fokuserar p� programmeringsparadigm med mer eller mindre tillst�nd.

En ytterlighet �r funktionella spr�k som inte ens accepterar tillst�nd i for-loopar. Att kod kan bete sig annorlunda beroende p� tillst�ndet i loop-variablen (ofta ben�mnd i) anses s� fult att man inte till�ter for/while-slingor utan anv�nder rekursion ist�llet.

Om polymorfi

Arv och polymorfi har definitiv med varandra att g�ra men en v�l s� bra beskrivning av arv visar inte n�dv�ndigtvis att man f�rst�tt vad polymorfi �r. Ord som virtual, run-time, pekare/referens och anrop kan vara bra att ta med i sammanhanget.

Det �r extra viktigt att f�rst� polymorfi i C++ eftersom virtual �r valbart vilket det inte �r i java.

Tentaresultat i ladok (och mina sidor)

Tentaresultat i ladok finns det av ok�nd anledning bara tv� sorter av, underk�nd eller godk�nd. Vill man veta mer f�r man anv�nda res show cprog07.

Problem med calendar i kattis

Jag kan inte se mycket mer �n vad ni sj�lva kan se i svaren fr�n kattis. Om ni fastnar p� n�got calendar problem som tar flera timmar s� kan ni prova skriva till Mattias (zalenski at csc ...) som har m�jlighet att sp�ra vad som h�nder internt i kattis.

Lab 3 �r uppe

Tentor r�ttade

Men de �r inte inrapporterade. De kommer att l�ggas in i res f�rst och sedan i ladok varefter de syns i mina sidor. Ganska m�nga kommer att f� kompletteringsbetyg Fx. Instruktioner och kommentarer till tentan kommer upp p� tentasidan. Fr.o.m. att tentan �r inrapporterad i ladok har man tre veckor p� sig att komplettera.

Fel i lab2 pek

Det ska vara fram till och med 2558 inte fram till. Jag var inte medveten om att det fanns testfall �r 2558.

Om signal 6

En av orsakerna till signal 6 kan vara att en konstruktor kastat ett exception den inte borde och att det sm�ller n�r testprogrammet f�rs�ker n� det som inte konstruerats. Prova testfallen jag lagt upp, har man tur f�r man samma felbeteende d�r.

Tentan inte f�rdigr�ttad

Nya tider f�r komplettering kommer att annonseras.

Illegal function

Kan man f� n�r kattis g�r systemanrop som den inte tycker om. H�r st�r hur ni kan anv�nda kattistime.

Tentar�ttningen

Tentar�ttningen �r f�rsenad. Det �r ca 30 tentor kvar att r�tta och sedan m�ste alla tentor sorteras. F�r komplettering g�ller att man har tre veckor efter att tentar�ttningen �r klar men det m�ste koordineras med n�gon (mig, Mattias eller Kristoffer) som kan ta emot kompletteringen. Om ni hinner, utnyttja denna veckas kompletteringstid. Jag har lagt upp tentan att titta p�.

Testfall till lab2

Jag har lagt upp tv� testfiler (cprog23.in och cprog22c.in) med sammanlagt 37000 testrader till lab2. Om ni har problem med kattis kan ni prova fels�ka med dessa testfall.
cat cprog23.in | dittprogram > ditt_utdata
diff ditt_utdata cprog23.ans 
dittprogram byggs med cprog07lab22c.cpp respektive cprog07lab23.cpp

Anm�l er till tentan

Anm�l er till tentan via mina sidor. Ni loggar in via kth.se. F�r er som inte tro sig ha ett kth-login, prova med nadalogin.

Inspelade f�rel�sningar

�r inte alls enkelt. Powerpoint fungerade olika p� Mac, tills det l�st sig har jag lagt upp powerpointinspelningar om ca 40 Mb var.

Lab2

Lab2 �r publicerad som pdf

F�rel�sningar, f�rdr�jd inspelning

Den ibook jag skulle f� l�na hade fel OS s� jag f�r v�nta p� den till imorgon. Morgondagens f�rel�sning kommer att blicka fram�t mot lab2. De missade f�rel�sningarna �mnar jag spela in det mest centrala och l�gga upp h�r.

En �vning inst�lld idag

Uppdatering, en av �vningsassistenterna har f�tt barn. Gratulerar! S� en av D-salarna g�r bort. Jag g�r till Q21 nu.

Lab 2

Lab 2 �r ganska lik f�rra �rets labb. Vi v�ntar p� ett nyutvecklat r�ttningsprogram. till skillnad fr�n lab1 s� �r tanken att man ska f� historik p� felen.

Missade f�rel�sningar

Jag kommer att spela in n�gra korta powerpointf�rel�sningar f�r att po�ngtera det viktigaste av de missade f�rel�sningar. Att boka nya tider vet jag av erfarenhet �r ganska meningsl�s eftersom kursdeltagarna har s� olika scheman. Jag hoppas kunna publicera n�gra redan idag, de blir i quicktimeformat.

�vning tisdag 2/10

Jag �r tillbaka och komer att ha en �vningsgrupp. S� vitt jag vet �r alla �vningsassistenter friska s� f�rhoppningsvis blir det fyra grupper.

Lab1 deadline flyttas till onsdag 3/10

Jag ska uppdatera kvittenspapper och res. Kattisadministrationen meddelar att kattis kommer att vara nere ett par timmar under arbetstid n�gon g�ng n�sta vecka oklart n�r. F�r deadline g�ller hela onsdagen som giltig inskickningstid (fram till midnatt men prioritera inte bort s�mn).

Redovisning av lab

Det �r t�nkt att ni ska redovisa efter deadline men skicka in en godk�nd l�sning dessf�rinnan. Labbtillf�llen schemalagda i gr�n sal �r t�nkta som redovisningstider (se kurspm) medan �vriga �r i f�rsta han hj�lp.

F�r de som har kattiskonton sedan tidigare

Ni f�r ingen separat epost fr�n kattis utan kan anv�nda ert tidigare konto. Om ni har gl�mt l�senordet s� kan f� ett nytt fr�n kattis-support.

Inga f�rel�sning 26/9

Jag vill dessutom be om urs�kt till de som inte fick meddelande om att f�rel�sningen ig�r var inst�lld.

Inst�llda f�rel�sningar

Jag har varit hos en specialist och f�tt nya mediciner. Om de hj�lper �r prognosen god f�r n�sta vecka. Det blir ingen f�rel�sning 25/9 och troligen inte 26/9. Jag l�gger upp f�rel�sningsmaterial p� n�tet.

Tre �vningssalar 18/9

Jag kan fortfarande inte prata. Hittar jag ingen vikarie blir det tre salar idag. Sal E52 stryks.

Kattiskonto och filer

Ni ska ha f�tt era kattiskonton nu. Det kommer instruktioner per epost till er nadaadress hur man anv�nder kattis. De filer som ska skickas in med er l�sning ligger p� kurskatalogen.

Inst�lld f�rel�sning igen

Jag har varit till doktorn och f�tt diagnosen st�mbandskatarr och kan inte f�rel�sa idag. Uppdatering f�ljer ...

Kattistester och filer

cprog07lab14.cpp och cprog07lab15.cpp �r inte upplagda �nnu. De ska anv�ndas n�r ni f�tt kattiskonton.

Fredag 14/9

Det �r os�kert om jag har n�gon r�st imorgon, jag har ingen idag. Om f�rel�sningen st�lls in skriver jag tidigt p� morgonen.

Tv� �vningssalar 11/9

Som tidigare meddelats �r en av doktoranderna p� konferens. Jag �r fortfarande f�rkyld. Andra som kunnat vikariera har ocks� insjuknat. Summa summarum �r det bara tv� �vningsgrupper idag. F�rslagsvis i de tv� st�rsta salarna vilket torde vara E31 och E35.

F�rel�sning 10/9 inst�lld

Jag har blivit ordentligt f�rkyld och m�ste tyv�rr st�lla in f�rel�sningen.

L�get fredag 7/9

V�ldigt m�nga har redan resistrerat sig i res. J�ttebra! . Det g�r att kontrollera om man �r registrerad med res show cprog07. Jag har gjort ett par r�ttelser i lab1 t.ex. funktionen offbyone heter must_follow_a.

Kursstart tisdag 4:e september sal V1

Copyright © Sidansvarig: Alexander Baltatzis <alba@nada.kth.se>
Uppdaterad 2008-08-24