webForumDet fria alternativet

är vb nåt att ha?

.NET

7 svar · 284 visningar · startad av neversleep

Medlem sedan okt. 2001230 inlägg
Frågan#1

Tjena

Är det en myt att program utvecklade i VB är långsammare än program utvecklade i tex c++ ?
Om så är fallet, märks det verkligen någon skillnad med dagens snabba processorer?

Sedan undrar jag om man kan köra ett vb program skrivet i .net i alla datorer oavsett windows version? Behöver man installera ett ton med runtime filer då eller?

Medlem sedan feb. 20013 023 inlägg
#2

Re: är vb nåt att ha?

neversleep skrev:

Tjena

Är det en myt att program utvecklade i VB är långsammare än program utvecklade i tex c++ ?

nej

neversleep skrev:

Om så är fallet, märks det verkligen någon skillnad med dagens snabba processorer?

det beror på vad ditt program gör, vb har väl vissa områden som är klart svagare än C++. Är det ett enkelt program så kanske skillnaden är helt försumbar.

Medlem sedan juni 20022 599 inlägg
#3

Är det en myt att program utvecklade i VB är långsammare än program utvecklade i tex c++ ?

Ja, du. Frågan är nog inte så enkel som den verkar ..

Först och främst beror det så klart på vilken sorts program man menar. En normal "kontorsapplikation" kanske spenderar det mesta av sin tid med att göra långsamma databasanrop mot en belastad nätverksserver och då har det knappast någon betydelse om resten av koden är oändligt snabb, eller inte.

Nästa problem är hur man definierar "VB". Ett program skrivet i VB gör normalt mängder med anrop mot activeX-dll:er och APIfunktioner som i sin tur anropar lågnivåfunktioner i operativet. All denna "externa" kod är kanske skriven i C/C++. Det är alltså möjligt att ett VB-program bara spenderar en bråkdel av sin "livstid" inne i kompilerad VB-kod. Vad menar man då?

Men trots detta så är möjligheterna att optimera processorintensiv kod så klart större i mer maskinnära språk än i VB. Det är nog ingen tillfällighet att man skriver drivrutiner och operativsystem i C/C++ eller Assembler och inte i VB eller Perl.

Sedan undrar jag om man kan köra ett vb program skrivet i .net i alla datorer oavsett windows version? Behöver man installera ett ton med runtime filer då eller?

För att kunna köra en VB.NET-app så krävs att Framework Redistributable är installerad (funkar på 98:an och uppåt). Denna är ca 20 MB. Om man kallar detta "ett ton med runtime filer" så är svaret: Ja.

Medlem sedan okt. 2001230 inlägg
#4

Tackar niko för ett utförligt svar

en mkt god synpunkt där, att det ibland har mindre betydelse om ett program ej är optimerat till max.

Lite nedslående att det krävs 20mb extra för att kunna köra en mindre applikation på en annan dator. Hade tänkt testa lite .net men nu känns det inte så motiverande längre

Medlem sedan juli 20011 304 inlägg
#5

Bara ett litet förtydligande:
VB och VB.net är två väldigt olika saker i detta sammanhang...

Medlem sedan maj 20023 372 inlägg
#6

Vilka är de reella alternativen till VB utöver Visual C++ ?

Medlem sedan juni 20022 599 inlägg
#7

Lite nedslående att det krävs 20mb extra för att kunna köra en mindre applikation på en annan dator. Hade tänkt testa lite .net men nu känns det inte så motiverande längre

Fast det är väl inte så mycket att orda om i dagens läge? Jämför med andra "run-timer": ActiveState Perl (20MB) , senaste JDK:en (65 MB).

Förresten var det jag skrev inte riktigt sant. 20 MB är storleken på setupen för Framework Redistributable. Vill du kunna utveckla så behöver du Framework SDK:n som är större. Och Studio.NET ska vi inte tala om ..

Medlem sedan juni 20022 599 inlägg
#8

Pellefant skrev:

Vilka är de reella alternativen till VB utöver Visual C++ ?

Det beror ju så klart helt och hållet på sammanhang och syfte. Delphi, Java, Perl, Fox Pro, diverse webgränsnitt, Flash, vad som helst..

VB:s styrka är att det går snabbt och enkelt att skapa grafiska gränssnitt tex databasapplikationer, det finns mängder av färdiga komponenter, mycket exempelkod osv ..

Däremot tror jag inte man ska se Visual C++ som ett alternativ till VB utan tvärtom. Allt man kan göra i VB kan man också göra i Visual C++, men det omvända gäller såklart inte.

I .NET suddas sedan gränserna ut ytterligare: VB.NET, C# och Managed C++ blir funktionellt likvärdiga (nästan) och skiljer sig främst syntaxmässigt. Unmanaged C++ blir kvar som alternativet om man vill göra "lågnivåsaker".

297 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
133 ms — deklarationer (db)
0 ms — hämta statistik (cache)
159 ms — hämta tråd, inlägg och bilagor (db)
136 ms — ändringar (db)