Trovo che a volte utilizzi segnaposti nelle stringhe, come questo:
$ cat example-apache
<VirtualHost *:80>
ServerName ##DOMAIN_NAME##
ServerAlias www.##DOMAIN_NAME##
DocumentRoot /var/www/##DOMAIN_NAME##/public_html
</VirtualHost>
Ora sono sicuro che si tratti di un problema minore se il segnaposto è ##DOMAIN_NAME##
, !!DOMAIN_NAME!!
, {{DOMAIN_NAME}}
o qualche altra variante. Tuttavia, ora ho bisogno di standardizzarmi con altri sviluppatori su un progetto, e tutti abbiamo interesse a far sì che il nostro formato di segnaposto sia reso standard nell'organizzazione. Ci sono dei buoni motivi per scegliere uno di questi o altri? Sto cercando di quantificare queste considerazioni:
-
Estetica e usabilità . Ad esempio,
__dict__
può essere difficile da leggere in quanto non sappiamo quanti caratteri di sottolineatura ci sono. -
Compatibilità . Qualche lingua cercherà di fare qualcosa di divertente con la sintassi
{}
in una stringa (come PHP fa con"Welcome to {$siteName} today!"
)? In realtà, so che PHP e Python non lo faranno, ma altri? Un preprocessore C ++ subirà un choke sul formato##
? Se ho bisogno di memorizzare il valore in qualche motore SQL, non considererà qualcosa un commento? Qualche altra insidie di cui diffidare? -
Maintainability . Il nuovo tipo scambierà
##SOME_PLACEHOLDER##
come costrutto linguistico? - Lo sconosciuto . Sicuramente il saggio qui penserà ad altri aspetti di questa decisione a cui non ho pensato.
Potrei essere bikehedding questo, ma se ci sono problemi reali che potrebbero essere in agguato, mi piacerebbe sicuramente per conoscerli prima di imporre che i nostri sviluppatori aderiscano a una convenzione potenzialmente problematica.