Reactie plaatsen 
 
Waardering:
  • 0 stemmen - gemiddelde waardering is 0
  • 1
  • 2
  • 3
  • 4
  • 5
Enkele verschillen tussen VB6.0 en VB2005
Auteur Bericht
MRG Offline
2HoT2HaNdLe
****

Berichten: 362
Lid sinds: 04-2006
Reputatie: 1
Bericht: #1
Exclamation Enkele verschillen tussen VB6.0 en VB2005
Verschillen tussen Visual Basic 6.0 en Visual Basic 2005

Ik ga het hier hebben over verschillen tussen Visual Basic 6.0 en Visual Basic 2005 die ik tot nu toe ben tegengekomen. Ik zelf ben nog lerende.

Voorbeeld van het manipuleren van variabelen:
Je wilt bijvoorbeeld 400 bij een integer optellen.

Visual Basic 6.0 manier:
Code:
Dim integertje as integer
Integertje  = integertje + 1
Integertje heeft hier de waarde 1 gekregen.

Visual Basic 2005 manier:
Code:
Dim integertje as integer = 0
Integertje += 1
Integertje heeft hier dezelfde waarde gekregen.

Je ziet dus dat integertje meteen de waarde 0 krijgt. Dit is niet nodig, maar het is wel handig voor als je if/else constructies gebruikt vanwege waarschuwingen. Het hoeft niet, want net zoals Visual Basic 6.0 staat een integer standaard op 0. Hier ga ik later op in. Het voordeel is dus dat het korter is.

Met deze code kan je bijvoorbeeld ook strings met elkaar combineren. Stel je hebt 2 strings. String1 en String2. String1 bevat de variabele ‘1’ en String2 bevat de variabele ‘2’. Als je simpelweg String1 &= String2 gebruikt is de uitkomst ‘12’. Ook al zijn er nu getallen in de 2 strings gestopt, wanneer je += zou hebben gebruikt zou het dezelfde uitkomst hebben gehad. Omdat het strings zijn word het niet opgeteld. Dit is dus hetzelfde als in Visual Basic 6.0.

Waarom meteen bij het declareren een variabele meegeven?
Zoals ik eerder al zei is het handig voor if/else constructies. Neem bijvoorbeeld deze code:
Code:
Dim a As String
        If 1 = 2 Then
            a = "hihi"
        End If
        MessageBox.Show(a)

Bij Visual Basic 2005 krijg je in de Error List de volgende waarschuwing te zien: ‘Variable 'a' is used before it has been assigned a value. A null reference exception could result at runtime.’. Met andere woorden je zou dus een lege output kunnen krijgen tijdens het uitvoeren. Visual Basic controleert dit dus voor je. Bijvoorbeeld:
Code:
Dim a As String
        If 1 = 2 Then
            a = "hihi"
        Else
            a = "hoho"
        End If
        MessageBox.Show(a)

Hier geeft Visual Basic geen waarschuwing omdat de string a hier zoweizo een variabele krijgt. Dit is alleen zo bij strings.
Booleans staan standaard op false. (1 of 0 werkt niet meer in Visual Basic 2005).
Integers staan standaard op 0.
Singles staan standaard op 0.
Bovenstaande types zullen altijd een waarde hebben.

Nog korte veranderingen over de messagebox.

Visual Basic 6.0 code voor een uitgebreide messagebox:
Code:
MsgBox "content", vbInformation + vbOKOnly, "titel"

Dit weergeeft dus een bericht met een informatiewolkje en een OK-knop.

