Sono sicuro che otterrò punti negativi qui.
Metto il mio nome nei file che ho creato. Includo anche il nome e l'indirizzo della società, una dichiarazione sul copyright, una descrizione dello scopo del file, il NOME originale del file (nel file) e una breve cronologia delle principali revisioni.
Perché faccio questo:
-
Il nome dell'azienda, l'indirizzo e la dichiarazione sul copyright rendono molto facile la produzione in tribunale, qualora ciò fosse necessario, e mostra data / ora di creazione, proprietà, ecc. ai fini del copyright. Senza questa informazione NEL FILE, ti affidi a fumo e specchi per convincere un giudice che non sa nulla di software o VCS.
-
Mettere il nome dell'autore originale al momento della creazione riguarda la responsabilità. Se il tuo VCS fornisce le stesse informazioni, è bello ma non è nella tua faccia. Se la cosa viene modificata in seguito e qualcuno aggiunge bug, il VCS racconta la storia. Se sei orgoglioso del tuo lavoro, non nasconderlo. [Un certo numero di società commerciali richiedono questo tipo di cose per semplici motivi di responsabilità.]
-
Inserisco il nome del file nel file perché queste cose cambiano. È un dolore per aggiornare questo quando il nome cambia, e non sono più sicuro del valore. Tuttavia, aiuta a mettere insieme l'intera immagine quando guarda all'origine.
-
Ogni file ha un sommario in un para o in 2 del suo scopo. Se un file di origine non ha scopo, non crearlo. Se ha uno scopo, dimmi cos'è - NON FARE ME GUESS . Circa il 95% di tutto il codice open source che ho incontrato non ha uno scopo dichiarato nei file sorgente e questo mi fa impazzire. Non voglio indovinare lo scopo del nome o del contenuto del file, per gridare ad alta voce - dimmi. Non mettere in uno scopo è semplicemente PENISCENZA. (E non aggiornare lo scopo è anche la pigrizia.)
-
Pre VCS Ho usato per mettere una storia completa nei commenti all'inizio. Post VCS L'ho fatto anche per un po '. Mostra la cronologia nel file senza dover andare a scavare da nessun'altra parte. È tuttavia un dolore così fa questo e un valore basso. Usa la tua cronologia VCS per questo. Ma nelle intestazioni se fai un grande cambiamento (enorme refactoring, re-proposizione, ecc.) - quindi fai un appunto a beneficio degli altri. (E come l'autore originale, inserisci il tuo nome.) Ovviamente è un giudizio su cosa è maggiore e cosa no. Ma questa è una cortesia per quelli che vengono dopo di te.
Ho anche ampi commenti nel file che spiegano cosa fanno le cose - i commenti per esempio su interfacce, API, intestazioni, sono essenziali per un utente della tua API o funzione o metodo per sapere cosa sta succedendo, e in particolare qualsiasi note speciali o effetti collaterali.
All'interno del codice, i blocchi principali ottengono un commento che descrive cosa fa quel blocco. Ciò consente una lettura del codice per l'intento, rapidamente, senza dover scavare nei dettagli sanguinosi di alcune variabili dichiarate 15 pagine prima. (Dimmi cosa fa, e perché . Non dirmi come . Posso capire come dal codice.)
Sulla base di ciò che vedo da altri che lasciano commenti qui, sembrerebbe che molti di quelli eliminerebbero circa il 90% dei commenti che scrivo. Vergogna ... aggiunge l'entropia dell'universo.