28.09.2013 Views

Ökad tillgänglighet av existerande programvara genom ...

Ökad tillgänglighet av existerande programvara genom ...

Ökad tillgänglighet av existerande programvara genom ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Sammanfattning/slutsatser <strong>av</strong> förstudie<br />

kompileras om varje gång en viktig uppdatering <strong>av</strong> någon del<br />

i det <strong>existerande</strong> systemet utförs. Detta är dock inget stort<br />

problem eftersom komponenten är <strong>av</strong>sedd att finnas i ett fåtal<br />

exemplar på centrala webbservrar. Det skulle vara ett <strong>av</strong>sevärt<br />

större problem om komponenten skulle behöva installeras på<br />

alla klientdatorer som ska använda denna.<br />

Lösning<br />

Det finns en lösning till detta problem, men det innebär<br />

mycket arbete. Det bör påpekas att uppdelningen och därmed<br />

länkningen såg annorlunda ut i tidigare versioner <strong>av</strong> det<br />

<strong>existerande</strong> systemet, men detta innebar en del problem. Man<br />

valde då att lösa dessa <strong>genom</strong> att statiskt länka in delarna i<br />

den exekverbara enheten. Man kan lösa problemet <strong>genom</strong> att<br />

man kapslar in de olika delarna i enheter som kan länkas<br />

dynamiskt. Man behöver alltså inte länka om hela systemet,<br />

utan bara kompilera om de delarna som ändrats. Det krävs<br />

dock en hel del arbete eftersom man då måste mappa varje<br />

metod och attribut i den <strong>existerande</strong> delen mot motsvarande<br />

metoder och attribut i inkapslingsbiblioteket. Man vet inte<br />

heller hur mycket arbete som krävs för att få de nu <strong>existerande</strong><br />

delarna att fungera tillsammans som skilda dynamiskt länkade<br />

enheter. Detta eftersom det förekommer ett stort antal<br />

kopplingar mellan dessa och sådana kopplingar kan ställa till<br />

en hel del problem.<br />

4.3.3 Datatyper i ASP<br />

Eftersom de scriptspråk som ingår i ASP inte är lika kraftfulla<br />

som ett vanligt programmeringsspråk så finns det en del<br />

undantag när det gäller framför allt datatyper. När det ska<br />

finnas kommunikation mellan COM och ASP så är det<br />

datatypen VARIANT (se appendix A.8.1, VARIANT) som är<br />

aktuell. Detta är en typ som kapslar in en underliggande<br />

struktur som i sin tur kan innehålla ett antal olika typer <strong>av</strong><br />

data. Typen VARIANT används för att den ser likadan ut utåt,<br />

oberoende <strong>av</strong> vilken datatyp som egentligen ingår i den. I<br />

VARIANT finns en typ som heter VT_ARRAY. Detta gör det<br />

möjligt att skicka arrayer <strong>genom</strong> komponentens gränssnitt.<br />

Denna typ är mycket aktuell i just den här komponenten som<br />

ska utvecklas. Det som ställer till problem här är att man<br />

måste använda en s.k. SafeArray på komponentsidan. Detta är<br />

relativt komplicerat, vilket gör att det bör undvikas.<br />

25

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!