Avatar billede soenderup Nybegynder
01. maj 2002 - 09:40 Der er 23 kommentarer og
1 løsning

Vb.net VS. C#

På vores arbejdsplads skal vi nu slå over i .net

Vi har hidtil programmeret i VBScript, så man skulle mene at vi bør vælge VB.net, men jeg har hørt, at det ligger så langt fra VBScript at det vil være det samme om vi starter på C# eller VB.net. Hvad mener du?

Og hvad med fremtiden, hvad bliver det fortrukne sprog? Jeg tænker mht. hjælp på nettet?

/Steen
Avatar billede Slettet bruger
01. maj 2002 - 09:42 #1
VB.net ligger ikke langt fra VB.
Så hvis i er hjemme i dette sprog så bliv ved med det.
Avatar billede Slettet bruger
01. maj 2002 - 09:43 #2
VB er allerede det store sprog på nettet.
Avatar billede pelkjaer Nybegynder
01. maj 2002 - 09:43 #3
Vælg helt klart CSharp, da det er det "mest kraftfulde" af alle sprog understøttet af asp.NET technologien.

Min egen personlige mening spiller også ind her :)
Avatar billede Slettet bruger
01. maj 2002 - 09:46 #4
"mest kraftfulde"??? Der kan laves det samme med begge sprog.
Avatar billede nute Nybegynder
01. maj 2002 - 09:52 #5
VBScript og VB.NET kan ikke sammenlignes. VB.NEt er et fullverdig objektorientert programmeringsspråk mens VBScript er et script språk.

C# er nok et språk som blir stort...jeg personlig tror ikke at VB.NET kommer til å vokse seg til å nå de helt store høyder.

En av fordelene med å bruke .NET, er at det er 26 (sist jeg kikket) understøttede språk. Det vil si at man kan sitte å kode på samme prosjekt i 26 forskjellige språk, så npr det gjelder hvilket språk dere skal velge, så mener jeg at dere skal skrive i det som dere føler er enklest. Det gir selvfølgelig noen ulemper når man skal "kikke over skulderen" på andre for å hjelpe hvis de sitter og koder i Eiffel.NET når man selv koder i VB.NET.

C++.NET er det mest kraftfulle, mest effektive, men mest besværlige å kode i. C# kjører en smule hurtigere enn VB.NET, men det er neppe en forskjell som man med menneskelige sanser kan registrere.

/nute
Avatar billede pelkjaer Nybegynder
01. maj 2002 - 09:55 #6
Udover hvad ens personlige holdning nu er, så ligger det fast at C# pt. er det meste benyttede sprog i artikler/tutorials ang. asp.NET
Avatar billede jakobandersen Nybegynder
01. maj 2002 - 09:59 #7
nute>
Kan du komme nærmere ind på hvorfor C++ er det mest kraftfulde i .NET Frameworket?
Avatar billede pelkjaer Nybegynder
01. maj 2002 - 10:02 #8
http://safari.informit.com/main.asp?bookname=progcsharp2&snode=8 kunne være interessant i den sammenhæng.
Avatar billede nute Nybegynder
01. maj 2002 - 10:03 #9
moonduck >> vel...egentlig heter med Managed C++.NET.

Det er en etterfølger til C++ som er et utrolig kraftig språk (hvis man kan kode ordentlig i det). Grunnen er at man har *full* kontroll over alt man foretar seg med en computer. Man er blandt annet nødt til å styre minnet til maskinen manuelt. Hvis man sammenligner det med C++, så er det ikke så merkelig at dette språk er mest benyttet til store applikasjoner verdden over. Tilogmed Windows er skrevet i C++...

Jeg kjenner hverken C++ eller C++.NET, men dette er hva jeg har lest meg til.

/nute
Avatar billede jakobandersen Nybegynder
01. maj 2002 - 10:13 #10
nute> Jeg har bare svært ved at tro at Managed C++ skulle være hurtigere (performancemæssigt) end c# da c# jo er skrevet med Framework liggende i baghovedet hvorimod Managed C++ "blot er en opgradering" af C++.

Og med min viden om Managed C++ går hele ideen jo af .NET frameworket hvor hovedtanken er en højere produktivitet for udvikleren, og den ydede produktivitet har jeg svært ved at se i Managed C++ ligegyldigt hvor godt man kender C++.
Avatar billede pelkjaer Nybegynder
01. maj 2002 - 10:18 #11
moonduck skriver>>"da c# jo er skrevet med Framework liggende i baghovedet"