Visual Basic 2005 code voor een uitgebreide messagebox:
Code:
MessageBox.Show("content", "titel", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
Dit weergeeft dus een bericht met een informatiewolkje en een OK-knop waar de focus op staat door het argument ‘MessageBoxDefaultButton.Button1’. De titel van deze messagebox staat rechts uitgelijnd door het argument ‘MessageBoxOptions.RightAlign’.

Nog een verschil; bij Visual Basic 6.0 kan je controleren of er op OK is geklikt door te kijken of het gelijk is aan vbOK. Bij Visual Basic 2005 word Windows.Forms.DialogResult.OK gebruikt. Gewoon msgbox werkt nog wel met dezelfde argumenten. Maar het kan ook zo: MsgBox("content", MsgBoxStyle.Information + MsgBoxStyle.OkOnly, "titel")


Als ik weer enkele verschillen tegenkom dan zal ik er weer een lijstje van maken en posten. Een goed idee?

(\__/)
(='.'=) Dit is konijn. Zet hem ook in je handtekening
(")_(") zodat hij de wereld verovert.
04-01-2008 16:26:11
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Ikke Offline
De enige echte
******

Berichten: 3.123
Lid sinds: 04-2006
Reputatie: 67
Bericht: #2
RE: Enkele verschillen tussen VB6.0 en VB2005
Op zich een leuk idee, alleen ik mis de belangrijkste verschillen.

Visual Basic.net is een hele andere manier van programmeren. Alles gaat veel strikter, en is object georiënteerd.

Een voorbeeld heb je al aangehaald. In vb 6 gebruik je meer een statement msgbox "Hier je bericht", opties, "caption", terwijl je in vb.net eerder MessageBox.Show("Hier je bericht, opties, "caption") gebruikt.

Strings zijn bijvoorbeeld ook objecten geworden. Waar je eerst len(mijnString) gebruikt, gebruik je nu mijnString.length.

Ook moet je nu alle variabelen declareren. Dat is ook beter omdat je dan geen onverwachte resultaten krijgt.

En zo zijn er nog wel meer dingen die anders gaan.

- OOP: Make simple things complex to make complex things simple
- Op deze planeet is stompzinnigheid nu eenmaal overvloediger dan zuurstof.
- The most constant factor of software is change
04-01-2008 19:04:04
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Joris Offline
embedded-know-it-all
*****

Berichten: 1.579
Lid sinds: 11-2006
Reputatie: 17
Bericht: #3
RE: Enkele verschillen tussen VB6.0 en VB2005
VB6 zou ik sowieso aan de kant zetten. MS noemt dit naast Windows 98 haar grootste fout.

Goed initiatief, maar wel een vreemde vergelijking tussen deze twee talen.
Grote verschillen zitten, zoals Ikke al aangeeft, in volledig OOP en integratie met het .NET-framework.
De lijst met kleinere verschillen is gigantisch lang en een tantaluskwelling wil je hem volledig afmaken.

Typefouten voorbehouden.

[Afbeelding: eschersw6.png]
05-01-2008 17:50:30
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
MRG Offline
2HoT2HaNdLe
****

Berichten: 362
Lid sinds: 04-2006
Reputatie: 1
Bericht: #4
RE: Enkele verschillen tussen VB6.0 en VB2005
Om eerlijk te zijn dacht ik dat VB zoweizo altijd een groot succes is geweest. De bedoeling van VB is vooral makkelijk programmeren met snelle resultaten. En wat is er eigenlijk mis met VB6? Ik ben eigenlijk nog steeds groot voorstander van VB6 omdat deze geen framework gebruikt. Maar omdat Vista steeds meer begint te komen kan VB2005 er ook wel mee door wnat die heeft standaard die framework. Ik vond het vooral erg jammer dat mijn netwerkprogrammaatjes niet meer werkten op vista die ik in vb6 geprogrammeerd had.

Maar of VB6 wel of geen groote fout is/was, het gaat er om dat de verschillen er even zijn neergezet.

@Ikke:
Het voorbeeld dat je hier gaf ken ik natuurlijk wel maar ik was er echt niet op gekomen. En dat je met VB2005 de variablen echt moet declareren weet ik ook en dat dat met VB6 niet hoefde. Maar zelf was ik er ook niet opgekomen om dat als voorbeeld te geven omdat ik in vb6 option explicit altijd aan had staan en dus soweizo declareerde.

Maar dankzij jullie weet ik nu wel onderwerpen voor mijn volgende 'tut'. En natuurlijk altijd zeggen als er iets niet klopt want zoals ik al zei, ik ben lerende ;).

Groeten MRG

(\__/)
(='.'=) Dit is konijn. Zet hem ook in je handtekening
(")_(") zodat hij de wereld verovert.
05-01-2008 19:09:46
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Ikke Offline
De enige echte
******

Berichten: 3.123
Lid sinds: 04-2006
Reputatie: 67
Bericht: #5
RE: Enkele verschillen tussen VB6.0 en VB2005
MRG schreef:Om eerlijk te zijn dacht ik dat VB zoweizo altijd een groot succes is geweest. De bedoeling van VB is vooral makkelijk programmeren met snelle resultaten. En wat is er eigenlijk mis met VB6? Ik ben eigenlijk nog steeds groot voorstander van VB6 omdat deze geen framework gebruikt. Maar omdat Vista steeds meer begint te komen kan VB2005 er ook wel mee door wnat die heeft standaard die framework. Ik vond het vooral erg jammer dat mijn netwerkprogrammaatjes niet meer werkten op vista die ik in vb6 geprogrammeerd had.

VB 6 nodigde heel veel uit tot ranzig programmeren. Heel veel dingen waren toegestaan waardoor je de meest ranzige oplossingen kreeg voor bepaalde problemen.
Dat is in vb.net hersteld.

En je hebt gelijk dat vb 6 redelijk lichtgewicht is, maar het .net framework scheelt je meestal toch een hoop programmeer werk. En met het huidige breedband internet is het .net framework zo gedownload.
MRG schreef:Het voorbeeld dat je hier gaf ken ik natuurlijk wel maar ik was er echt niet op gekomen. En dat je met VB2005 de variablen echt moet declareren weet ik ook en dat dat met VB6 niet hoefde. Maar zelf was ik er ook niet opgekomen om dat als voorbeeld te geven omdat ik in vb6 option explicit altijd aan had staan en dus soweizo declareerde.

Maar dankzij jullie weet ik nu wel onderwerpen voor mijn volgende 'tut'. En natuurlijk altijd zeggen als er iets niet klopt want zoals ik al zei, ik ben lerende .

Zoals je al zegt, hij zijn slechts voorbeelden. Maar wat ik wil zeggen is dat het niet zomaar even een één op één vertaling is, maar een hele andere manier van programmeren. Het is dus niet zomaar even te vergelijken.

Joris schreef:VB6 zou ik sowieso aan de kant zetten. MS noemt dit naast Windows 98 haar grootste fout.

Goed initiatief, maar wel een vreemde vergelijking tussen deze twee talen.
Grote verschillen zitten, zoals Ikke al aangeeft, in volledig OOP en integratie met het .NET-framework.
De lijst met kleinere verschillen is gigantisch lang en een tantaluskwelling wil je hem volledig afmaken.

Ik denk dat een topic zoals dit juist aanzet tot het overstappen tot vb.net

Maar ik vond niks mis met windows 98. Vooral de SE versie was behoorlijk stabiel. Weinig problemen mee. Ik snap niet waarom het als de grootste fout van MS wordt bezien.

- OOP: Make simple things complex to make complex things simple
- Op deze planeet is stompzinnigheid nu eenmaal overvloediger dan zuurstof.
- The most constant factor of software is change
05-01-2008 23:07:16
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Cuve Afwezig
Netlog Web Developer
*****

Berichten: 5.377
Lid sinds: 04-2006
Reputatie: 151
Bericht: #6
RE: Enkele verschillen tussen VB6.0 en VB2005
Joris schreef:[krap door de bocht]
Windows 98 is een 16 bits operating system dat 32 bits emuleerde.
En de kernel was ronduit bagger, wat nu behoorlijk is verbeterd met de NT-kernel in XP en Vista.
[/krap door de bocht]
Overigens het is MS die zelf deze waarde oordeel over 98 heeft.

De topic is goed, maar een lange lijst met kleine verschillen wordt oneindig lang.

Visual Basic is een taal dat gemaakt is om zeer snel een applicatie te maken. En VB is in mijn ogen de enige die dat het snelste en simpel kan. Dit heeft echter een prijs. VB is tegenstelling tot bijvoorbeeld C# en Java een ramp op performance gebied. Maar door de zeer snelle CPU's zul je daar weinig van merken. VB wordt niet voor niets vaak bestempeld als een kleutertaaltje.

VB.NET is qua performance beter omdat het gebruik maakt van het .NET framework.
Alhoewel je met 'gewone' VB toch al heel wat kon bereiken, zelfs OO proggen. Maar 't was idd niet echt "dat" :P

06-01-2008 22:39:07
De website van deze gebruiker bezoeken Alle berichten van deze gebruiker zoeken Reageren op dit bericht
MRG Offline
2HoT2HaNdLe
****

Berichten: 362
Lid sinds: 04-2006
Reputatie: 1
Bericht: #7
RE: Enkele verschillen tussen VB6.0 en VB2005
Als programmeur kies je er zelf voor om code ranzig te maken.. Het kan ranzig maar ook netjes..

.NET maakt je programma idd sneller.. Maar toch nemen sommige pc's aardig de tijd om een console programmaatje uit te voeren. De console vind ik trouwens een geweldige toevoeging aan VB.

En wat snelheid betreft, voor mij was VB6 altijd snel genoeg. Grafische programma's is hij waarschijnlijk te sloom voor. Een downloadprogramma bijvoorbeeld kan wel goed in VB en ik weet eigenlijk ook wel zeker dat hij dan sneller is dan LimeWire.

Maarja, alles wat hierboven gezegd is klopt allemaal natuurlijk wel.

1 ding vind ik toch echt jammer aan het .NET framework:
Had er teminste een nieuwe soort Winsock (zoals de ocx van vb6) ingebouwd. Ik kan het nog steeds niet voor elkaar krijgen om een server voor meerdere clients te programmeren.

(\__/)
(='.'=) Dit is konijn. Zet hem ook in je handtekening
(")_(") zodat hij de wereld verovert.
07-01-2008 12:08:04
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Ikke Offline
De enige echte
******

Berichten: 3.123
Lid sinds: 04-2006
Reputatie: 67
Bericht: #8
RE: Enkele verschillen tussen VB6.0 en VB2005
MRG schreef:1 ding vind ik toch echt jammer aan het .NET framework:
Had er teminste een nieuwe soort Winsock (zoals de ocx van vb6) ingebouwd. Ik kan het nog steeds niet voor elkaar krijgen om een server voor meerdere clients te programmeren.

Ik ben momenteel bezig met een socket class, die aardig werkt zoals winsock... Maar ik weet niet wanneer ik hem helemaal af heb.

- OOP: Make simple things complex to make complex things simple
- Op deze planeet is stompzinnigheid nu eenmaal overvloediger dan zuurstof.
- The most constant factor of software is change
07-01-2008 16:20:37
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
4Advanced Offline
Member
***

Berichten: 134
Lid sinds: 10-2007
Reputatie: 3
Bericht: #9
RE: Enkele verschillen tussen VB6.0 en VB2005
MRG schreef:1 ding vind ik toch echt jammer aan het .NET framework:
Had er teminste een nieuwe soort Winsock (zoals de ocx van vb6) ingebouwd. Ik kan het nog steeds niet voor elkaar krijgen om een server voor meerdere clients te programmeren.

Inderdaad, zie Ikke's post....daar is de socket class voor uitgevonden.... (imports system.net.socket)
1 klasse voor de server, 1 voor de client & een verzamelklasse voor de clients

.Net heeft er juist voor gekozen om de structuur zo open mogelijk te houden.....derhalve ben je vrij om te gaan en staan.... beter dan een ocx ;)

