Av Robert Hanmer
När du väl vet vilken mönsterinriktad programarkitektur (POSA) är att dykning i mjukvarumönstret kan vara en verklig fördel - du kan dela med dig av dina erfarenheter och vinna på andras erfarenheter. När du använder mönster, även designmönster, måste du referera dem tydligt och korrekt så att andra människor kan hitta och använda dem också. Slutligen, när du arbetar med mönster, var noga med att montera din egen mönsterkatalog - en praktisk referens då du möter liknande problem igen.
Vad är mönsterorienterad programarkitektur?
Förstå mönsterorienterad mjukvaruarkitektur (POSA) börjar med att förstå de två begrepp som den omfattar: programvaraarkitektur och mjukvarumönster.
-
Programarkitektur: Programarkitektur kan betyda olika saker, beroende på din roll. Utvecklare tror att det betyder att systemet är byggt. Testare tror att det är formen på vad de behöver för att testa. För alla är det lösningen på hög nivå på ett problem som kunden eller kunden vill lösa.
-
Mjukvaru mönster: A mjukvarumönster är en lösning på ett programvaru- eller kodproblem som har varit användbart minst tre gånger. Återkommandet visar att mönstret är en vanlig lösning som fungerar om och om igen. Mönster löser inte ditt problem för dig, men de hjälper dig att förstå hur man löser det. De förklarar de steg som du behöver följa och förklara de avvägningar du måste balansera för att få en lösning.
När du sammanfattar dessa två begrepp får du den höga strukturen av en lösning på kundens eller kundens problem som bygger på beprövade idéer. När du använder rätt mönster för att strukturera din lösning kan du vara säker på att arkitekturens grundläggande strukturer är ljuka, eftersom de tidigare har använts.
Komma i kontakt med programvarumemenskapen
Oavsett om du är en programarkitekt, ingenjör eller designer, är du sannolikt intresserad av mjukvarumönster och därmed mjukvarumönstret. Du kan bli involverad i denna gemenskap på flera sätt:
-
Förespråkare för mönster. Du kan förespråka mönster inom din arbetsgrupp eller företag och branschen som helhet. Du kan peka dina kollegor på mönsterresurser som du har funnit för att vara till hjälp och de som du tycker kan hjälpa till att lösa vissa programvaruproblem.
-
Skriv om dina erfarenheter med hjälp av mönster. Blogg om hur mönster hjälpte dig att lösa ett verkligt problem, till exempel, eller skriv en kort artikel för ett företag eller ett tekniskt nyhetsbrev.
-
Var en mönsteradministratör. Visa dina kollegor hur mönster kan (och ibland inte kan) lösa programvarutmaningar och hjälpa dem att hitta användbara mönster för sina egna projekt. Du kan hjälpa dem att lära sig hur man skriver mönster också.
-
volontär. Som alla samhällen har mönstergruppen massor av volontärmöjligheter. Du kan hjälpa till att förbättra andras mönster genom att delta i författares workshops vid mönsterkonferenser. När du har bevisat dig själv kan du bli en herde och hjälpa andra mönster författare redo för författarnas workshops.
-
Skriv dina egna mönster. Tänk på vad dina kollegor ställer dig till frågor om - eller vad du vill att de skulle fråga dig om. Dessa ämnen kan vara lämpliga för dina första mönster.
Mjukvaruarkitektur: Hur man refererar till mjukvarumönster
När du skriver ett dokument och vill hänvisa till ett mjukvaru mönster, var noga med att ge dina läsare tillräckligt med information om att de kan hitta samma mönster själva. Programmönstret visas i böcker, tidskrifter och konferenshandlingar, och bör citeras precis som något annat. Här följer några riktlinjer:
-
Stäng av namnet. Låt mönsternamnet se annorlunda ut än den vanliga texten på något sätt i dokumentets kropp. Vanligtvis gör mönsterförfattare detta genom att använda småskaliga karaktärsformatering, underlätta mönstertiteln eller kapitalisera den konsekvent.
-
Märk mönstret. Markera mönstret så att läsarna kan hitta hela mönstret genom en detaljerad referens. Använd vilken referensmetod du tillämpar i resten av ditt dokument - fotnoter, slutnoter eller inline (med texten inom parentes).
-
Betala alla dina källor. För varje mönstercitation, inkludera allt typiskt referensmaterial, som författare, mönsternamn och var du hittade mönstret (t.ex. en bok eller en webbplats). Ibland känner tillräckligt många referenser så att du kan använda en stenografi.
-
Datum versionen. Håll alltid namnet på den mönsterversion som du använder, speciellt om källan kan ändras och uppdateras. Mönster på webbplatser kan till exempel enkelt uppdateras. Eftersom skrivmönster är en oändlig process, blir mönster kontinuerligt förfinade och mönsterförfattare listar ett nytt datum för varje ny version.
Skapa en programmönsterkatalog
När du börjar använda mönster för att lösa programvaruproblem, hittar du några favoriter. Spela in dessa favoriter i din egen mjukvarukortkatalog för framtida referens-det är bra praxis. Välj de verktyg som du är mest bekväma med (penna och papper, ordbehandlingsdokument, webbsida, blogg eller wiki) och som du mest sannolikt kommer att använda när du möter designutmaningar. Följ sedan dessa steg:
-
Identifiera problem med mjukvaruutveckling som du vanligtvis stöter på.
Din mönsterkatalog är mest användbar om den löser dessa problem.
-
Hitta de mönster som löser dessa problem.
Du har förmodligen redan några favoritmönster som du använder.
-
Organisera din mönsterkatalog i sektioner för att hjälpa dig att zooma in och snabbt hitta de mönster som kan hjälpa dig.
Organisera mönster när du behöver dem, av vilken typ av lösning de tillhandahåller, eller genom mönstervall - någon kategorisering som du tycker är användbar.
-
Anslut mönstren.
Mönster fungerar tillsammans, så att du kan lösa stora problem. Lägg till referenser, hyperlänkar eller andra kopplingar mellan mönstren så att du kommer ihåg att när du använde mönster X tidigare använde du också mönster Y. Anslutningsmönster är enklaste om du använder en elektronisk katalogiseringsmetod.
-
Håll din katalog aktuell.
Nya mönster publiceras kontinuerligt, och du kanske vill inkludera några av dem i din handbok. Om du upptäcker att du inte använder några av mönstren längre, ta bort dem för att skapa plats för de nya som du använder.