✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Registri mustri kasutamine WordPressis

5

Olen vestelnud Twitteris erinevate sõprade ja teiste inimestega programmeerimiskeelte globaalsete muutujate mõiste üle. Neile, kes on programmeerimisega uued või kes pole kindlad, miks need halvad on:

Globaalsete muutujate kasutamine muudab tarkvara lugemise ja mõistmise raskemaks. Kuna mis tahes kood programmis võib muutuja väärtust igal ajal muuta, võib muutuja kasutamise mõistmine eeldada suure osa programmist mõistmist.

See ei tähenda, et neid ei kasutata, kuid kui olete huvitatud objektorienteeritud programmeerimisest (eriti WordPressi seadetes, kus kavatsete PHP-d kasutada), on oluline mõista mõnda paremat alternatiivi. kui globaalsed muutujad.

See tähendab, et on olemas viise, kuidas oma rakenduses andmeid edastada, ilma et oleks vaja globaalseid muutujaid. Ja üks selline viis on registri muster.

WordPressi registri muster

Esiteks pange tähele, et kujundusmustrid ületavad mis tahes konkreetset mustrit. Kuni keel pakub objektide (või isegi abstraktsioonide) mõisteid, on mustrit võimalik rakendada.

Aga milleks selle kasutamisega vaeva näha?

Registri mustri kasutamine WordPressis

Samuel Zelleri foto saidil Unsplash

Lühidalt öeldes pakub see objektorienteeritud viisi rakenduse ümber teabe edastamiseks ilma globaalseid muutujaid kasutamata. Sellised asjad nagu sõltuvussüsti konteinerid on ka selleks head, kuid need ei kuulu selle postituse ulatusse. Ma väidan ka, et mõnikord võivad need väikeste pistikprogrammide kontekstis olla üle jõu käivad.

Mustri rakendamine

Seda arvestades, kuidas saaksime WordPressis registrimustrit rakendada ja seejärel kogu oma töös ära kasutada? Vaatame kõigepealt mustri põhistruktuuri :

Pange tähele, et selle rakendamine on üsna lihtne:

  1. Klass sisaldab eraomandina ühte massiivi.
  2. Andmed lisatakse massiivi kindla ID-ga.
  3. Andmeid saab mustrist ID-ga kätte saada.

Võite isegi viia selle konkreetse mustri järgmisele tasemele, kui see aktsepteerib ainult teatud tüüpi klassi (näiteks AbstractEvent) ja käivitab seejärel automaatselt klassi funktsiooni, kui see registrist sisestatakse (või hangitakse).

Kuid see on muutumas keerulisemaks teostuseks, mida ma selle postituse jaoks sooviksin.

Registri seadistamine

WordPressi konksusüsteemi olemuse tõttu tuleb register seadistada ja seejärel WordPressis registreerida.

Oletame, et töötate pistikprogrammiga. Tehke pistikprogrammi alglaadimisfailis midagi sellist:

See loob registri ja seejärel vastava filtri, mida saame hiljem pistikprogrammis kasutada registri ja seega ka muude selle hooldatavate objektide toomiseks.

Registri kasutamine

Objekti registrisse lisamiseks helistage lisamisfunktsioonile ja edastage kordumatu ID ja objekti eksemplar. Pange tähele, et meie praegune rakendamine hävitab kõik sama võtmega objekti varasemad eksemplarid ja asendab selle sellega, mida me sellele edastame.

Sealt saate seejärel tuua registrisse salvestatud objektid .

Ja saate neid kasutada samamoodi nagu oy muul viisil. Kuid see väldib üksikute, globaalsete muutujate või muude ohtlike asjade kasutamise vajadust.

Sõna testitavuse kohta

Teine eelis, mille ma selle mustri rakendamisel leian, on see, et see mitte ainult ei võimalda teil hõlpsamini selle vastu ühikteste kirjutada, vaid annab teile ka võimaluse kirjutada teste objektide vastu, mida see mahutab.

Selle all pean silmas, et saate oma klassid kirjutada WordPressist sõltumatumalt, eraldades seega domeeniloogika põhirakendusest ja muutes need paremini esindavaks andmete suhtes, mida nad peaksid säilitama.

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem