Paket Struktur Teamprojekt
Verfasst: Donnerstag 28. Oktober 2021, 19:12
Hallo zusammen,
ich denke gerade darüber nach was die beste Paketstruktur für ein kleines Projekt wäre.
Ich habe mich grob hieran orientiert:
https://docs.python-guide.org/writing/structure/
Es gibt aber ein paar Unterschiede.
1. Kein eigentliches packaging und hosting auf PyPi
2. Das Sample-Paket wird über die gesamte Lebensdauer in einem Git Repository leben
3. Das Sample-Paket muss nur selten, bei Bedarf angepasst werden. Es stellt eine Library zur Verfügung, welches von den User-Skripten genutzt wird.
4. Einige Nutzer arbeiten sowohl am Sample-Paket als auch an den User-Skripten und teilen die Arbeitsergebnisse über das Git Repository
5. Obwohl die User-Scripte nicht zum Sample-Paket gehören, sollen sie auch über das Git Repository mit anderen geteilt werden können.
6. Zur Verwaltung externer Pakete gibt es ein venv. Sowohl das Sample-Paket als auch die User-Scripte benötigen externe Pakete daraus.
7. User-Skripte werden öfter geändert, sollen aber hauptsächlich über die Config-Dateien manipuliert werden können.
8. Ich kann mir auch getrennte Repositories vorstellen, wenn es gute Gründe gibt.
Fallen euch dabei irgendwelche Nachteile auf? Kann man es unter den Voraussetzungen besser machen?
Edit: Der Linke war mir irgendwie missglückt, passt jetzt. Framework war falsch, Library trifft es besser.
ich denke gerade darüber nach was die beste Paketstruktur für ein kleines Projekt wäre.
Ich habe mich grob hieran orientiert:
https://docs.python-guide.org/writing/structure/
Es gibt aber ein paar Unterschiede.
1. Kein eigentliches packaging und hosting auf PyPi
2. Das Sample-Paket wird über die gesamte Lebensdauer in einem Git Repository leben
3. Das Sample-Paket muss nur selten, bei Bedarf angepasst werden. Es stellt eine Library zur Verfügung, welches von den User-Skripten genutzt wird.
4. Einige Nutzer arbeiten sowohl am Sample-Paket als auch an den User-Skripten und teilen die Arbeitsergebnisse über das Git Repository
5. Obwohl die User-Scripte nicht zum Sample-Paket gehören, sollen sie auch über das Git Repository mit anderen geteilt werden können.
6. Zur Verwaltung externer Pakete gibt es ein venv. Sowohl das Sample-Paket als auch die User-Scripte benötigen externe Pakete daraus.
7. User-Skripte werden öfter geändert, sollen aber hauptsächlich über die Config-Dateien manipuliert werden können.
8. Ich kann mir auch getrennte Repositories vorstellen, wenn es gute Gründe gibt.
Code: Alles auswählen
| requirements.txt
| .git/
| .gitignore
| sample/
| __init__.py
| core.py
| something.py
| something_else.py
| utilities/
| __init__.py
| some_utility_stuff.py
| some_other_utility_stuff.py
| docs/
| conf.py
| index.md
| tests/
| test_basic.py
| test_advanced.py
| venv/
| user-script1.py
| user-script2.py
| user-script3.py
| some_config1.json
| some_config2.json
| some_config3.json
Edit: Der Linke war mir irgendwie missglückt, passt jetzt. Framework war falsch, Library trifft es besser.