Rozdělení fasad na lokalní a externí API

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
jasin755
Člen | 116
+
-1
-

Zdravím,
snažím se trošku zpřehlednit fasady použivané v aplikaci. Chtěl bych je rozdělit na lokalní a externí API myšleno tak, že lokální API komunikuje s dalšími lokálními metodami ve stejné/ v jiné fasádě. Chtěl jsem se vyhnout tvorbě nových souborů něco jako NameLocalFacade a NameRemoteFasade, ale pouze jednoznačně říct, jaká metoda je pro remote a jaká je pro local.

Napadlo mě využití nějaké anotace. Např. @internal a pomocí reflexe testovat zda tato metoda tu anotaci ma či nemá. Z toho plyne, že by to muselo jít přes nějaký call a z toho plyne, že by měli být metody vždy private a tady jsem narazil na problém, že nevím jak mám dotudit aby všechny metody byli private a pokud ne tak by následovala exception, aniž bych využil constructor pro volání nějaké metody, který jinak používám na DI.

Moc rád bych slyšel nějaký váš názor na tento způsob přístupu jak ho vyřešit, popř. jak to řešit jinak :)

Díky moc !

Jan Endel
Člen | 1016
+
+4
-

Je to strašně obskurní, proč nemít externí api stejné jako interní api a vymýšlet obezličky jak jim házet klacky pod nohy?

jasin755
Člen | 116
+
0
-

Byla to jen úvaha. Není to úplně z mé hlavy. @VasekPurchart podobné rozdělení fasád prezentoval.