In definitiva non è una buona pratica in circostanze "normali", in quanto tutto ciò che realmente fa è aggiungere confusione, e quindi ha un impatto negativo sulla leggibilità (in generale).
Tuttavia, potrebbero esserci altre considerazioni, altre forze trainanti che potrebbero portare al codice con questo tipo di denominazione. Ad esempio, alcuni strumenti si basano su convenzioni di denominazione (e su una sorta di capacità di riflessione / introspezione) per generare codice di tipo standard tra due sistemi collaborativi. È nello spirito dell'approccio della "convenzione sulla configurazione". La cosa più semplice da fare è fare in modo che i corrispondenti campi / proprietà abbiano lo stesso nome, ed è spesso utile averli in modo univoco per identificare il loro tipo genitore (o tabella, o qualsiasi altra struttura di livello superiore che ci sia), così da non Devo controllare tutto il tempo. Inoltre, mentre le convenzioni di denominazione variano tra sistemi, lingue e tecnologie, è necessario elaborare un approccio unificato qui, in modo che il risultato finale non segua le migliori pratiche OOP.
Questo era solo un esempio, ma come puoi immaginare, mentre le persone escogitano nuovi strumenti e tecnologie, sorgono tutti i tipi di fattori di parole reali che possono portare a queste partenze dalla "norma".
Ovviamente, c'è sempre l'altro lato della medaglia, ea volte le persone scrivono un codice simile a questo senza averne davvero una buona giustificazione.