Už před 15ti lety jsem používal třetí přístup a jelikož to pořád funguje i pod PHP 7.2 tak to asi nebyl blbý nápad.
Prostě loader a přes něj natáhnout další moduly. V loaderu překontrolovat co se vlastně děje. Je to minimalistické odporně přehledné a stále funkční, i když prehistorické.
Metodu 1 a 2 bych vůbec nezvažoval maximálně na nějakou minimalistiku co udělá dvě věci.
Už jen proto, že ten loader může v klidu všechno připravit inicializovat a pak už jen hurá na konkrétní úkol.
Já bych to bral jako základ a nesouvisí to ani s použitým jazykem, ale filosofií.
Vytvářet aplikaci nikoliv webovou stránku.
Neřešme prosím konkrétní framework, šlo jen o úvahu jakým stylem to dnes správně řešit. Jestli si budu psát všechno sám, nebo sáhnu po fw už neřešeme.
Hodně lidí jede v prvním systému a nevidí v tom problém. Spíš by mě zajímaly klady/zápory kterého přístupu. Nejlépe z praxe.
U druhé metody všechno stojí a padá na rewrite, jinak IMHO nevidím problém.