Dobrý den,
Plugin přidává funkčnost existujícímu programu. Cibulová architektura může být použita i bez persistence, ovšem tomu musí odpovídat i zadání aplikace. Pokud je nelogické, aby program fungoval bez persistence, tak je očekáváno, že vrstva persistence bude existovat.
Vyobrazení pomocí pluginu mělo podpořit představu čtenáře o tom, že je možné tuto vrstvu vyměnit. V jádře aplikace budeme držet předpis, jakým chceme s daty pracovat a v jakém tvaru ukládat, aktualizovat, mazat či číst. To, jaká databáze či technologie je použita na uložení stavu dat, by nás v jádře aplikace nemělo zajímat.
Pokud chcete aby plugin s vaší aplikací fungoval, potřebujete naimplementovat nějaký komunikační kanál. V našem případě by to byly například rozhraní návrhového vzoru repository.