Projekt z C++

Transkrypt

Projekt z C++
1000-M1PR1 (matematyka, ró»ne specjalno±ci):
Programowanie I (C,C++),
semestr zimowy 2014/15; prowadz¡cy: A. Mróz
Projekt z C++
Ka»dy student samodzielnie wybiera sobie tematyk¦ i sposób realizacji projektu. Przykªadowe
tematy do wyboru zostan¡ podane na zaj¦ciach, ale jednym z celów projektu jest zmotywowanie
Pa«stwa do pewnej kreatywno±ci i/lub samodzielnego postudiowania literatury (spis: USOS).
Wa»ne: projekty nie powinny si¦ powtarza¢!
1.
Na zal.: projekt powinien speªnia¢ wszystkie poni»sze wymagania:
•
•
•
•
•
•
•
denicja co najmniej jednej klasy,
denicja co najmniej jednej klasy podrz¦dnej,
we wszystkich klasach sensownie zdeniowane konstruktory,
dla ka»dej klasy zdeniowane po kilka metod,
przykªad u»ycia, tj. program wykorzystuj¡cy zdeniowane klasy, metody, funkcje,
wybrane, co najmniej jedno, zagadnienie z listy
(?)
poni»ej,
caªo±¢ powinna by¢ napisana w dobrym stylu, tj.
konsekwentnie stosowane wci¦cia w kodzie,
czytelne i zrozumiaªe komunikaty wy±wietlane na wyj±ciu,
konsekwentnie stosowany styl1 nazewnictwa klas, metod, zmiennych itp.
2.
Projekt wyró»niaj¡cy (tj. skutkuj¡cy podwy»szeniem oceny o maks. 1): to
samo co na zal. i dodatkowe co najmniej 2 (podwy»szenie oceny o 0,5) lub co najmniej 4
(podwy»szenie oceny o 1) zagadnienia (zrealizowane w sposób sensowny) z listy
(?) poni»ej.
(?) Lista zagadnie«:
• rozbudowana hierarchia dziedziczenia klas,
• dynamiczny przydziaª pami¦ci (+ destruktory),
• denicje kilku operatorów dla rozwa»anych obiektów (np. ostream& operator, +, *, ++,
==, ...),
• przeci¡»anie nazw metod,
• polimorzm i metody wirtualne,
• zmienne i/lub metody statyczne,
• biblioteka STL,
• inne (w tym nieomawiane) biblioteki,
• aplikacja graczna okienkowa (powiedzmy, »e ten punkt ma wag¦ równ¡ 4 innym),
• implementacja zagadnienia (algorytmu) matematycznego wybranego spo±ród zada« z wykªadu
lub zaproponowanego przez siebie, wybranego z literatury.
Projekt b¦dzie dokªadnie sprawdzony, w szczególno±ci zadam kilka pyta« kontrolnych i/lub
zadanie polegaj¡ce na prostej modykacji swojego programu. Je»eli b¦dzie jasne, »e projekt jest
niesamodzielny, nie b¦dzie zaliczony!
1
∗
∗
Proponowany styl, przykªadowo:
nazwy klas w stylu:
MojaKlasa
nazwy zmiennych/pól w stylu:
(tj. ka»de sªowo zaczynane wielk¡ liter¡),
moja_zmienna
lub
mojazmienna
(tj. ka»de sªowo zaczynane maª¡ liter¡, ewentualnie sªowa oddzielane podkre±leniem),
∗
nazwy funkcji/metod w stylu:
mojaMetodaBardzoDobra
(tj. pierwsze sªowo zaczynane maª¡ liter¡, ka»de kolejne wielk¡; tak, wiem, jest to troch¦ Java style),
∗
konsekwentnie stosujemy ten sam j¦zyk (tj. albo wszystkie polskoj¦zyczne nazwy, albo wszystkie angielskoj¦zyczne itp.).
Mo»na zaproponowa¢ wªasny styl, ró»ny od powy»szego, ale powinien by¢ stosowany konsekwentnie.