È una cattiva pratica dare una directory e un file con lo stesso nome?

-4

Ho un programma che produce uno strumento da riga di comando chiamato GetFood. Il codice sorgente vive in una directory chiamata GetFood /, e ho un file principale che interagisce con una classe che riceve il cibo. Sembra essere più sensato nominare la classe "GetFood" poiché fornisce tutte le funzionalità per ottenere effettivamente il cibo, ma ciò impone anche che il nome del file sia "GetFood.x".

È una cattiva pratica considerando che la directory è anche GetFood, o dovrei rinominare la directory?

    
posta dant 06.10.2017 - 19:34
fonte

1 risposta

0

In generale è piuttosto usuale chiamare la directory di primo livello con lo stesso nome del programma e usare lo stesso nome, (con un'estensione appropriata), per la parte "principale" in alto file di livello. Alcune catene di strumenti avevano anche la tendenza a mettere il main in un file con estensione e quindi tutti i file di livello inferiore in una directory con lo stesso nome.

Trovo che la maggior parte degli strumenti e sicuramente l'OS non si preoccupino molto di ciò che i file e gli ampli; le directory sono chiamate, all'interno di alcuni vincoli, ma per evitare problemi a tutte le directory & i nomi dei file devono essere lettere ASCII e numeri più eventualmente i caratteri + -_ evitare tutti gli spazi in modo da non doverli citare o sfuggire e altri caratteri come & < > | / come hanno significati speciali su alcune piattaforme. Inoltre, non fare affidamento sulla piattaforma che fa distinzione tra maiuscole e minuscole o insensibile, i.e. Va bene usare case per distinguere parti di nomi come MyFileName ma non avere un altro file chiamato myFileName e usare le maiuscole corrispondenti ovunque .

Personalmente mi piace la pratica e l'ampli del pitone; la magia di avere una directory che incapsula un modulo e ha il nome del modulo che contiene un file "principale" chiamato __main__.py che definisce il comportamento quando viene invocato il modulo, (usando python -m modulename ), e un altro chiamato __init__.py che, hai indovinato , esegue tutte le operazioni di inizializzazione su import in quanto è immediatamente chiaro cosa fanno questi file e appaiono per primi nell'elenco delle directory sulla maggior parte dei sistemi.

Le cose principali sono chiarezza e coerenza organizzativa. Queste sono le cose che permettono alle persone di fare il loro lavoro facilmente - un odio verso gli animali domestici è quando guardo il codice di qualcuno, (anche il mio) e devo grep main per trovare i punti di ingresso.

    
risposta data 07.10.2017 - 07:28
fonte

Leggi altre domande sui tag