Rozpoczynam pracę z Pythonem (najwyższy czas, aby spróbować) i szukam dobrych praktyk.
Mój pierwszy projekt to kolejka, która uruchamia eksperymenty wiersza poleceń w wielu wątkach. Zaczynam otrzymywać bardzo długi main.py
plik i chciałbym go przerwać. Ogólnie szukam: Jak programiści Pythona organizują wiele plików źródłowych?Czy jest jakaś konkretna struktura, która Ci odpowiada?
Moje szczegółowe pytania obejmują:
- Czy każda klasa powinna znajdować się w osobnym pliku?
- Jak należy zorganizować testy jednostkowe względem kodu źródłowego?
- Gdzie powinienem umieścić komentarze do dokumentów, szczególnie te dotyczące operacji z wiersza poleceń?
- Jeśli używam wielu katalogów, jak zaimportować między nimi klasy?
Prawdopodobnie mogę tutaj wyciągnąć własne wnioski metodą prób i błędów, ale wolałbym zacząć od czegoś dobrego .
python
unit-testing
code-organization
Andres Jaan Tack
źródło
źródło
Odpowiedzi:
Artykuł Eric wskazał na to niesamowite, ponieważ obejmuje dane organizowania dużych baz kodu Pythona.
Jeśli wylądowałeś tutaj z Google i próbujesz dowiedzieć się, jak podzielić jeden duży plik źródłowy na wiele plików, które są łatwiejsze w zarządzaniu, krótko podsumuję ten proces.
Załóżmy, że obecnie masz wszystko w pliku o nazwie
main.py
:utils.py
w tym przykładzie)main.py
doutils.py
main.py
dodać pojedynczą linię u góry:import utils
Koncepcyjnie to, co robi, to utworzenie nowego modułu o nazwie
utils
w innym pliku źródłowym. Następnie możesz go zaimportować w dowolnym miejscu.źródło
Sposób organizacji kodu i testów jest dokładnie taki sam, jak w przypadku dowolnego języka obiektowego.
Odpowiedzi ze sposobu, w jaki to robię. Może to nie jest w porządku, ale dla mnie działa
__init__.py
pliki znajdują się w folderach. to tylko prosty przypadekfrom module import class
źródło