Verder vind ik deze thread nogal knullig ;)
De verschillen zijn enorm, niet meer te vergelijken met vb6.
Ikzelf was een redelijke die-hard in vb6, ook op oop- en grafisch gebied. Het voldeed uitstekend, ook wat betreft snelheid. Velen suggereren dat vb6 niet snel genoeg was.... ach.... dan programmeerden zij waarschijnlijk te veel op het onderste level.... :D

.Net werkt wel vele malen gemakkelijker, niet eenvoudiger maar dat kun je ook niet verwachten van zo'n, inmiddels, professionele taal.
(Dit bericht is het laatst bewerkt op 07-01-2008 om 17:12:14 door 4Advanced.)
07-01-2008 17:06:16
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
MRG Offline
2HoT2HaNdLe
****

Berichten: 362
Lid sinds: 04-2006
Reputatie: 1
Bericht: #10
RE: Enkele verschillen tussen VB6.0 en VB2005
@Ikke:
Ben benieuwd! Je maakt wel een topicje aan als je het af hebt toch?

@4Advanced:
Ik ben nog niet echt ver met .NET, ik weet niet of je het echt moeilijker kunt noemen maar het is wel een beetje een omscholing. Sommige dingen zijn ook veel makkelijker gemaakt, denk aan register (tenzij dat je bij vb6 references-->windows host script object model oid gebruikte) en bestanden openen en schrijven etc. Of om te kijken of je computer internetverbinding heeft. Ik ben nog wel van plan om mijn kennis in VB2005 uit te breiden maar niet van plan om een boek te kopen :P

