design mønstre i wordpress: simpel fabrik mønster

, design mønstre i wordpress: simpel fabrik mønster,,,,, 1,,,,,,,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss. denne post er en del af en serie kaldet design mønstre i wordpress. design mønstre i wordpress: singleton patterndesign mønstre i wordpress: vi ' er lige begyndt i denne serie, vi tager et kig på former for design, og hvordan vi kan udnytte dem til vores fordel ved bygning af produkter på toppen af wordpress., det gode ved design mønstre, er, at de ikke er udtrykkeligt begrænset til emner eller plugins - de er handy med en række forskellige scenarier.det er blot et spørgsmål om at være i stand til at identificere, hvilke mønstre er gældende for visse scenarier.,, i den sidste post, vi gennemgik singleton mønster.i denne artikel, skal vi tage et kig på den enkle fabrik mønster, som er særlig nyttig, når man har en række forskellige klasser, som hver har et unikt formål og løser et specifikt problem. i denne post, vil vi se på et andet mønster - simpel fabrik - - som er nyttige, når du har et antal timer, som hver har et unikt formål, og som kan blive udvalgt på grundlag af bestemte kriterier.,, fabrikken metode mønster, simpel fabrik mønster er afledt af et mønster, kendt som fabrikken metode mønster, som er en smule mere kompliceret version af det mønster, som vi skal gennemgå. ifølge wikipedia, fabrikken metode mønster er defineret som følger:,, fabrikken metode medmenneskerettighederne er en samt creational design - at gennemføre konceptet af fabrikker og behandler problemet med genstande (produkter), uden angivelse af den nøjagtige klasse af objekt, der vil blive skabt, det lyder lidt indviklet, ikke?sandheden er, at det faktisk er en meget magtfuld bestemt mønster, men det ville tage meget længere artikel for at drøfte det, og det er lidt uden for anvendelsesområdet for denne serie., så som nævnt, vi kommer til at se en version af det mønster, der er sat en lidt og  , bør være mere generelt gældende for mindre komplicerede projekter., før vi gør det, lad os komme med en definition af simpel fabrik mønster:,, simpel fabrik mønster returnerer et bestemt sæt af data eller en bestemt klasse på grundlag af dens input, en risiko for, at en det simpelt, ikke?en bemærkning om simpel fabrik mønster, sandheden er, at mange programmører henviser til simpel fabrik som en metafor, end en egentlig mønster; andre mener, det er et mønster, for hvad det er værd, og jeg ser det som et meget enkelt mønster.det er en særlig anvendelse, som let kan identificeres ved at bruge det i løbet af en udvikling, som vi gennemgår senere i denne artikel, uanset, jeg bringer dette op, så hvis du ser dette som en metafor (eller et mønster), der anvendes i forskellige varer på internettet, eller endog i samtale, ved du, at entreprenørerne i spørgsmål henviser til samme programmerings - strategi - bare på en anden måde, så hvorfor betyder det noget i wordpress?ligesom design mønstre i ikke - wordpress specifikke projekter, f.eks. større ansøgninger, de former for design giver reelle muligheder for at løse fælles problemer. det bidrager til en abstrakt vores kode lidt, holde vores projekt let pålidelige, let læselige, og faktisk kan hjælpe os med at holde vores kode magert.dette kan resultere i, at vi faktisk har mere  , filer, i vores projekt, men hvert enkelt dossier skal have færre linier. betyder det, at hver sag har et bestemt formål, bør være klare, ikke kun for os, men fremtidige udviklere samt.,, som det ser ud nu, før vi dyk til diagrammer, taler om klasser, og de strategier, der er nødvendige for at gennemføre det mønster, jeg ønsker at nævne, at vi kommer til at tage en enkelt tilgang til det. sagen er den, at de læsere af denne blog strækker sig over en bred vifte af erfaringer - vi har nogle mennesker, som er ved at lære at skrive koden. andre, der er erfaren veteraner. med henblik på at appellere til de fleste af publikum, er vi nødt til at finde en balance.for dem af jer, der har været involveret i software - udvikling i årevis, det er måske alt for overfladiske, men ikke slå smut. - måske vil du hente noget nyt, for dem af jer, der er begyndere eller endog mellemliggende programmører, være meget opmærksomme på, hvad vi taler om, som det kan give udbytte i fremtiden (eller eksisterende). formålet med simpel fabrik, så forestil dig dette scenario: du arbejder på en funktion, der er et sæt af input - normalt en form for enestående kæde eller heltal - og har i en lang, hvis /anden erklæring eller måske har du det store, skift /tilfælde udtalelse om, at fortsat vokser, som projektet vokser. problemet er, at de hypoteser, blive en smerte til at forvalte.i sag hypoteser, eller sagen blokke, kan faktisk ende med at gøre så meget arbejde, som en bestemt funktion bør gøre. der er hvor enkelt fabrik, kommer ind i billedet.det, vi kan gøre, er abstrakte oplysninger sker i hvert af de hypoteser, i deres egen gruppe, hvilket gør det meget lettere at opretholde og bevare den kode meget enklere, og  , det er simpel fabrik mønster. en se mønstret,,, så her er hovedtrækkene i simpel fabrik -:,, bemærker, at stik af klasse har en privat henvisning til fabrikken klasse, fabrikken klasse sammenfatter alle logikken igen genstand for den type bruger, brugeren klasse er en basisklasse for tre andre klasser: administration, frivillig, læser, og den idé er, at hver af disse typer er underklasser af brugere med enestående funktion af deres egne, stik af, vil modtage en vis form for input, som det vil gå over til fabrikken, fabrikken vil examine input og derefter på grundlag af sin værdi, skal vende tilbage til en af de tre brugertyper, intet  , for kompliceret, ikke?jeg tror ærlig talt, at diagrammet er lidt mere kompliceret end de principper på spil.det giver stor fleksibilitet  , især  , når du ser at indføre en anden bruger type som redaktør eller noget lignende, note: det er  , ikke må forveksles med wordpress "indbyggede brugertyper.dette er blot et eksempel for at vise, hvad det mønster, ville se ud. et eksempel, så har vi taget et kig på diagrammet for mønster, lad os se på kildekoden i aktion.nedenfor, vil vi se på kildekoden for hver klasse, og så vil jeg give et download til en fuldt ud dokumenteret demo efter forhandlingen., stik af, lad os se på stik af klasse.husk, det er ikke mere end en prototype af, hvad mønster ser ud.det er ikke det samme som en fuldt udviklet wordpress stik af. <?folkesundhedsprogrammet aspektet include_once ("simpel fabrik. folkesundhedsprogrammet) klasse stik af (private $fabrik; offentlig funktion __construct() {$- > fabrik = nye simple_factory();} offentlig funktion get_user ($tilladelse) {tilbage $- > fabrik - > get_user ($tilladelse)).> bemærker, at stik af er relativt enkel:,, det omfatter, simple-factory.php, manuskript i hovedet af den fil, så det definerer en konstruktør, hvori det fastsættes, $fabrik, ejendomsret til et tilfælde af, simple_factory, er den eneste metode til rådighed i stik af, get_user, som returnerer en bruger baseret på en type, vil vi se, hvordan det går i gang, når vi har gennemgået alle de andre klasser, brugerne, den, der bruger er en abstrakt basisklasse, der udgør en grundlæggende konstruktøren og en abstrakt funktion, som skal gennemføres af alle andre underklasser. <?php abstrakt klasse bruger {private $rolle, offentlig funktion __construct ($rolle) ($- > rolle = $rolle;} abstrakt offentlig funktion get_role();}?> bemærker, at denne klasse er beregnet til at blive subclassed af en række andre klasser, som vi vil se på i detaljer nu, administrator, læseren, og den frivillige, følgende fire kategorier er særskilte filer, som hver underklasse, bruger basen klasse.jeg har valgt at medtage dem alle sammen her, fordi der er så lille afvigelse fra den faktiske gennemførelse, som det burde være nemt nok til at følge den administrator, <?php klasse admin udvider bruger {offentlige funktion __construct() {$- > rolle = "administrator"} offentlig funktion get_role() {tilbage $- > rolle;}}?> læseren, <?php klassen læser også bruger {offentlige funktion __construct() {$- > rolle = "læser"} offentlig funktion get_role() {tilbage $- > rolle;}}?>, den frivillige, <?php klasse frivillig udvider bruger {offentlige funktion __construct() {$- > rolle = "frivillig"} offentlig funktion get_role() {tilbage $- > rolle;}}?>, som sædvanlig, lad mig spørgsmål i bemærkninger; i modsat fald revidere koden så være sikker på, at læse op på den simple fabrik, der er det næste punkt - det hænger alt dette sammen, også huske på, at alle i denne kodeks vil blive delt i slutningen af artikel sammen med kode bemærkninger, at beskrive, hvad der sker. de enkel - fabrikken, simple_factory, klasse er kernen i hele det mønster.her er hvor alle beslutninger skal træffes, og de relevante genstande er vendt tilbage. <?folkesundhedsprogrammet aspektet include_once ("brugere /bruger. php '); include_once (" brugere /admin. php'); include_once ("brugere /frivillig. php '); include_once (" brugere /læser. folkesundhedsprogrammet) klasse simple_factory {offentlige funktion get_user ($tilladelse) (skift (strtolower ($tilladelse) (sag read-write: $bruger = nye admin(); bryde; sag "hjælp": $bruger = nye volunteer(); bryde; sag "læse": $bruger = nye reader(); bryde; default: $bruger = ugyldig; pause.} tilbage $bruger;}}?>, konstaterer, at den, simple_factory, omfatter det grundlæggende bruger klasse og dens undergrupper og arbejder for at returnere den relevante type bruger baseret på den nye række tilladelser.,, fordelene ved simpel fabrik mønster, selv om det bør være en åbenlys af dette punkt i den artikel, den simple fabrik - giver en række fordele, især hvis du er vant til at arbejde med mange hypoteser. det er en elegant måde at abstrakt din kode, så er der mindre visuelle rod, det giver dig mulighed for at indføre specialiserede, målrettede kurser med et eneste formål, hvilket er godt, hvis du følger den solide principper), det gør kodeksen mere pålidelige, da der er et enkelt sted, hvor klasser er instantierede, og hver kategori tjener et fællesformål, og det er en af mine favorit mønstre for blot spørgsmålet om kode organisation og specialisering, at det kan bringe til bordet.,, indgåelse, endelig kan man se hele kildekode - fuldstændig dokumentation og monteringsvejledning - github ved hjælp af denne forbindelse. på dette punkt har vi taget se på tre mønstre:,, observatøren mønster, singleton mønster, simpel fabrik mønster, denne serie kunne gå et stykke tid, men jeg tror, at vi har dækket tilstrækkeligt grundlag for i det mindste at få mange af os begyndte med at gennemføre mønstre i vores arbejde, så i den sidste artikel i serie, kan vi opsummere, hvad vi har lært, og så vil jeg også anbefale andre mønstre, deres formål og nogle andre punkter af fesearch, der bør fortsætte med at støtte dem i at fortsætte med at lære om former for design og deres fordele, ikke kun i wordpress udvikling, men den almindelige udvikling af software, som godt.

The Simple Factory Pattern



Previous:
Next Page: