FriendsOfREDAXO / neues

News-Verwaltung (Aktuelles, Pressemitteilungen, Pressestimmen, ...) für REDAXO 5 auf YForm-Basis
MIT License
12 stars 2 forks source link

namespace hinterlegen #63

Closed alxndr-w closed 4 months ago

alxndr-w commented 5 months ago

To Do: Kompatibilitätsklassen hinterlegen, in nächster Major-Version entfernen.

christophboecker commented 5 months ago

Hi,

hast Du den Slack-Thread verfolgt?

Demnach sollen Namespace- und Klassen-Namen mit einem Großbuchstaben beginnen und CamelCase sein.

namespace FriendsOfRedaxo\Neues;

Den Cronjob kannst Du auch in den Namespace nehmen. Funktioniert, siehe Geolocation. https://github.com/FriendsOfREDAXO/geolocation/blob/b45f8d016374d910cc48e479f74d3bc1d37b50b9/lib/Cronjob.php#L1-L12 https://github.com/FriendsOfREDAXO/geolocation/blob/b45f8d016374d910cc48e479f74d3bc1d37b50b9/boot.php#L63-L64

Ist das Addon schon in Benutzung? Ja, nehme ich an. Dann kannst Du entscheiden, Ob Du einen harten Schnitt machen willst (sofort auf ein neuens Major-Release) oder smooth. Dann würde ich für einen Übergang vorschlagen, die alten Klassen zunächst als deprecated weiter bereitzustelen. Beispiel Focuspoint https://github.com/FriendsOfREDAXO/focuspoint/blob/315ee0c326a829246456e4551baa77eca72a7613/lib/no_namespace/focuspoint.php#L18-L25

Dann ist der aktuelle Wunsch, die Klassennamen mit einem Großbuchstaben zu benginnen. Das ist easy, weil es PHP egal ist. Beispiel: Neuen_author.

Und Du könntest Dir noch überlegen, ddem allgemeinen Wunsch folgend den Klassennamen auf CamelCase zu ändern. NeuesAuthor. Bei Focuspoint bin ich davor noch zurückgeschreckt, könnte man aber auch durch ne Deprecated-Migrationsklasse abfedern und anmahnen.

alxndr-w commented 5 months ago

Auf den Slack-Thread bin ich eben gestoßen und Zack, hast du schon hier geantwortet :)

alxndr-w commented 5 months ago

Ja, hätte ich das mal 33 Tage früher gewusst. Im Prinzip kann ich mich mit jedem Feedback anfreunden, FriendsOfRedaxo\Neues und NeuesAuthor usw, wobei doch dann auch Entry:: und Author:: reichen würden, oder? Da man eh den Namespace Neues hat.