Taki zapis przykładu z MySQL-em zrozumiałbym, gdyby skrypt potrzebował coś zapisać na przyspieszenie odczytu i robił coś jeszcze z tym, choćby nawet:
Kod
$query = 'SELECT ...';
mysql_query($query) or die('Problem z zapytaniem: '.$query);
Mam po prostu sztywny podział: kod produkcyjny / kod roboczy. Kod produkcyjny ma trzymać wysoki poziom. Kod roboczy może zawierać rzeczy debugerskie w stylu:
Kod
echo jakasFunkcja($dane);
$this->pole = jakasFunkcja($dane);
Ale dodaję je tylko, gdy w danym miejscu faktycznie jest problem i po jego likwidacji usuwam. Gdybym dopuścił np. taki wygląd zapytań, to równie dobrze mógłbym zapytać, co w takim razie jest źle z drugim podanym kodem? Przecież tu też można by się tłumaczyć kwestiami debugowania, że będę chciał wyświetlić dane po przepuszczeniu przez którąś z kolei funkcję. I tak po kolei dojdziemy do kodu-potworka w stylu:
Kod
$wyrazenie = ($a == 5);
if($wyrazenie)
{
$arg1 = 1;
$arg2 = 5 + $a;
$wynik = funkcja($arg1, $arg2);
echo $wynik;
}
I też go względami debugowania będę mógł obronić dokładnie tak samo, jak zapis:
Kod
$query = 'SELECT ...';
mysql_query($query);
Przecież też formalnie mogę zechcieć sobie z różnych powodów wyświetlić np. wartość wyrażenia lub argumentu 1, by upewnić się, że na pewno są właściwe

. Prawda jest taka, że w dobrze przemyślanym problemie prawdopodobieństwo zajścia takiego zdarzenia jest BARDZO MAŁE, a jeśli już zajdzie, zawsze jest Ctrl+C/Ctrl+V. Od tej 0,5 sekundy więcej na wpisanie świat się nie zawali. Gdy zaś muszę sięgać zbyt często po ten środek, znaczy to, że rozwiązanie wymyślałem na kolanie, jest ono kiepskie i lepiej będzie, jak siądę nad kartką i wymyślę nowe.
Jeżeli coś potrzebuje stałego debugowania włączanego na rozkaz, piszę taki kod, by robił to za mnie.
Zauważcie ponadto, że początkujący rzadko mają wyrobiony własny styl kodowania. Jeśli zobaczą, że ktoś tak wpisuje non-stop zapytanie, to stwierdzą, że tak trzeba robić ZAWSZE. I później przekonaj takiego, że projekt posiada "trochę" lepszy sterownik bazy danych, który posiada zaawansowany tryb debugowowania/raportowania błędów i na życzenie udostępni dokładny wygląd każdego zapytania bez konieczności robienia zmiennych pomocniczych...
Nie wyklucza to oczywiście skracania przydługawych linijek, które zawsze można przełamać, bez względu na to, czy zapytanie wprowadzamy do zmiennej czy do funkcji.