Pár otázek k tvorbě frameworku

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

Dobrý den,

vzhledem k prohlubování znalostí Nette jsem se rozhodl, že si napíši menší framework založený na Nette, neboli obdobu Flame nebo Nella.

Potřeboval bych ale odpovědět na pár otázek, které mi nejsou jasné –

  1. Jak je to se závislostmi? Například vadí něčemu, když je framework závislý na extensions třetí strany? Například kdybych chtěl použít Kdyby\Translation. Nebo už se to řeší v rámci nějakého CMS založeného na frameworku.
  2. Jak využít configurační soubory .neon, mohu si je libovolně předávat do frameworku a dle nastavení měnit jeho chování? Jak ho mohu případně vhodným způsobem dostat například do presenteru.

Určitě mě ještě něco napadne, zatím děkuji za odpovědi.

Filip Procházka
Moderator | 4668
+
0
-

Z hlavy si vzpomenu na tyhle (podle mě relevantní) zdroje:


Raději než framework piš rozšíření. Já taky dřív psal celé Kdyby do jednoho repozitáře a ze spousty důvodů se to ukázalo jako veliká chyba.

Vyber si problém který chceš vyřešit, napiš na to rozšíření do Nette a to publikuj (nebo si ho taky můžeš nechat jen pro sebe, záleží na tobě). Ale každé takové rozšíření by mělo řešit jeden úkol. Například integrace Doctrine, překlady, lepší konzole, lepší eventy, …

A na závislosti na rozšířeních třetích stran není vůbec nic špatného. Jen si musíš rozmyslet kterým budeš důvěřovat. Já se třeba Kdyby snažím držet maximálně kompatibilní a občas i opravuju BC Breaky co se objeví v Nette, bez toho aby to uživatele ovlivnilo. Takže za mně určitě na Kdyby klidně závislý buď :)

Ripper
Člen | 56
+
0
-

Skvělá odpověď, moc Ti děkuju. Nechám si to všechno projít hlavou, ale pravděpodobně jsi mě přesvědčil :)

Lopo
Člen | 277
+
0
-

ja osobne mam sice tiez Lohini FW … ale v tom sa uz snazim drzat len minimalisticke vylepsenia ktore by sa samostatne bud vobec nedali robit alebo len hodne tazko …
Lohini/CF (components&functions) mam sice v kope a teraz riesim automaticke splitovanie pomocou Lohini-bot, ale to je len docasne, nez dorobim refactor bota … potom to tiez porozdelujem a budem sa snazit drzat ako samostatne extensie
zistil som totiz ze v podstate v ziadnom projekte netreba cely komplet balik, ale staci len par veci … tak naco to tam mat zbytocne ? len by to zvacsovalo celkovu velkost a neprehladnost appky …