(\__/)
(='.'=) Dit is konijn. Zet hem ook in je handtekening
(")_(") zodat hij de wereld verovert.
07-01-2008 19:22:43
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Ikke Offline
De enige echte
******

Berichten: 3.123
Lid sinds: 04-2006
Reputatie: 67
Bericht: #11
RE: Enkele verschillen tussen VB6.0 en VB2005
MRG schreef:@Ikke:
Ben benieuwd! Je maakt wel een topicje aan als je het af hebt toch?

Ja, ben dat al een hele poos van plan, maar nog nooit echt de tijd/moeite genomen om het helemaal af te maken. Maar ik zal mss eerdaags het wel posten.
Citaat:@4Advanced:
Ik ben nog niet echt ver met .NET, ik weet niet of je het echt moeilijker kunt noemen maar het is wel een beetje een omscholing. Sommige dingen zijn ook veel makkelijker gemaakt, denk aan register (tenzij dat je bij vb6 references-->windows host script object model oid gebruikte) en bestanden openen en schrijven etc. Of om te kijken of je computer internetverbinding heeft. Ik ben nog wel van plan om mijn kennis in VB2005 uit te breiden maar niet van plan om een boek te kopen :P

vb.net 2008 is ook al uit. En ook weer gratis te downloaden. De verschillen zijn m.i. niet zo erg groot, voornamelijk wat toevoegingen.

