Nel mio attuale progetto di codice, c'è un sacco di stringhe costanti che uso per stampare i messaggi di errore.
Hardcoding tali stringhe è generalmente considerato una cattiva pratica. Ora sto cercando un "modo pulito" per includere queste stringhe nel mio programma. Pertanto ho scritto un "constants.h" e "constants.cpp" che assomiglia a
#ifndef CONSTANTS_H_
#define CONSTANTS_H_
extern std::string error_message_1;
#endif
e constants.cpp:
#include "constants.h"
std::string error_message_1 = "this is just a sample, not my actual naming convention. move on the the question ;-)"
Quindi potresti vedere il problema che ho con questo: a causa di molti messaggi di errore, il nome della variabile stesso è abbastanza lungo. Il messaggio di errore è ancora più lungo, quindi blocca gli 80 caratteri standard in una riga di codice.
Ovviamente voglio che il mio codice sia bello e pulito. Non mi piace andare oltre gli 80 caratteri per riga di codice. Neanche a me piace qualcosa come:
std::string error_message_1 = "this is just a sample about how to"
" have one string across many lines"
" in the source code. this is not "
"very pretty too..";
std::string msg = "and suddenly there's one line which is good..";
std::string error_message_with_longer_name = "and it's even "
"uglier with not "
"equally long "
"variable names";
Memorizzare le stringhe in un file esterno che si dovrebbe leggere all'inizio del programma non sembra essere ottimale poiché il compilatore non può avvertire le stringhe mancanti. Fondamentalmente questo sarebbe un disastro da mantenere.
Quindi cosa fai a riguardo? C'è una cosa così carina come "Risorse", che io conosco di sviluppo di Android (o è Java in generale?)?
Nota: per favore NON dirmi che la mia convenzione di denominazione è cattiva. Quanto sopra è solo un esempio. Non è quello che sembra; -)