https://github.com/coders-school/coursedashboard
https://github.com/coders-school/coursedashboard
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/coders-school/coursedashboard
- Owner: coders-school
- Created: 2019-07-28T22:14:50.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2022-06-21T11:33:04.000Z (about 4 years ago)
- Last Synced: 2025-04-04T03:04:06.486Z (over 1 year ago)
- Language: C++
- Size: 288 KB
- Stars: 2
- Watchers: 5
- Forks: 13
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Course Dashboard (Kokpit kursu? :D)
Celem projektu będzie utworzenie aplikacji, która będzie przechowywać i wyświetlać dane związane z naszym kursem C++.
## Kompilacja i uruchomienie
[](https://travis-ci.com/coders-school/CourseDashboard)
### Kompilacja
```bash
mkdir build
cd build
cmake ..
make -j
```
### Uruchomienie testów
```bash
build/CourseDashboard-ut
```
### Uruchomienie programu
```bash
build/CourseDashboard
```
## Słownik
- User Story - wymaganie użytkownika.
- Użytkownik - osoba korzystająca z aplikacji (trener lub kursant).
- Dane kursanów - imię, nick na Discordzie, link do GitHuba, link do Firecode, grupa.
## User Stories
1. Jako trener chciałbym móc przeglądać, dodawać, usuwać i edytować dane kursantów
1. Jako trener chcę, aby wszelkie informacje były zapisywane w pliku tekstowym i odczytywane z niego
1. Jako użytkownik chcę móc zalogować się do aplikacji z użyciem adresu e-mail i hasła
1. Jako użytkownik aplikacji nie chcę, aby moje hasło było gdziekolwiek dostępne i możliwe do odszyfrowania
1. Jako użytkownik chciałbym, aby plik z danymi do programu był dostępny online i aby aplikacja pobierała z niego dane.
1. Jako kursant chciałbym móc zaznaczać swoje przyszłe nieobecności lub odróbki w innej grupie
1. Jako trener chciałbym móc przeglądać tabelę obecności kursantów
1. Jako trener chciałbym, aby nazwy i daty lekcji były odczytywane z pliku konfiguracyjnego json
1. Jako trener chciałbym móc wpisywać punkty każdemu kursantowi za poszczególne lekcje i inne aktywności
1. Jako kursant chciałbym móc przeglądać swoją punktację za poszczególne lekcje i inne aktywności
1. Jako użytkownik, chciałbym domyślnie widzieć tabelę rankingową wszystkich kursantów.
1. Jako kursant chciałbym, aby moje dane były chronione, więc nikt oprócz trenera i mnie nie może edytować moich danych.
1. Jako trener chciałbym, aby punkty za lekcje można było odczytać z pliku Markdown
1. Jako użytkownik chciałbym, aby aplikacja była dostępna przez przeglądarkę internetową
## Zasady formatowania kodu
1. Nazwy klas i typów UpperCamelCase (PascalCase). Nazwy zmiennych i funkcji lowerCamelCase.
1. Nazwy klas i zmiennych muszą zawierać rzeczownik. Nazwy funkcji muszą zawierać czasownik.
1. Głębokość wcięć to 4 spacje.
1. Spacje przed i po operatorach arytmetycznych, spacje po przecinku.
1. Dopuszczamy jednolinijkowe funkcje, jeśli składają się tylko z jednej instrukcji.
```cpp
int doSth(int value) { return doSthElse(value); }
```
1. Nie dopuszczamy jednolinijkowych instrukcji warunkowych lub pętli:
```cpp
if (condition) return 42; // bad
```
Akcja zawsze musi być w kolejnej linijce, aby jej nie przeoczyć:
```cpp
if (condition) // good
return 42;
```
1. Reszta do ustalenia przez was wspólnie.
1. Braces
```cpp
void f()
{
dosth();
}
// or
void f() {
dosth();
}
```
1. Left, right or center references and pointers
```cpp
int b = 42;
int& i = b; // left
int &i = b; // right
int & i = b; // center
```