jeg har ikke noget dokument at dele om disse indlejrede sløjfer, og jeg er ikke længere en del af projektteamet, så alt hvad jeg kan fortælle om det er fra toppen af mit hoved. Så jeg håber du forstår, hvorfor jeg ikke kan fortælle for mange detaljer her.
dybest set var jeg nødt til at udføre tre forskellige slags opslag på samme bord for en såkaldt brugerdefineret regel i Testdatastyringsprogrammet (TDM). Disse brugerdefinerede regler implementeres som mapplets, og de skal kun indeholde passive transformationer. Ingen routere, ingen filtre, ingen aggregatorer, ingen aktive Java-transformationer, kun udtryk, Opslagstransformationer og lignende.
nu for de to mest komplekse brugerdefinerede regler var jeg nødt til at implementere flere hjælpetabeller, der indeholdt disse opslagsdata på forskellige aggregeringsniveauer. Det var ikke for let at udfylde disse tabeller, fordi kildefilen består af 4,5 GB tekst (app. 43 millioner poster); opslagstabellerne indeholder data på tre forskellige aggregeringsniveauer med forskellige opslagskriterier. Og jeg ville ikke opdele kortlægningen i tre. Så jeg var nødt til at passe på identifikation af “samme” baseret rekord alene, jeg kunne ikke bruge aggregatorer alene.
så vidt jeg husker, ville jeg i et traditionelt programmeringssprog som Java have brug for op til fem indlejrede sløjfer for at analysere kildedataene og oprette de respektive opslagsposter fra disse inputdata. Det er ikke for let at vedligeholde at udføre forskellige aggregeringsniveauer med flere variable porte i en enkelt eksp, men mine indledende forsøg har afsløret, at dette stadig var det bedste valg; som nævnt kunne jeg have opdelt kortlægningen i tre, men hver kortlægning ville have haft næsten det samme niveau af kompleksitet som den ene “generelle” eksp, så jeg anså det ikke for umagen værd at opretholde tre forskellige belastningsstier i denne kortlægning.
jeg er overbevist om, at alle med en vis erfaring i kraftcenter kan – efter nogle tanker – komme med en lignende historie om ikke-trivielle kortlægningskrav fra hans/hendes egen praksis. Vi er måske ikke engang opmærksomme på en sådan kompleksitet, men den er der stadig.
tag som eksempel en tråd fra 2014 eller 2015, hvor nogen spurgte, hvordan man genererer primtal i kraftcenter. Ikke for let. Den, der bygger en sådan løsning, skal tænke (og arbejde) uden for de kendte stier. Det er uden tvivl en ekstraordinær præstation i magtcenter. Så dette er måske ikke et stort eksempel, men det kan være et godt eksempel på mere kompleks kortlægningslogik.
som et andet eksempel skal du se på ethvert system for at koordinere udførelsen af arbejdsgange i en bestemt rækkefølge. Måske med nogle yderligere betingelser, såsom “antal poster med ejendom er lig med værdien ABC”. Alle disse ting kan blive vilkårligt komplekse, og – som nævnt ovenfor-er jeg overbevist om, at mange mennesker har bygget noget lignende komplekst en eller flere gange, selvom de ikke genkendte det.