ads2_2022/code/rust/README.md

51 lines
1.6 KiB
Markdown
Raw Normal View History

2022-03-30 18:00:21 +02:00
# ADS2 - Implementierung in Rust #
2022-04-10 15:59:37 +02:00
Im Ordner [./src/*](src/) findet Module mit Datenstrukturen und Algorithmen.
2022-04-19 09:02:10 +02:00
Im Ordner [./tests/*](tests/) findet man _unit tests_,
2022-04-10 15:59:37 +02:00
die die verschiedenen Datenstrukturen und Algorithmen mit Testfälle belasten.
Man kann auch direkt im Code von [./src/main.rs](src/main.rs) aus
die Methoden mit Daten ausprobieren.
## Voraussetzungen ##
2022-04-19 09:05:31 +02:00
1. Der Rust-Compiler **`^1.60.*`** wird benötigt und
hierfür ist der **`cargo`** Package-Manager zu empfehlen.
2022-04-10 15:59:37 +02:00
Siehe <https://www.rust-lang.org/tools/install> für die offizielle Anleitung.
2022-04-19 09:05:31 +02:00
2. Es ist auch empfehlenswert, **`make`** zu installieren.
2022-04-10 15:59:37 +02:00
- Linux/OSX: siehe <https://formulae.brew.sh/formula/make>.
- Windows: siehe <https://community.chocolatey.org/packages/make>.
## Build -> Test -> Run ##
2022-04-13 23:12:37 +02:00
In einem IDE in dem Repo zu diesem Ordner navigieren.
</br>
Eine bash-Konsole aufmachen und folgende Befehle ausführen:
2022-04-10 15:59:37 +02:00
2022-04-13 23:12:37 +02:00
Wer **make** installiert hat:
2022-04-10 15:59:37 +02:00
```bash
2022-04-13 23:12:37 +02:00
# Zum Kompilieren (nur nach Änderungen nötig):
2022-04-10 15:59:37 +02:00
make build;
2022-04-13 23:12:37 +02:00
# Zur Ausführung der unit tests:
2022-04-10 15:59:37 +02:00
make tests;
2022-04-13 23:12:37 +02:00
# Zur Ausführung des Programms
2022-04-10 15:59:37 +02:00
make run;
2022-04-13 23:12:37 +02:00
# Zur Bereinigung aller Artefakte
2022-04-10 15:59:37 +02:00
make clean;
```
Wer _kein_ make hat:
```bash
2022-04-13 23:12:37 +02:00
# Zum Kompilieren (nur nach Änderungen nötig):
2022-04-10 15:59:37 +02:00
cargo build --release;
2022-04-13 23:12:37 +02:00
# Zur Ausführung der unit tests:
2022-04-10 15:59:37 +02:00
cargo test;
2022-04-13 23:12:37 +02:00
# Zur Ausführung des Programms:
./dist/ads2
# bzw. ads2.exe für Windows.
# Alternativ kann man den gebauten Artefakt per doppelklicken ausführen.
2022-04-10 15:59:37 +02:00
```
2022-04-13 23:12:37 +02:00
Der `build` Schritt baut einen binären Artefakt
2022-04-10 15:59:37 +02:00
und kopiert dies nach dem [./dist/*](dist/) Ordner.
2022-04-13 23:12:37 +02:00
Man kann auch mit einem guten Editor/IDE die Tests einzeln ausführen.