master > master: README
This commit is contained in:
parent
e6be5a467c
commit
189755e69a
73
README.md
73
README.md
@ -25,16 +25,49 @@ In diesem Repository findet man:
|
||||
|
||||
## Code ##
|
||||
|
||||
Im Unterordner [`code`](./code) kann man ein Python-Projekt finden,
|
||||
in dem verschiedene Algorithmen implementiert werden
|
||||
(siehe insbes. [`code/algorithms`](./code/algorithms)).
|
||||
Im Unterordner [`code`](./code) kann man Codeprojekte in Python und Golang finden, in denen verschiedene Algorithmen implementiert werden
|
||||
(siehe insbes. [`code/python/src/algorithms`](./code/python//src/algorithms)
|
||||
und [`code/golang/pkg/algorithms`](./code/golang/pkg/algorithms)).
|
||||
Man kann gerne den Code benutzen, in einer eigenen Repository verändern,
|
||||
und mit den in dem Kurs präsentierten Algorithmen herumexperimentieren.
|
||||
|
||||
### Systemvoraussetzungen ###
|
||||
|
||||
#### Bashscripts ####
|
||||
|
||||
Im Ordner [`scripts`](./scripts) sind mehrere Workflows als Bashscripts kodiert. (Man kann natürlich ohne sie arbeiten, insbesondere dann, wenn man einen guten IDE hat.)
|
||||
|
||||
Zunächst braucht man einen Bashterminal. Das kommt mit OSX (Terminal) und Linux. Für Windows-User braucht man [git-for-windows](https://gitforwindows.org) zu installieren, was auch bash mit installiert. (Und für diejenigen, die VSCode oder andere IDEs benutzen, lässt sich bash als integrierten Terminal im IDE selbst verwenden.)
|
||||
|
||||
Den Bashscripts benötigen Ausfuhrrechte. Hierfür führe man
|
||||
```bash
|
||||
chmod +x scripts/*.sh;
|
||||
```
|
||||
aus. Das muss danach nie wiederholt werden.
|
||||
|
||||
Jetzt können wir von dem Hauptordner des Repositorys Befehle wie
|
||||
```bash
|
||||
./scripts/build.sh
|
||||
./scripts/build.sh ---mode setup
|
||||
```
|
||||
usw. in der Bash-Console ausführen.
|
||||
|
||||
#### Für das Golang-Projekt ####
|
||||
|
||||
Man braucht [go](https://golang.org/dl/) Version **1.17.x**. (Man kann bestimmt bei späteren Releases höhere Versionen benutzen. Man muss lediglich dann in [`./code/golang/go.mod`](./code/golang/go.mod) die Version hochstellen und die Requirements nochmals installieren lassen.) Und einige Packages werden benötigen. Letztere lassen sich mittels
|
||||
```bash
|
||||
./scripts/build.sh --lang go --mode setup
|
||||
```
|
||||
installieren.
|
||||
|
||||
#### Für das Python-Projekt ####
|
||||
|
||||
Python version 3.x.x (idealerweise zumindest 3.9.5) plus einige Module (siehe [code/requirements](./code/requirements)). Letztere lassen sich mittels
|
||||
```bash
|
||||
./scripts/build.sh --lang python --mode setup
|
||||
## mit virtuellem Env:
|
||||
./scripts/build.sh --lang python --venv true --mode setup
|
||||
## alternative:
|
||||
python3 -m pip install -r code/requirements; # linux, osx
|
||||
py -3 -m pip install -r code/requirements; # Windows
|
||||
```
|
||||
@ -42,17 +75,35 @@ installieren.
|
||||
|
||||
### Ausführung ###
|
||||
|
||||
Um den Python Code auszuführen, bspw. im Bash:
|
||||
#### Für das Golang-Projekt ####
|
||||
|
||||
Zuerst den Artefakt kompilieren:
|
||||
```bash
|
||||
./scripts/build.sh --lang go --mode dist;
|
||||
## oder:
|
||||
go build -o "dist/ads" "code/golang/main.go";
|
||||
```
|
||||
und dann mit dem gebauten Artefakt arbeiten:
|
||||
```bash
|
||||
./dist/ads1 help; # zeigt Hilfsanleitung
|
||||
./dist/ads1 version; # zeigt Version
|
||||
./dist/ads1 run [--debug]; # führt code aus
|
||||
```
|
||||
|
||||
#### Für das Python-Projekt ####
|
||||
|
||||
```bash
|
||||
pushd code/python/src; ## <- auf Pfad mit main.py wechseln
|
||||
|
||||
## Anzeigen der Hilfsanleitung:
|
||||
python3 code/main.py -h; # linux, OSX
|
||||
py -3 code/main.py -h; # Windows
|
||||
python3 main.py -h; # linux, OSX
|
||||
py -3 main.py -h; # Windows
|
||||
## Ausführung der Testfälle in code/config.yml:
|
||||
python3 code/main.py all; # linux, OSX
|
||||
py -3 code/main.py all; # Windows
|
||||
## Mit Infos über Schritte:
|
||||
python3 code/main.py --debug all; # linux, OSX
|
||||
py -3 code/main.py --debug all; # Windows
|
||||
python3 main.py run [--debug]; # linux, OSX
|
||||
py -3 main.py run [--debug]; # Windows
|
||||
## --debug Option benutzen, um Infos über Schritte zu zeigen.
|
||||
|
||||
popd; ## <- zum vorherigen Pfad zurückwechseln
|
||||
```
|
||||
Oder man erstelle einen bash Skript wie `run.sh`, trage die Befehle da ein und führe
|
||||
```bash
|
||||
|
Loading…
x
Reference in New Issue
Block a user