- OOP: Make simple things complex to make complex things simple
- Op deze planeet is stompzinnigheid nu eenmaal overvloediger dan zuurstof.
- The most constant factor of software is change
07-01-2008 19:47:14
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
MRG Offline
2HoT2HaNdLe
****

Berichten: 362
Lid sinds: 04-2006
Reputatie: 1
Bericht: #12
RE: Enkele verschillen tussen VB6.0 en VB2005
Is nog beta toch? Er staat ergens dat je programma's maar een bepaalde tijd werken of op een bepaalde datum niet meer werken dacht ik.

Zijn die toevoegingen een beetje nuttig dan?

(\__/)
(='.'=) Dit is konijn. Zet hem ook in je handtekening
(")_(") zodat hij de wereld verovert.
07-01-2008 21:16:25
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Elco Offline
Ep2 Volunteer
****

Berichten: 1.237
Lid sinds: 04-2006
Reputatie: 29
Bericht: #13
RE: Enkele verschillen tussen VB6.0 en VB2005
Sinds 19 november is vs 2008 gereleased. Het is idd nog niet de 'officiele versie', maar de RTM, maar dat betekent in de praktijk eigenlijk de officiele versie zonder dat er een officieel feestje rond geweest is om het te releasen :)

Je kan het hier downloaden (de express versies):
http://www.microsoft.com/express/product/default.aspx

Citaat:De verschillen zijn m.i. niet zo erg groot, voornamelijk wat toevoegingen.
Wacht dan maar tot je Linq, WPF, WCF, WWF, ... leert kennen, dat zijn meer dan zomaar wat toevoegingen! ;)

C#.Net Developer
07-01-2008 22:15:15
De website van deze gebruiker bezoeken Alle berichten van deze gebruiker zoeken Reageren op dit bericht
MRG Offline
2HoT2HaNdLe
****

Berichten: 362
Lid sinds: 04-2006
Reputatie: 1
Bericht: #14
RE: Enkele verschillen tussen VB6.0 en VB2005
Waar blijven die dan? :P Ik kan het zoweizo zelf ook goed gebruiken.

(\__/)
(='.'=) Dit is konijn. Zet hem ook in je handtekening
(")_(") zodat hij de wereld verovert.
07-01-2008 22:30:11
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
4Advanced Offline
Member
***

Berichten: 134
Lid sinds: 10-2007
Reputatie: 3
Bericht: #15
RE: Enkele verschillen tussen VB6.0 en VB2005
Topictitel : Enkele verschillen tussen VB6.0 en VB2005
(Dit bericht is het laatst bewerkt op 08-01-2008 om 12:39:38 door 4Advanced.)
08-01-2008 12:39:03
Alle berichten van deze gebruiker zoeken Reageren op dit bericht
Reactie plaatsen 


Ga naar locatie:


Contact opnemen | Ep2 | Naar boven | Naar inhoud | Archiefmodus | RSS-syndicatie