/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
dll refrencer?
Fra : Stefan Kristensen


Dato : 24-10-02 10:50

Hej NG.

Jeg er ved at lave en større webapplikation, der benytter en del
hjemmelavede dll'er. De fleste af disse refererer til en enkelt dll,
Util.dll, der også er hjemmelavet. Hvis jeg ændrer i Util.dll skal jeg til
at rekompilerer alle de dll'er der refererer til den, og det er da bare
sk... ireterende og ikke mindst tidskrævende. Er der en måde at komme uden
om dette?

c",)
Stefan



 
 
Peter Lykkegaard (24-10-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 24-10-02 11:26

Som svar på skriblerier nedfældet af Stefan Kristensen :

> Jeg er ved at lave en større webapplikation, der benytter en del
> hjemmelavede dll'er. De fleste af disse refererer til en enkelt dll,
> Util.dll, der også er hjemmelavet. Hvis jeg ændrer i Util.dll skal
> jeg til at rekompilerer alle de dll'er der refererer til den, og det
> er da bare sk... ireterende og ikke mindst tidskrævende. Er der en
> måde at komme uden om dette?
>
Ja og nej

1) Planlægning før du koder
2) Binary Compabillity
3) Brug Optional hvis du tilføjer i parameterlisten
4) Flere versioner af dine util klasser - fx Util & Util2

Bryder du Binary Compabillity så skal du rekompilere

Alternativt kan du bruge late binding i stedet for early binding
Dog på bekostning af performance

mvh/Peter Lykkegaard



Stefan Kristensen (25-10-2002)
Kommentar
Fra : Stefan Kristensen


Dato : 25-10-02 11:08

> 1) Planlægning før du koder
Jeg prøver, men kravspec ændre sig hurtigere end jeg kan kode...

> 2) Binary Compabillity
> Bryder du Binary Compabillity så skal du rekompilere
Hmm... Hvornår brydes BC? Jeg ville mene at det sker når man ændre på
signaturen for en funktion/rutine?
Jeg har rettet en stavefejl inde i en funktion, men skulle alligevel
rekompilere de klasser, der refererer til den retteede.

> 4) Flere versioner af dine util klasser - fx Util & Util2
Så skal jeg jo stadig rekompilere, når jeg ændrer referance?

> Alternativt kan du bruge late binding i stedet for early binding
Er det det, der sker i Java? (Hvis du ved det, så bare et ja eller nej, jeg
ved godt det ikke er en java gruppe (-: )

mvh
Stefan



Peter Lykkegaard (25-10-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 25-10-02 11:46

Som svar på skriblerier nedfældet af Stefan Kristensen :

>> 1) Planlægning før du koder
> Jeg prøver, men kravspec ændre sig hurtigere end jeg kan kode...
>
Vent med at starte kodningen til at krav er klarlagt
Nok svært i praksis, men kan være nødvendigt
Kær en designfase med papirtests etc

>> 2) Binary Compabillity
>> Bryder du Binary Compabillity så skal du rekompilere

> Hmm... Hvornår brydes BC? Jeg ville mene at det sker når man ændre på
> signaturen for en funktion/rutine?
> Jeg har rettet en stavefejl inde i en funktion, men skulle alligevel
> rekompilere de klasser, der refererer til den retteede.

Har du slået Binary Compabillity til?
Tag en kopi af DLL'en og gem den i sin egen folder fx references
Gå ind under egenskaber for projektet -> Component -> Binary Compabillity
Henvis til den DLL der ligger i folderen references

>> Alternativt kan du bruge late binding i stedet for early binding

> Er det det, der sker i Java? (Hvis du ved det, så bare et ja eller
> nej, jeg ved godt det ikke er en java gruppe (-: )
>
Early binding - fx
Set rsHouse = New ADODB.Recordset

Late binding - fx
Set rsHouse = CreateObject("ADODB.Recordset")

mvh/Peter Lykkegaard



Stefan Kristensen (25-10-2002)
Kommentar
Fra : Stefan Kristensen


Dato : 25-10-02 12:16

> Vent med at starte kodningen til at krav er klarlagt
> Nok svært i praksis, men kan være nødvendigt
> Kær en designfase med papirtests etc
Nu har projektet kørt i to år sååeh...

> Har du slået Binary Compabillity til?
> Tag en kopi af DLL'en og gem den i sin egen folder fx references
> Gå ind under egenskaber for projektet -> Component -> Binary Compabillity
> Henvis til den DLL der ligger i folderen references
Det har jeg prøvet og det drillede stadig, men det var måske andre ting. Jeg
prøver igen.

> Early binding - fx
> Set rsHouse = New ADODB.Recordset
>
> Late binding - fx
> Set rsHouse = CreateObject("ADODB.Recordset")
Så blev jeg så meget klogere

Tak for hjælpen
c",)
Stefan



Peter Lykkegaard (25-10-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 25-10-02 12:49

Som svar på skriblerier nedfældet af Stefan Kristensen :

>> Vent med at starte kodningen til at krav er klarlagt
>> Nok svært i praksis, men kan være nødvendigt
>> Kær en designfase med papirtests etc

> Nu har projektet kørt i to år sååeh...
>
Har det kørt i to år uden at blive sat i drift, eller er det en "løbende"
process, hvor nye dele af systemet bliver sat i drift som behovene opstår

De installationer jeg arbejder er i princippet uendelige mht
redesign/kodning

En designfase kører, og man trækker en streg i sandet, hvorefter der kodes,
implementeres, testes, fejlrettes og sættes i drift
Efter kortere længere tid kan man så igangsætte en nyt projekt med
detailændringer eller nye tiltag

mvh/Peter Lykkegaard





Stefan Kristensen (25-10-2002)
Kommentar
Fra : Stefan Kristensen


Dato : 25-10-02 13:55

> De installationer jeg arbejder er i princippet uendelige mht
> redesign/kodning
Det samme her.

> En designfase kører, og man trækker en streg i sandet, hvorefter der
kodes,
> implementeres, testes, fejlrettes og sættes i drift
Her er ingen streger i sandet. Der kodes, sættes i drift og fejlrettes mens
nye krav vælter ind...

> Efter kortere længere tid kan man så igangsætte en nyt projekt med
> detailændringer eller nye tiltag
Det må jeg prøve en dag



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste