Il team di R & D in cui mi trovo ha deciso di adottare uno standard di codifica. Ci siamo formati solo di recente, e abbiamo troppo poco codice e tempi di codifica comuni per basare il nostro documento sugli standard / convenzioni su ciò che si è sviluppato organicamente nel nostro team e su buoni esempi dal nostro codice ecc.
Ora, ognuno di noi ha una certa esperienza dai luoghi di lavoro del passato - anche se nessuno di noi è in grado di dire "adottiamo questo documento completo che ho trovato adatto al tipo di lavoro che facciamo qui" (* ). Inoltre, alcuni di noi (incluso me stesso) hanno esperienza solo in posti senza standard di programmazione ufficiali, o in lingue diverse in un contesto diverso (ambiente di produzione con rilascio settimanale ad alta pressione rispetto a lavori di sviluppo più orientati alla ricerca)
Quindi, una delle opzioni a cui stavo pensando è quella di prendere un documento relativamente ben noto e ben considerato, tagliando fuori ciò di cui non ci preoccupiamo / cura e apportando alcune modifiche in base alle nostre preferenze.
Questa è una pratica comune? Credi che questa sia una buona idea? In tal caso, quale sarebbe uno standard di codifica "di base" ragionevole (non dirmi quale sia il migliore, non voglio iniziare qui un conflitto religioso, basta indicare cosa sarebbe completo o "neutrale" abbastanza da basarsi su .)
Note:
- Ci aspettiamo di lavorare con C, C ++, OpenCL, CUDA, Python.
- Siamo un team di 4 persone + manager, che dovrebbe crescere fino a circa 5-6 entro un anno circa.
- Nella nostra azienda, i team sono quasi completamente autonomi e di solito non interagiscono affatto (nemmeno usando il codice dell'altro - il lavoro è su progetti completamente diversi); quindi - nessuna considerazione da fare a livello aziendale.
- Per quanto riguarda gli strumenti, al momento quello che sappiamo è che useremo Eclipse , quindi il suo formattatore di codice sta andando per essere uno strumento almeno. Ctrl + Shift + F è stato a lungo il mio amico
- Quando scrivo Java, ho adottato la pratica di aderire il più rigorosamente possibile a efficace Java di Bloch . Ora, questo non è uno standard di programmazione, ma potresti chiamare mattoni, cemento e malta per uno standard di codifica. Stavo pensando di includere qualcosa del genere come parte del "mix" (badando a non fare Java).
- Intendo gli standard di codifica nel senso più ampio del termine, ad es. adottando i suggerimenti contenuti nelle risposte a questa domanda P.SE .
- Ho trovato un grande elenco di documenti sugli standard di codifica C ++ ; forse dovrei il mio che la nostra linea di base.
- (*) Non è proprio vero, ma non voglio complicare questa domanda con troppe specifiche.