Společná namespace pro extensions?

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

Při procházení extensions pro Nette jsem narazil na to, že ne každá extension vůbec využívá namespaces + pokud je využívá, tak si volí každá nějaké svoje.

Nevadilo by mi to, pokud by autor měl svůj unikátní namespace (např. RadekSimko/Extensions), ale když mám v aplikaci látat dohromady několik variací „nette“ a „extras“, rvu si u toho vlasy… nemluvě o tom, že i typově podobné extensions mají trochu jiný způsob registrování (ale to je teď OT).

Rád bych poslal do několika repositářů pull request s nějakým sjednocujícím namespace, ale nerad bych to dělal bez konzultace zde na fóru.

Co říkáte na Nette\Extras?

Editoval maarlin (23. 9. 2012 15:12)

mkoubik
Člen | 728
+
0
-

https://github.com/nextras je možná to co hledáš.

Honza Marek
Člen | 1664
+
0
-

Já s jednotnym namespacem nesouhlasim. Každý doplněk nebo autor má mít svůj. Jak by se pak rozeznaly třídy JedenFrajer\Datepicker od DruhejFrajer\Datepicker?

Jan Jakeš
Člen | 177
+
0
-

Jak říká Honza, jednotný namespace je nesmysl. Nějaká doporučená naming convention by se ale hodila.

maarlin
Člen | 207
+
0
-

Juan napsal(a):

Jak říká Honza, jednotný namespace je nesmysl. Nějaká doporučená naming convention by se ale hodila.

Jak jsem psal v prvním příspěvku:

Nevadilo by mi to, pokud by autor měl svůj unikátní namespace (např. RadekSimko/Extensions), ale když mám v aplikaci látat dohromady několik variací „nette“ a „extras“, rvu si u toho vlasy… nemluvě o tom, že i typově podobné extensions mají trochu jiný způsob registrování (ale to je teď OT).

maarlin
Člen | 207
+
0
-

mkoubik napsal(a):

https://github.com/nextras je možná to co hledáš.

Nextras je zajímavý nápad, ovšem obávám se že nic moc neříkající. Trochu mi připomíná doby, kdy PHP5.3 ještě nebylo a musely se namespace obcházet prefixy (NObject apod.).

LeonardoCA
Člen | 296
+
0
-

Myslím, že tady není co vymýšlet a stačí PSR-0

cituji a zvýraznil jsem tučně podstatné

  • A fully-qualified namespace and class must have the following structure \<Vendor Name>\(<Namespace>\)*<Class Name>
  • Each namespace must have a top-level namespace („Vendor Name“).
  • Each namespace can have as many sub-namespaces as it wishes.

Jen mírně rozšířit, že pokud třída/doplňěk zapadá do namespaces Nette, tak by mohl následovat struktůru Nette.

pekelnik
Člen | 462
+
0
-

@LeonardoCA Presne tak.

Filip Procházka
Moderator | 4668
+
0
-

Vyvíjet některé doplňky společně nemusí být špatný nápad, ale sjednocovat namespace hotových komponent je hloupost a jakoukoliv komponentu budu vyrábět, tak bude mít moje namespace. Ber nebo nech být.

pekelnik
Člen | 462
+
0
-

muhehe :)

maarlin
Člen | 207
+
0
-

V zásadě souhlasím, ale nějak asi nechápu, jak tyto namespaces odpovídají PSR-0, přesněji v tom úplně nevidím <VendorName>:

  • NetteExtras
  • DebugPanel
  • Extras\Debug
hrach
Člen | 1834
+
0
-

Ohledně zmineneho repo nextras na Githubu, vysvetlim, je to „muj projekt“:

  • snazim se tim resit stejnou potrebu, jako naznacil maarlin
  • teoretickym cilem je vytvorit skupinu (organization), ktera se stara navzajem o vlastni addony
  • nextras je nazev organizace, tedy addony „patri“ organizaci, jejich forky nebo addony umistene jinde by toto namespace pouzivat nemely.
  • prakticky jde o to, ze vice lidi si muze s udrzovanim par addonu lepe pomoci, kdyz nekdo treba nema mesic cas, ale je dobre bug fixnout hned, nez nechat nekoho jinyho forkovat a upravovat si to, pak se casto totiz oprava nedostane do puvodniho repo a vytvari se velka fragmentace.
  • nejde o zadnou „oficialni“ aktivitu, nicmene cilem je dat na stul proverene addony spravovane proverenymi autory :)) proto sem tam zatim ja :D (a honza tvrdik)
MartinitCZ
Člen | 580
+
0
-

@hrach: Tohle je dobrý nápad, jelikož je tu plno užitěčných addonů, které jsou díky bugům a nekompatibilitě nepoužitelné. :/