Præcis! Det jeg har læst mig til, er at C# ER det mest kraftfulde af alle understøtttede sprog. Netop fordi det er skrevet specielt til .NET Frameworket. De andre naturligt understøttede sprog er blot optimerede sprog, hvorfor nogle avancerede funktioner ikke her er understøttet. Et konkret eksempel kan jeg dog ikke give.
Avatar billede jakobandersen Nybegynder
01. maj 2002 - 10:25 #12
pelkjaer> Man kan nok ikke sige at der er nogle avancerede funktioner der ikke er understøttet i VB.NET som der er i C# de har jo adgang til de samme klasser og basalt set de samme funktioner. Forskellen ligger i Syntax og her kan jeg umiddelbart ikke se nogle begrænsninger.

Jeg tror mere det er performancemæssigt at C# vinder.
Avatar billede pelkjaer Nybegynder
01. maj 2002 - 10:28 #13
Som sagt kan jeg ikke give noget eksempel da jeg ikke er super rutineret i csharp endnu, og slet ikke kender til vb.net

Men ikke desto mindre er påstanden taget fra en wrox bog om asp.net (using c#).
Avatar billede nute Nybegynder
01. maj 2002 - 11:06 #14
moonduck >> Managed C++ (MC++) er hurtigere enn C# fordi output'et blir optimert.

Som når man sammenligner alle prog språk, så bør det heller ikke være noen tvil i denne sammenheng om at et språk har sine styrker og svakheter. Noen ting kjører raskere i C# mens andre ting kjører raskere i VB.NEt, men overall, så har MC++ et lite overtak på den generelle performance.

Performance til de språk som er understøttet i .NET kommer nærmest ene og alene an på hvordan de respektive compilere er skrevet. Dette kan relateres til hvor lenge en compiler har vært under utvilking. Compilere til C++ har eksistert i "100 år", mens compilere til C# og VB.NET ikke har vært på banen i mer enn 6-7 år (høyst).

Og som jeg skrev tidligere...MC++ *er* vanskelig å skrive i...det *er* et tungt språk, så produktiviteten i dette språk kan ikke sammenlignes med produktiviteten i fx. C#.

Det er også nærliggende å tro at siden .NET frameworket er skrevet i C#, så er det dette språk som er det raskeste. Men for å dra en liten (merkelig) analogi til den virkelige verden...kun fordi en person er født i et land, gjør ham ikke til en språklig "guru". Jeg har faktisk mødt engelskmenn som snakket dårligere engelsk enn meg. Hvorfor ? Well...fordi engelsk var et av mine beste fag på skolen, og jeg var interessert i alt som hadde med england å gjøre. Ham jeg møtte var ikke særlig kvikk og han var likeglad med hvordan han snakket. "han var jo engelsk" ;-) Analogien her går nettopp på det jeg skrev litt lenger oppe...jeg hadde mer erfaring (utdannelse) i engelsk enn engelskmannen på lik linje som man har mer erfaring med å bygge compilere til C++ fremfor andre understøttede språk til .NET.

Igjen...dette er *kun* noe jeg har lest meg til, og ikke ressonnert meg frem til på egen hånd. Jeg siterer fordi det er logisk (i mine øyne) og jeg argumenterer ut fra det grunnlag.

/nute
Avatar billede nute Nybegynder
01. maj 2002 - 11:18 #16
fornuftig artikkel...selv om den er skrevet til beta versjonene...;-)
Avatar billede jakobandersen Nybegynder
01. maj 2002 - 11:22 #17
Det er en af de mest objektive jeg har set :-)
Avatar billede pelkjaer Nybegynder
01. maj 2002 - 11:23 #18
Omend meget diplomatisk :)
Avatar billede sbhansen Nybegynder
01. maj 2002 - 12:19 #19
Jeg vil mene at valget bliver helt op til den enkelte. Har man stor erfaring med Java vil jeg afgjort vælge C#. Syntaksen for de 2 sprog er nærmest identisk med Interface-formulering, brackets osv. Kender man derimod meget til VB/VBA vil jeg vælge VB.NET. Igen ud fra argumentationen omkring syntaks, dvs. formuleringen af koden. Performancemæssigt vil jeg sige, at man skal meget langt ud i yderligheder, for at opleve forskel. Begge sprog oversættes til Common-language, som vel kan siges at være et semi-kompileret sprog. Oversættelsen er identisk, uanset hvilket sprog du skriver i, og derfor vil performance også være identisk.

