Articles of stile di codifica

Java: come verificare in modo efficiente i puntatori nulli

Esistono alcuni schemi per verificare se a un metodo è stato assegnato un valore null . Innanzitutto, quello classico. È comune nel codice auto-fatto e ovvio da capire. public void method1(String arg) { if (arg == null) { throw new NullPointerException(“arg”); } } In secondo luogo, è ansible utilizzare un framework esistente. Quel codice sembra […]

Esiste una convenzione di denominazione standard per gli elementi XML?

Esiste uno standard, di fatto o di altro tipo, per i documenti XML? Ad esempio qual è il modo “migliore” per scrivere un tag? Allo stesso modo se ho un valore enumerato per un attributo che è migliore

Perché i blocchi di prova sono costosi?

Ho sentito il consiglio che dovresti evitare di provare a catturare blocchi se ansible poiché sono costosi. La mia domanda riguarda specificamente la piattaforma .NET: perché i blocchi di prova sono costosi? Riepilogo delle risposte: Ci sono chiaramente due campi su questo tema: quelli che dicono che i blocchi di prova sono costosi e quelli […]

Usare vero e falso in C

Per quanto posso vedere ci sono 3 modi per usare i booleani in c con il tipo bool, da allora usando true e false definendo usando il preprocessore #define FALSE 0 … #define TRUE !(FALSE) Solo per usare le costanti direttamente, ie 1 e 0 ci sono altri metodi che ho perso? Quali sono i […]

#ifdef vs #if – che è migliore / più sicuro come metodo per abilitare / disabilitare la compilazione di particolari sezioni di codice?

Questa potrebbe essere una questione di stile, ma c‘è un po ‘di divisione nella nostra squadra di sviluppo e mi sono chiesto se qualcun altro avesse qualche idea in merito … Fondamentalmente, abbiamo alcune istruzioni di debug print che disattiviamo durante lo sviluppo normale. Personalmente preferisco fare quanto segue: //—- SomeSourceFile.cpp —- #define DEBUG_ENABLED (0) […]

Perché la maggior parte degli sviluppatori C usa define invece di const?

In molti programmi un #define lo stesso scopo di una costante. Per esempio. #define FIELD_WIDTH 10 const int fieldWidth = 10; Di solito vedo il primo modulo preferito rispetto all’altro, facendo affidamento sul pre-processore per gestire ciò che è fondamentalmente una decisione applicativa. C’è una ragione per questa tradizione?

Anelli infiniti – superiore o inferiore?

Nello spirito di domande come testare i tuoi anelli in alto o in basso? : Quale stile usi per un ciclo infinito e perché? while (true) {} do {} while (true); per (;;) {} etichetta: … etichetta goto;

Qual è l’uso corretto dell’operatore virgola?

Ho visto questo codice: if (cond) { perror(“an error occurred”), exit(1); } Perché dovresti farlo? Perché non solo: if (cond) { perror(“an error occurred”); exit(1); }

Dovrebbero essere usati qualificatori di tipo inutili sui tipi di ritorno, per chiarezza?

Il nostro strumento di analisi statica si lamenta di un “qualificatore di tipo inutile sul tipo restituito” quando abbiamo prototipi nei file di intestazione come: const int foo(); L’abbiamo definito in questo modo perché la funzione restituisce una costante che non cambierà mai, pensando che l’API fosse più chiara con const sul posto. Mi sembra […]

Che tipo di prefisso utilizzi per le variabili membro?

Senza dubbio, è essenziale per la comprensione del codice dare un prefisso alle variabili membro in modo che possano essere facilmente distinte dalle variabili “normali”. Ma che tipo di prefisso usi? Ho lavorato su progetti in cui abbiamo usato m_ come prefisso, su altri progetti abbiamo usato solo un trattino basso (che personalmente non mi […]