Główne założenia projektowe:
- Realizacja zadania będzie podzielona na 3 etapy, z których każdy jest oceniany osobno.
- Głównym celem projektu jest nauka wykorzystania poznanych narzędzi z warsztatu programisty (ang. learn by doing).
- W trakcie realizacji projektu obowiązkowo wykorzystujemy następujące narzędzia: CMake, LaTeX, Bash, Git, GTest (od drugiego etapu).
- Główne elementy programu piszemy w języku C.
- Zadanie nie jest od początku znane w całości, w związku z tym może się pojawić konieczność wprowadzenia zmian w już istniejących elementach.
Elementy i tryb oceny
- Zadania są oceniane w obecności studenta.
- Ocenie podlegają wyniki pracy nad projektem: kod źródłowy, historia zmian wraz z opisem oraz odpowiedzi na pytania zadane w trakcie oceny zadania.
- Warunkiem koniecznym jest znajomość i rozumienie własnej pracy. W tym umiejętność wprowadzenia drobnej zmiany w warunkach kontrolowanej samodzielności.
- Wykorzystanie w projekcie elementów nie wykonanych samodzielnie (takich jak fragmenty kodów źródłowych udostępnionych na wolnej licencji) jest dozwolone w zgodzie z prawem autorskim oraz pod warunkiem dokładnego ich oznaczenia w pracy.
- Korzystanie z pomocy prowadzącego lub innych studentów jest również dozwolone z zastrzeżeniem jak wyżej: elementy skopiowane za zgodą autora muszą być oznaczone i opisane. (Patrz Ustawa z dnia 4 lutego 1994 r. o prawie autorskim i prawach pokrewnych, Art 115, p. 1 "Kto przywłaszcza sobie autorstwo albo wprowadza w błąd co do autorstwa całości lub części cudzego utworu albo artystycznego wykonania, podlega grzywnie, karze ograniczenia wolności albo pozbawienia wolności do lat 3.").
- Każdy etap ma swój termin oddania. Przekroczenie terminu o każdy kolejny rozpoczęty tydzień kosztuje 20% punktów możliwych do uzyskania za dany etap.
PRZYGOTOWANIE WSTĘPNE
- Proszę utowrzyć nowe repozytorium o naziwe "projektWP25 w katalogu .../Repozytoria/ na serwerze Sigma
- Następnie utworzyć odpowiednie pliki i katalogi (patrz pdf - etap 1)
- Po utworzeniu jakiejś większej części projektu proszę odpowiednio zatwierdzIć zmiany z jasnymi komunikatami, aby były one przydatne przy ocenianiu projektu
- Projekt będzie się składał m.in. ze skryptów w Bashu, plików C i plików/katalgów CMake. Z tego powodU proszę odpowiednio zarządzać plikami i katalogami, przede wszystkim "build" dla CMake tworzyć w osobnym katalogu, który usuwamy
przed wysłaniem zaktualizowanej wersji projektu na GitLaba.
- Utworzyć za pomocą przeglądarki nowy prywatny projekt na swoim koncie na GitLabie o nazwie takiej jak wcześniej. Po zakończeniu pracy wysłać zaktualizowane repozytorium na GitLab
- Ponowna praca powinna się zacząć od ponownego zbudowania za pomocą CMake projektu, następnie powinno się aktualizować/dodawać pliki, usunąć niepotrzebne pliki (zostają tylko kody te potrzebne do zbudowania projektu) i wysłania zmian na GitLab.
PRZYKŁAD ZAPISU DANYCH TEKSTOWYCH DO PLIKU:
Aby wygenerować dany plik, np. pdf za pomocą kodu w latexu, musimy najpierw zapisać odpowiednie linie tekstu w pliku .tex. Możemy
to zrobić za pomocą skryptu w Bashu i komendy "echo" albo za pomocą języka C:
Plik w C