A ja nevidim zadnou vyhodu v tom, aby se mi do ServletDispatcheru sypal neidentifikovatelny bordel a dej se vule bozi.
Já taky ne. A proč to říkáš?
Já jsem jenom popisoval, jaký je rozdíl mezi voláním metody a předáním zprávy - že jsou to dvě zásadně odlišné věci.
Smysl one otazky spociva v tom, jaky ze je rozdil mezi synchronni zpravou a zavolanim metody.
No já myslím, že jsem to už řekl dostatečně jasně:
pokud volám metodu, tak tím bezprostředně spouštím nějaký (víc nebo míň) statický, předem daný kód. Pokud posílám zprávu, tak jenom sděluju nějakou informaci. Jak s tím příjemce informace naloží, jestli v návaznosti na to vyvine nějakou činnost nebo ne, je už na něm.
Vzhledem k tomu, jaké tohle jednoduché tvrzení pořád způsobuje vlny, by se asi slušelo dodat ještě tohle:
1. Je to rozdíl především koncepční, až podružně technický. Klíčové je, jestli je adresát "dostatečně autonomní" (ano, jsem si vědom toho, jak je to vágní), aby se "sám rozhodnul", a to "na základě informací, které jsou mu dostupné".
2. Implementované to může být technicky různě. Že je předání zprávy implementované voláním funkce/metody je irelevantní, jedná se o odlišné roviny abstrakce a buď se bavíme o jedné, nebo o druhé.[1]
[1] Je to stejné jako že si můžu v céčku implementovat Lisp, ale z toho neplyne, že C a Lisp je totéž nebo že C má všechny vlastnosti Lispu