Men jeg giver også ret i de kommentarer, der går på at VB og VB.NET ikke er identiske - som det er anført, så er VB.NET helt og holdent objektorienteret. Så uanset valget af sprog, så start med at få en sikker forståelse for Objektorienteret tankegang.

/Søren
Avatar billede sbhansen Nybegynder
01. maj 2002 - 12:22 #20
for ovenstående - hjælpen på nettet har jeg fundet stort set lige veldokumenteret på begge sprog, hidtil... (Sorry - havde ikke nærlæst spm). Men jeg vil så dog sige, at uanset hvilket sprog du læser din "hjælp" på - så kan man meget nemt omsætte dette til det et andet sprog, hvis man blot har kigget en enkelt eller 2 bøger igennem til området. Så jeg vil bestemt ikke vælge sprog ud fra hjælpens formuleringer på nettet, men egne præferencer og erfaringer..!
/Søren
Avatar billede nute Nybegynder
01. maj 2002 - 12:26 #21
sbhansen >> "Oversættelsen er identisk, uanset hvilket sprog du skriver i, og derfor vil performance også være identisk". Så det du påstår er at alle compilere oversetter til MSIL 100% identisk ?? Tilogmed den artikkel som er postet av moonduck stiller spørsmålstegn med nettopp dette. Min påstand tidliger om at det avhenger av compileren blir understøttet

<snip>
As for the speed of items such as loops and string concatenation, that will depend on the compiler
</snip>

En annen ting er at det blir stilt spørsmålstegn til at alle språk er like hurtige:

<snip>
Microsoft officials say VB .NET and C# will compile to the same IL, so the result will be the same speed. I must admit I'm skeptical, but there is no way to test this at this time.
</snip>

Tester utført av teamet bak boken "Professional ASP.NET 1.0" (som er skrevet ut fra final versjon, "beviser" at C# er ca 5% raskere enn VB.NET og MC++ er en smule raskere enn C# igjen.

/nute
Avatar billede odegaard Nybegynder
01. maj 2002 - 20:17 #22
Lad mig lige sætte en ting fast: Der er INGEN forskel på VB.NET og C# ! (bortset fra syntax) De kalder de samme biblioteker, de compiles til det samme intermediate code, metoder og funktioner er de samme osv osv osv osv.
Hele .NET frameworket er netop bygget op således at du kan "opbygge" din eget syntax til frameworket som kalder de samme funktioner. Det er netop dette der er sket med VB, C++, Java, Perl osv osv. Man har lavet en syntax-fortolker der kalder DLL'erne der hører til .NET frameworket.

I starten var VB.NET det klart mest dokumenterede sprog på nettet, men C# er efterhånden ved at overtage. Alle de andre sprog er meget lidt dokumenterede. Så jeg vil sige; Vælg det sprog som minder mest om det du er vant til (af de to nævnte).
Og finder du et eksempel på nettet skrevet i det andet sprog, så kræver det ikke en særlig høj IQ at oversætte det til sit eget.
Avatar billede nute Nybegynder
01. maj 2002 - 20:28 #23
tja...dette kommer nok til å utvikle seg til samme type evighetsdiskusjon ála den som utløses når en eller annen vil vite hvordan man disabler høyre klikk på sin webside.

Det kommer *alltid* til å være noen som mener det ene, og noen andre som mener noe annet. Spørsmålet er vel hvem man velger å tro på til sist.

/nute
Avatar billede jakobandersen Nybegynder
03. maj 2002 - 17:19 #24
Jeg har lige læst lidt op på emnet bragt op i denne diskussion og faktisk taber VB.NET ansigt når man undersøger det nærmere, men kun i visse tilfælde.

F.eks. kan man i VB.NET bruge "On Error Resume Next" og caseinsensetiv sammenligning disse ting gør at VB.NET i nogle tilfælde performer dårligere men man kan jo blot styre uden om disse ting som er et levn fra VB6. Eller sagt på en anden måde VB.NET er i nogle situationer langsommere da der er en hvis tilbagekompabilitet at tage højde for(Det har C# som sådan ikke) Og generelt bruger VB.NET ca. 5% ekstra kraft på at opretholde denne tilbagekompabilitet som primært skyldes ramallokeringen af Microsoft.VisualBasic.dll

Men stadig er en 5% jo ikke højere en fejlmarginen i almindelig eksekvering så derfor ingen grund til at råbe vagt i gevær.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester