Těch několik require_once na začátku každého souboru jasně popisuje závislosti – hned vidím co se používá a odkud se to bere.
To je dobrý postřeh. Ale má smysl přehlednost vykoupit značným dopadem
na výkon aplikace? Osvědčil se mi jiný postup. Nette je plně připravené
na PHP 5.3 a jmenné prostory. S jejich použitím dojde k tomu, že se na
začátku skriptů budou objevovat řady příkazů use (méně
elegantní ASCII art deco ;-) ). Něco jako když se dnes člověk podívá na
zdroják v C#. Na výkon to dopad nemá, ale jako dokumentační popis
závislostí to funguje stejně dobře, ne-li lépe. No a já jsem si zvykl tyto
příkazy, byť zakomentované, používat už v PHP 5.2.
Snad každý jazyk používý nějaký konstrukt pro import.
Ano, use je velmi podobné jako import.
Mimochodem, proč všichni pro include používají nejrůznější konstrukce jako dirname(__FILE__) nebo NEJAKA_KONSTANTA_BASE_PATH, když tu máme include_path?
Na include_path teoreticky není 100% spoleh, je to pomalé a vyžaduje to od vývojáře, který chce použít knihovnu, aby správně include_path nastavil. Dovedu si představit, že třeba u takového Texy by půlka vláken na fóru byla: „nejede mi to“ s odpovědí „nastavil jsi správně include_path“?