Varför existerar Visual Basic.NET när C# finns?

Permalänk

Varför existerar Visual Basic.NET när C# finns?

Jag har aldrig riktigt förstått det där med Microsofts egna språk. C# sägs vara den "bästa" språket idag om man ska göra program. Java och C++ känns mer som utgående, definitivt C++. Då är det kanske lika bra att lära sig C om man ska koda svarta MS-DOS rutor eller styra hårdvara.

Men Microsoft gör inte bara ett språk, utan flera...J#, F#, C#, VB.NET, C++.NET.

Men varför existerar just Visual Basic.NET. Är inte det ett skitspråk att lära sig? Man kan knappt göra appar och det är knappast plattformsportabelt som C# är där man kan köra C# i Windows, Machintosh och Linux.

Så förklara för mig varför jag ska välja Visual Basic.NET istället för C#?
Vad är syftet med Visual Basic.NET? Att det ska vara just enklare?

Permalänk
Medlem
Skrivet av heretic16:

Jag har aldrig riktigt förstått det där med Microsofts egna språk. C# sägs vara den "bästa" språket idag om man ska göra program. Java och C++ känns mer som utgående, definitivt C++. Då är det kanske lika bra att lära sig C om man ska koda svarta MS-DOS rutor eller styra hårdvara.

Men Microsoft gör inte bara ett språk, utan flera...J#, F#, C#, VB.NET, C++.NET.

Men varför existerar just Visual Basic.NET. Är inte det ett skitspråk att lära sig? Man kan knappt göra appar och det är knappast plattformsportabelt som C# är där man kan köra C# i Windows, Machintosh och Linux.

Så förklara för mig varför jag ska välja Visual Basic.NET istället för C#?
Vad är syftet med Visual Basic.NET? Att det ska vara just enklare?

Vad jag vet så har mer eller mindre alla språk ett syfte. När det gäller Visual Basic.NET så handlar det huvudsakligen om att det var viktigt att hålla sig bakåtkompatibel med alla de applikationer som faktiskt byggdes i Visual Basic.

Visual Basic har från börjat varit ett lättare språk att ta sig in i och visst kan man tycka att syntaxen i vissa fall kan uppfattas som enklare för nybörjare men allmänna rekommendationer idag är att välja C#.

C används mycket in inbyggda system och har därför en större roll än vad man kan tänka sig. C++ har "fördelen" att vara objektorienterad och kan också finnas i en del inbyggda system.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk
Skrivet av Neon:

Vad jag vet så har mer eller mindre alla språk ett syfte. När det gäller Visual Basic.NET så handlar det huvudsakligen om att det var viktigt att hålla sig bakåtkompatibel med alla de applikationer som faktiskt byggdes i Visual Basic.

Visual Basic har från börjat varit ett lättare språk att ta sig in i och visst kan man tycka att syntaxen i vissa fall kan uppfattas som enklare för nybörjare men allmänna rekommendationer idag är att välja C#.

C används mycket in inbyggda system och har därför en större roll än vad man kan tänka sig. C++ har "fördelen" att vara objektorienterad och kan också finnas i en del inbyggda system.

Fast som jag har hört så är C++ lite "overkill" när det handlar om inbyggda system.

Men åter till Visual Basic.NET.
Jo, det ser enkelt ut. Men är inte Visual Basic.NET som man kan skapa hemsidor typ som Visual Basic.NET vore typ PHP språk?

Permalänk
Hedersmedlem
Skrivet av heretic16:

Jag har aldrig riktigt förstått det där med Microsofts egna språk. C# sägs vara den "bästa" språket idag om man ska göra program. Java och C++ känns mer som utgående, definitivt C++. Då är det kanske lika bra att lära sig C om man ska koda svarta MS-DOS rutor eller styra hårdvara.

Men Microsoft gör inte bara ett språk, utan flera...J#, F#, C#, VB.NET, C++.NET.

Men varför existerar just Visual Basic.NET. Är inte det ett skitspråk att lära sig? Man kan knappt göra appar och det är knappast plattformsportabelt som C# är där man kan köra C# i Windows, Machintosh och Linux.

Så förklara för mig varför jag ska välja Visual Basic.NET istället för C#?
Vad är syftet med Visual Basic.NET? Att det ska vara just enklare?

Vad är det för fel att erbjuda folk valfrihet?

Så som .NET är uppbyggt så är det ingen skillnad på ett C# och ett VB.Net program när det väl är kompilerat. Så att VB.Net skulle vara ett sämre språk i den meningen att man inte kan göra allt är inte sant. Det är precis lika portabelt osv som ett C# program. Alla .Net språk körs i en VM, dvs samma modell som tex Java använder. Vill man lägga till en ny plattform så skriver man en ny VM för den plattformen.

Jag tycker inte att du ska välja VB.Net framför C#. Det är en betydligt större merit på arbetsmarknaden att kunna C# än att kunna VB.Net. Men om du själv tycker att VB.Net verkar intressant tycker jag att du ska prova det. Intresse är en mycket bra start för att lära sig något.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Skrivet av giplet:

Vad är det för fel att erbjuda folk valfrihet?

Så som .NET är uppbyggt så är det ingen skillnad på ett C# och ett VB.Net program när det väl är kompilerat. Så att VB.Net skulle vara ett sämre språk i den meningen att man inte kan göra allt är inte sant. Det är precis lika portabelt osv som ett C# program. Alla .Net språk körs i en VM, dvs samma modell som tex Java använder. Vill man lägga till en ny plattform så skriver man en ny VM för den plattformen.

Jag tycker inte att du ska välja VB.Net framför C#. Det är en betydligt större merit på arbetsmarknaden att kunna C# än att kunna VB.Net. Men om du själv tycker att VB.Net verkar intressant tycker jag att du ska prova det. Intresse är en mycket bra start för att lära sig något.

Jag har kommit in på Visual Basic.NET och C#.NET, men jag har bara tid för en datakurs.
Jag utbildar mig till maskiningenjör och då är det inte fel att kunna ett programeringsspråk för just problemlösning t.ex ekonomisk kalkyl.

Jag har inte tänkt och köra spel eller bad ass program så som Visual Studio eller Skype.

Permalänk
Hedersmedlem
Skrivet av heretic16:

Jag har kommit in på Visual Basic.NET och C#.NET, men jag har bara tid för en datakurs.
Jag utbildar mig till maskiningenjör och då är det inte fel att kunna ett programeringsspråk för just problemlösning t.ex ekonomisk kalkyl.

Jag har inte tänkt och köra spel eller bad ass program så som Visual Studio eller Skype.

Häver du bara ur dig ord som du snappat upp här och där eller? För att komma igång så lätt som möjligt med ditt programmerande så behöver du förmodligen använda ett IDE. Visual Studio är ett av dem som är vanligt förekommande och finns även i en gratisvariant, Visual Studio Express. Jag rekommenderar dig verkligen att använda ett IDE så att du kan komma igång snabbt.

Jag ser inte riktigt kopplingen mellan VB.Net/C# och ekonomisk kalkyl. Då kanske du snarare skulle lära dig något program för det, tex R, Matlab eller kanske till och med bara att skriva macron i Excel. Du behöver göra mycket fotarbete innan du kan komma igång med några mer avancerade kalkyler om du använder VB.Net/C#, såsom hur få in och hantera data i ditt program osv. Det är ingenting man hinner lära sig på en 5p kurs.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Medlem
Skrivet av heretic16:

Fast som jag har hört så är C++ lite "overkill" när det handlar om inbyggda system.

Bror helt på vad du ska göra

Skrivet av heretic16:

Men åter till Visual Basic.NET.
Jo, det ser enkelt ut. Men är inte Visual Basic.NET som man kan skapa hemsidor typ som Visual Basic.NET vore typ PHP språk?

Du har inte funderar på att läsa på lite mer om hur .NET fungerar om du nu har intresse inom det? Under .NET kan man använda flertalet av språken till att utveckla för olika ända mål, d.v.s C# och VB.NET kan båda användas för att utveckla WPF, WinForm och ASP.NET (Webform/MVC) (Websidor) o.s.v o.s.v. Allt handlar om att tillämpa rätt komponenter för rätt ändamål.

Skrivet av heretic16:

Jag har kommit in på Visual Basic.NET och C#.NET, men jag har bara tid för en datakurs.
Jag utbildar mig till maskiningenjör och då är det inte fel att kunna ett programeringsspråk för just problemlösning t.ex ekonomisk kalkyl.

Jag har inte tänkt och köra spel eller bad ass program så som Visual Studio eller Skype.

Heter det verkligen datakurs? I vilket fall som helst så är alltid första steget att lära sig grunderna inom programmering, när man har koll på det så väljer man ett språk som passar. De flesta språk är "relativt" lika så när du väl kan ett så är det mycket lättare att lära sig de andra. Oftast handlar det om liknande kommandon med liknande egenskaper.

Så gott som all utveckling går ut på problemlösning, vilket språk du väljer beror på vad du ska göra och vad du känner dig mest hemma med.

Ekonomiska kalkyler låter mer som något du skulle göra i Excel eller något åt det hållet, detta kallar jag inte programmering(även om jag vet att andra gärna gör det).

Fundera ut vad det är för mål du vill ha och titta på vad som passar dig bäst. Men om det verkligen är en kurs i VB.NET och C# så hade jag utan tvekan valt C# efter som det har ett MYCKET starkare fäste på marknaden. Visst kan det uppfattas som något svårare men ska du bli maskiningenjör så lär du inte behöva oroa dig över svårigheten.

Lycka till med valet.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk

Visst kunde man inte göra hemsidor med Visual Basic?

Permalänk

Så om jag gör ett GUI program i Windows 8.1 med VB....det då i Ubuntu Linux då om jag har Mono?

Permalänk
Hedersmedlem
Skrivet av Neon:

När det gäller Visual Basic.NET så handlar det huvudsakligen om att det var viktigt att hålla sig bakåtkompatibel med alla de applikationer som faktiskt byggdes i Visual Basic.

Fast hoppet mellan vb6 och visual basic.net var ju inte direkt litet? Så mycket svårare skulle det väl inte ha varit för alla att gå över till c# om microsoft hade valt att förespråka det istället...

Skrivet av heretic16:

Så om jag gör ett GUI program i Windows 8.1 med VB....det då i Ubuntu Linux då om jag har Mono?

Det bör fungera (i alla fall för äldre versioner av .net).

Permalänk
Medlem
Skrivet av heretic16:

Visst kunde man inte göra hemsidor med Visual Basic?

Nej, inte vad jag känner till, varför pratar om förresten om Visual Basic? Det är ett språk som inte Microsoft själva ens har supportat på väldigt många år.

Skrivet av heretic16:

Så om jag gör ett GUI program i Windows 8.1 med VB....det då i Ubuntu Linux då om jag har Mono?

Jag vet inte hur flexibelt Mono är idag men för ett par år sen så var det inget man rekommenderade för större program. Men som sagt, det var ett par år sen jag tittade på det. Vill du köra mer eller mindre plattformsoberoende så är det troligen Java du eller Web du ska titta på.

Skrivet av Elgot:

Fast hoppet mellan vb6 och visual basic.net var ju inte direkt litet? Så mycket svårare skulle det väl inte ha varit för alla att gå över till c# om microsoft hade valt att förespråka det istället...

Steget till det nya biblioteket var stort men en hel del av syntaxen var hämtad från VB6 till VB.NET. VB.NET var vad jag förstod endast till för att få över de utvecklare som satt fast i VB6 till .NET plattformen. Att gå från VB6 till C# är ett bra mycket större steg då syntaxen i C# påminner mer om C++. Jag håller dock med om att C# är ett självklart val av många anledningar. Jag kommer ihåg att jag började jobba på ett projekt där de kört med VB6 i många år, de skulle gå över till .NET och självklart valde utvecklarna VB.NET för den lika syntaxen. Som tur var lyckades jag övertala dem till att välja C# istället vilket de verkar vara nöjda med än idag.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk

Vad jag vet skapade Microsoft VB.Net för att gamla VB-programmerare inte skulle behöva byta språk och lätta kunna göra en transition till den nya .Net plattformen. De gjorde samma sak när de erbjöd Metro-appar i både XAML/C# och HTML/Javascript så att webutvecklare lättare skulle kunna komma in i Windowsutveckling. Microsoft är väldigt beroende av att många skriver program till deras plattform. Detta brukade vara ett av de starkaste argumenten varför man skulle skaffa Windows, alla program fanns ju där, något som fortfarande gäller för spel. Sen misstänker jag att de blev lite carried away iom introduktionen av CIL (Common Intermediate language) som alla .Net språk översätts till, som gör det väldigt lätt att skapa nya språk som alla kan köras på samma plattform och använda samma bibliotek. Om det är billigt att göra nya språk är det lätt att tänka "varför inte?"

Många tycker VB.Net har lite funky syntax men jag tror det beror till stor del på att man är så van vid C syntax som är överallt. Jag rekommenderar ändå att inte lära dig VB.Net utan istället satsa på C# vilket är språket du men allra störst sannolikhet kommer att jobba med om du ska jobba med .Net.

F# är oxå kul om du gillar .Net och ett bra komplement till C# eftersom det är funktionellt istället för objektorienterat. Alla bör ha provat minst ett funktionellt språk.

Permalänk
Medlem
Skrivet av heretic16:

Visst kunde man inte göra hemsidor med Visual Basic?

Förstår inte varför man skulle vilja göra en hemsida i VB

Skrivet av heretic16:

Så om jag gör ett GUI program i Windows 8.1 med VB....det då i Ubuntu Linux då om jag har Mono?

Mono funkar okej men många undviker det och alla program skrivna med VB eller C# som en stinkande brun korv i mitten i rummet.

Lär dig istället att använda rätt verktyg och rätt språk för rätt ändamål. Vill du arbeta med multiplatform ta en titt på Qt

Sedan skulle jag inte kalla C/C++/Java för utgående.

Visa signatur

Arch - Makepkg, not war -||- Gigabyte X570 Aorus Master -||- GSkill 64GiB DDR4 14-14-15-35-1T 3600Mhz -||- AMD 5900x-||- Gigabyte RX6900XT -||- 2x Adata XPG sx8200 Pro 1TB -||- EVGA G2 750W -||- Corsair 570x -||- O2+ODAC-||- Sennheiser HD-650 -|| Boycott EA,2K,Activision,Ubisoft,WB,EGS
Arch Linux, one hell of a distribution.

Permalänk

Jag tror jag laddar ned Visual Basic 2010 Express.
Det blir inget C# för mig.

Jag grundar detta på:
* Jag ska utbilda mig till maskiningenjör.
* Jag ska inte göra spel
* Jag ska inte göra stora program
* Jag ska mest kunna lösa maskiningenjörsproblem med enkelt språk
* Jag kan redan C.
* Jag bygger inbyggda system med Arduino som kan kontrolleras med VB.NET
* Jag har andra studier som jag måste göra.
* Visual Basic.NET är enkelt språk jämfört med C#

Permalänk
Medlem
Skrivet av heretic16:

Jag tror jag laddar ned Visual Basic 2010 Express.
Det blir inget C# för mig.

Jag grundar detta på:
* Jag ska utbilda mig till maskiningenjör.
* Jag ska inte göra spel
* Jag ska inte göra stora program
* Jag ska mest kunna lösa maskiningenjörsproblem med enkelt språk
* Jag kan redan C.
* Jag bygger inbyggda system med Arduino som kan kontrolleras med VB.NET
* Jag har andra studier som jag måste göra.
* Visual Basic.NET är enkelt språk jämfört med C#

Välj det som du känner passar dig bäst, tänk bara på att om du får för dig att gå över till C# senare så lär du blanda ihop dem en hel del under en period. C# är dessutom enklare att hitta hjälp och exempel på vilket faktiskt kan göra utveckling med C# enklare.

Men som sagt, välj det som känns rätt för dig och den miljö du planerar att jobba i.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk
Medlem
Skrivet av heretic16:

Visst kunde man inte göra hemsidor med Visual Basic?

VB.net + ASP.net går det att göra hemsidor med.

http://www.asp.net/web-pages/overview/getting-started/introdu...

Jag skulle välja C# över VB.net.

Permalänk
Medlem
Skrivet av heretic16:

Jag har aldrig riktigt förstått det där med Microsofts egna språk. C# sägs vara den "bästa" språket idag om man ska göra program. Java och C++ känns mer som utgående, definitivt C++. Då är det kanske lika bra att lära sig C om man ska koda svarta MS-DOS rutor eller styra hårdvara.

Fast allt du säger är ju antingen rakt av fel eller endast din (något oinformerade) åsikt. C++ kommer finnas kvar en lång tid framöver eftersom många stora datorspel är designade i det. Det fyller en nisch som inget annat språk riktigt kan fylla, ännu. Det kommer onekligen den dag då det inte längre kommer behövas, men det är inte idag eller om 5 år.

Vad är "bäst" för något? Det ordet känns som något man använde som barn, faktiskt - innan man upptäckte att saker och ting kan vara bra för olika saker. Något som är bäst för mig kanske är sämst för dig. C# är t.ex. direkt olämpligt om du ska skriva prestandakrävande kod i tighta loopar. Det är heller inte helt crossplatform, vilket du felaktigt antyder. Mono stöder t.ex. inte WPF och vissa async funktioner.

Att man endast kodar svarta MS-DOS rutor med C eller C++ säger väl en del om din kunskap. Eller att Java (som är en av de mest använda språken iomed Android) skulle vara utgående. Humor.

Permalänk
Medlem
Skrivet av heretic16:

Så om jag gör ett GUI program i Windows 8.1 med VB....det då i Ubuntu Linux då om jag har Mono?

Kanske, men det är inte garanterat. Om du vill programmera program som inte bara fungerar på windows så ska du undvika alla språk i .Net-familjen.

Visa signatur

C>++

Permalänk
Datavetare

VB.Net existerar därför att när Microsoft 2002 bestämde sig för att inte fortsätta utveckla "gamla" VB så dödade man då det språk som hade klart mest aktiva användare av något då existerande programspråk. Med tanke på att VB även var helt bundet till Windows så undrar man ju hur man affärsmässigt kom fram till att det beslutet var vettigt. Gissar att MS förutsatte att .Net/C# skulle få samma ställning, men C# har aldrig varit nära att ha lika stor andel av användarna som VB en gång hade.

Även i dag lever "gamla" VB kvar i form av VBA (Visual Basic for Applications) och räknat i antal användare skulle jag tippa att VBA har minst lika många användare som alla .Net språk ihop. Kort och gott, användarbasen för VB är större än man kanske tror. Verkar däremot väldigt svårt att få något som helst grepp om hur pass populärt VB.Net är som språk, vare totalt eller relativt C#, ett antagande skulle ju var att det pekar på att VB.Net inte används i någon signifikant utsträckning.

Personligen tycker jag att .Net aldrig riktigt lyckades ersätta VB fullt ut. VB användes väldigt sparsamt i "back-end" (servers) även om det förekom, är ju här som .Net (och framförallt Java) blivit totalt dominerade. Men VB fungerade även riktigt bra för att göra relativt komplicerade GUI-applikationer och det hade en smidig integration till COM vilket gjorde VB enkelt att kombinera med C++, GUI hanterades av VB och beräkningar i C++. Visst kan man göra GUI-applikationer i .Net, men samma GUI-drivna program i VB6 och i .Net kommer vara rejält mycket mer RAM-hungrigt under .Net.

Vad det gäller trender och storlek på programspråk så verkar C# ha en fallande popularitet, enligt de webbplatser som försöker utröna användning och popularitet av språk. Inte helt oväntat med tanke på att C# inte finns på någon populär mobilplattform och MS själva valt att prata väldigt mycket JavaScript, TypeScript och C++ de två senaste Build-konferenserna. WinRT (APIet) har man också pushat en hel del och det är ett C++ API där det mesta även går att nå via C# och JS/TS via s.k. "language bindings".

Ska man gå efter språk som verkar vara inne i en positiv trend så verkar JavaScript vara det givna valet idag (klart intressant att JS nu blir så populärt med tanke på hur länge språket funnits), Microsoft TypeScript (som kompileras till JS) är också riktigt intressant. Ska man gå efter vad som har störst användarbas är det Java och C (är i.o.f.s. väldigt beroende på område, men i någon form av genomsnitt) som verkar toppa listorna.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

VB.Net existerar därför att när Microsoft 2002 bestämde sig för att inte fortsätta utveckla "gamla" VB så dödade man då det språk som hade klart mest aktiva användare av något då existerande programspråk. Med tanke på att VB även var helt bundet till Windows så undrar man ju hur man affärsmässigt kom fram till att det beslutet var vettigt. Gissar att MS förutsatte att .Net/C# skulle få samma ställning, men C# har aldrig varit nära att ha lika stor andel av användarna som VB en gång hade.

Även i dag lever "gamla" VB kvar i form av VBA (Visual Basic for Applications) och räknat i antal användare skulle jag tippa att VBA har minst lika många användare som alla .Net språk ihop. Kort och gott, användarbasen för VB är större än man kanske tror. Verkar däremot väldigt svårt att få något som helst grepp om hur pass populärt VB.Net är som språk, vare totalt eller relativt C#, ett antagande skulle ju var att det pekar på att VB.Net inte används i någon signifikant utsträckning.

Personligen tycker jag att .Net aldrig riktigt lyckades ersätta VB fullt ut. VB användes väldigt sparsamt i "back-end" (servers) även om det förekom, är ju här som .Net (och framförallt Java) blivit totalt dominerade. Men VB fungerade även riktigt bra för att göra relativt komplicerade GUI-applikationer och det hade en smidig integration till COM vilket gjorde VB enkelt att kombinera med C++, GUI hanterades av VB och beräkningar i C++. Visst kan man göra GUI-applikationer i .Net, men samma GUI-drivna program i VB6 och i .Net kommer vara rejält mycket mer RAM-hungrigt under .Net.

Vad det gäller trender och storlek på programspråk så verkar C# ha en fallande popularitet, enligt de webbplatser som försöker utröna användning och popularitet av språk. Inte helt oväntat med tanke på att C# inte finns på någon populär mobilplattform och MS själva valt att prata väldigt mycket JavaScript, TypeScript och C++ de två senaste Build-konferenserna. WinRT (APIet) har man också pushat en hel del och det är ett C++ API där det mesta även går att nå via C# och JS/TS via s.k. "language bindings".

Ska man gå efter språk som verkar vara inne i en positiv trend så verkar JavaScript vara det givna valet idag (klart intressant att JS nu blir så populärt med tanke på hur länge språket funnits), Microsoft TypeScript (som kompileras till JS) är också riktigt intressant. Ska man gå efter vad som har störst användarbas är det Java och C (är i.o.f.s. väldigt beroende på område, men i någon form av genomsnitt) som verkar toppa listorna.

Har du någon fakta som styrker allt detta eller är det din egen erfarenhet? Många gånger lever man i en miljö som kan ge en uppfattningar som inte är helt riktiga.

Under de år jag jobbat med C# och VB.NET så har det alltid varit mycket enklare att hitta hjälp baserat på C# dessutom är arbetsmarknaden bra mycket större så jag skulle själv säga att C# är bra mycket större än VB.NET men jag har inte ens börjat titta på någon statistik än. Dessutom kan man inte titta på bara webspråk för där vet vi att ASP.NET är långt ifrån störst, C# och VB.NET används dock i väldigt hög grad för andra typer av program, vilket språk tror du används mest för desktop lösningar i Windows (som trotts allt är det största operativsystemet)?

Skulle vara intressant med lite handfast och ofärgad statistik på hur det verkligen ligger till.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk
Datavetare

Vad det gäller programspråks vara eller icke vara i framtiden så är Java rätt bombsäkert, det är vår tids Cobol...

C (som såg dagens ljus tidigt 70-tal) och C++ (tidigt 80-tal) har fått ökat intresse tack var att det böjar gå upp för många att det inte kommer finnas några enkla lösningar för att effektivt skriva program för dagens multi-core CPUer. För vissa typer av problem kan man använda ganska många olika språk, men finns en lång rad områden där C och C++ är de enda CPU-oberoende språk där man har den kontroll som behövs för att skriva program som effektivt drar nytta av många CPU-kärnor.

Väldigt lite hände i standarderna för båda dessa språk under lång tid (första ISO standard för C var 89, för C++ var det 98), C-standaren har uppdaterats 89, 99, 11, 14. För C++ var det 98, 03, 11, 14. För i alla fall C++ förväntar man sig en uppdatering var 2-3:e år framöver, så det är ett språk som vaknat lite ur en dvala. Microsoft är nog det företag som internt har stört användning av C++, vilket bl.a. syns i deras stora engagemang kring standardiseringsarbetet. Det leds av Herb Sutter som också är en av huvudarkitekterna kring C++ delen i Visual Studio.

Vad som hänt i standarderna från 11 och 14 är stenhårt fokus på att få in saker som är relevant för multicore programmering. Ett exempel är att i dessa språk kan man numera beskriva vilka garantier man måste ha på sina variabler och det översätts sedan till det mest effektiva sättet att göra det på varje specifik CPU-arkitektur. Java och C# är väldigt trubbiga här, endera ger man inga garantier för konsistens mellan CPU-kärnor ("vanliga" variabler) eller så ger man starkast möjliga garanti vilket ändå fungerar hyfsat på x86 (och SPARC, vilket nog var vad SUN optimerade Java för) men blir ofta väldigt ineffektivt på ARM/PowerPC/MIPS.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Datavetare
Skrivet av Neon:

Har du någon fakta som styrker allt detta eller är det din egen erfarenhet? Många gånger lever man i en miljö som kan ge en uppfattningar som inte är helt riktiga.

Under de år jag jobbat med C# och VB.NET så har det alltid varit mycket enklare att hitta hjälp baserat på C# dessutom är arbetsmarknaden bra mycket större så jag skulle själv säga att C# är bra mycket större än VB.NET men jag har inte ens börjat titta på någon statistik än. Dessutom kan man inte titta på bara webspråk för där vet vi att ASP.NET är långt ifrån störst, C# och VB.NET används dock i väldigt hög grad för andra typer av program, vilket språk tror du används mest för desktop lösningar i Windows (som trotts allt är det största operativsystemet)?

Skulle vara intressant med lite handfast och ofärgad statistik på hur det verkligen ligger till.

Skriver ju exakt det: har ingen aning om hur populärt VB.Net är och det är inte lätt att hitta något kring hur det står sig globalt eller relativt C#.

Något exakt statistik lär man aldrig hitta, dels går det att diskutera vad man ska mäta dels så går det inte att samla in statistiken då det inte finns något ställe där alla "anmäler" vad de använder och hur mycket de använder något.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

Skriver ju exakt det: har ingen aning om hur populärt VB.Net är och det är inte lätt att hitta något kring hur det står sig globalt eller relativt C#.

Något exakt statistik lär man aldrig hitta, dels går det att diskutera vad man ska mäta dels så går det inte att samla in statistiken då det inte finns något ställe där alla "anmäler" vad de använder och hur mycket de använder något.

Det betyder egentligen att du baserar din information på hur du uppfattar verkligheten och hur väl detta verkligen stämmer beror på många saker. Ex hur aktiv utvecklare är man, tittar man intresserat på flera språk, bytar man jobb ofta? Jobbar man inom olika platformar ofta o.s.v

Jag kan erkänna att jag jobbar själv väldigt slutet inom .NET världen men man rör sig ändå hel del del ute på nätet, dels för att följa vad som händer men även för att hjälpa eller hitta hjälp inom olika sektioner.

Min bild är att JAVA är klart störst, troligen främst på grund av dess multi platform stöd. Jag har jobbar på ett par projekt med Java och kan konstatera att multi platform stödet är långt ifrån självklart men har man huvudet med sig och gör mindre anpassningar så kan man få det till att fungera okay.

När det gäller WEB så är det klart att PHP är störst på serverside kod. Det är extremt enkelt att hitta exempel och färdiga moduler skrivna i PHP. De flesta "Lego" webapplikationer är byggda med PHP. ASP.NET som jag själv jobbar med har en förvånandsvärt liten del men visst går det ofast att hitta bra exempel men det är helt klart svårare att hitta "Lego" baserade system för vidareutveckling.

VB.NET existerar fortfarande men det känns väldigt litet i jämförelse, det är extremt mycket lättare att hitta artiklar som rör C# än VB.NET och tittar man på "Lego" system så är så gott som allt C#(när vi bara jämför VB.NET och C#). Det finns säkert en del program som fortfarande underhålls i VB.NET men skrivs något nytt idag så skulle min gissning vara på att man väljer C# i 95% av fallen (åter igen jämförelse med VB.NET).

Tittar man på arbetsmarknaden så tycker jag att den uppfattningen reflekteras ganska väl. Java och C# utvecklare är de hetaste grupperna och lättast att hitta positioner inom.

Javascript är ett scriptspråk vilket gör att jag egentligen inte vill jämföra det med de "riktiga" språken. Men visst är Javascript stort och det är en självklarhet som kunskap när det kommer till webben men oftast kräver man att det finns kunskaper på något mer ex PHP, ASP.NET eller liknande.

Vilken tolkning av din eller min som stämmer bäst är dock väldigt svårt att säga så länge som man inte tittar på någon form av statistik.

Visa signatur

CPU : AMD Ryzen 5 5600X Moderkort : ASUS ROG Strix B550-F GAMING Grafikkort :EVGA GeForce GTX 1080 Ti FTW3 iCX Gaming HDMI 3xDP 11GBMinne : Corsair 16GB Chassi :Fractal Design Define 7 Compact Nätdel : Corsair RM750x Skärm #1 : Asus VG349Q Ultrawide Skärm #2 : Acer X34 Ultrawide

Permalänk
Datavetare
Skrivet av Neon:

Det betyder egentligen att du baserar din information på hur du uppfattar verkligheten och hur väl detta verkligen stämmer beror på många saker. Ex hur aktiv utvecklare är man, tittar man intresserat på flera språk, bytar man jobb ofta? Jobbar man inom olika platformar ofta o.s.v

Jag kan erkänna att jag jobbar själv väldigt slutet inom .NET världen men man rör sig ändå hel del del ute på nätet, dels för att följa vad som händer men även för att hjälpa eller hitta hjälp inom olika sektioner.

Min bild är att JAVA är klart störst, troligen främst på grund av dess multi platform stöd. Jag har jobbar på ett par projekt med Java och kan konstatera att multi platform stödet är långt ifrån självklart men har man huvudet med sig och gör mindre anpassningar så kan man få det till att fungera okay.

När det gäller WEB så är det klart att PHP är störst på serverside kod. Det är extremt enkelt att hitta exempel och färdiga moduler skrivna i PHP. De flesta "Lego" webapplikationer är byggda med PHP. ASP.NET som jag själv jobbar med har en förvånandsvärt liten del men visst går det ofast att hitta bra exempel men det är helt klart svårare att hitta "Lego" baserade system för vidareutveckling.

VB.NET existerar fortfarande men det känns väldigt litet i jämförelse, det är extremt mycket lättare att hitta artiklar som rör C# än VB.NET och tittar man på "Lego" system så är så gott som allt C#(när vi bara jämför VB.NET och C#). Det finns säkert en del program som fortfarande underhålls i VB.NET men skrivs något nytt idag så skulle min gissning vara på att man väljer C# i 95% av fallen (åter igen jämförelse med VB.NET).

Tittar man på arbetsmarknaden så tycker jag att den uppfattningen reflekteras ganska väl. Java och C# utvecklare är de hetaste grupperna och lättast att hitta positioner inom.

Javascript är ett scriptspråk vilket gör att jag egentligen inte vill jämföra det med de "riktiga" språken. Men visst är Javascript stort och det är en självklarhet som kunskap när det kommer till webben men oftast kräver man att det finns kunskaper på något mer ex PHP, ASP.NET eller liknande.

Vilken tolkning av din eller min som stämmer bäst är dock väldigt svårt att säga så länge som man inte tittar på någon form av statistik.

Antalet personer som jobbar med någon form inbyggda-system är garanterat större än gruppen som jobbar med webb-utveckling eller server-utveckling eller någon annan godtycklig avgränsning man brukar göra. C är nästan allenarådande inom denna bransch, finns C++ men det är försvinnande lite jämfört med C.

Däremot är arbetsmarknaden i Sverige väldigt tung på webbsidan jämfört med väldigt många andra länder, relativt sett har vi världens största användning av Microsoft-produkter. Så säger inte emot dig om du hävdar att det finns fler jobb inom Java/C# här än C/C++, tvärt om är jag övertygad att så är fallet. Men är också rätt säker på att en C-programmera tjänar bättre än en Java/C# i genomsnitt, om man nu är ute efter att maximera inkomst (personligen så skulle jag inte rekommendera det, bättre att gå på det man är intresserad av).

Själv följer jag MS väldigt noga då det är ett stort och viktigt företag. Bl.a. via Channel9 och har under alla år alltid följt varje Build-konferens noga, det går inte att att säga något annat än att MS rejält minskat fokus på .Net på senare tid, varför det är så är däremot lite mindre glasklart.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk

Om ni är intresserad (antar ni är det) i vilka kurser jag syftar på så är det dessa:

C#
http://edu.mah.se/sv/Course/DA204B#Syllabus

Citat:

The course convers the following main topics:

Object-orientation: class and encapsulation
Variables, operators, struct and enum
Sequence, selection and iteration
Arrays and an introduction to collections
Graphical user interface
Documentation and structuring of source code

VB.NET
http://edu.mah.se/sv/Course/DA206A#Syllabus

Citat:

Kursen innehåller följande moment:

Objektorientering: klass och inkapsling
Variabler, operatorer, Structure och Enum
Sekvens, selektion och iteration
Arrayer och introduktion till samlingar
Grafiskt användargränssnitt
Dokumentering och strukturering av källkod

Permalänk
Medlem
Skrivet av heretic16:

Jag tror jag laddar ned Visual Basic 2010 Express.
Det blir inget C# för mig.

Jag grundar detta på:
* Jag ska utbilda mig till maskiningenjör.
* Jag ska inte göra spel
* Jag ska inte göra stora program
* Jag ska mest kunna lösa maskiningenjörsproblem med enkelt språk
* Jag kan redan C.
* Jag bygger inbyggda system med Arduino som kan kontrolleras med VB.NET
* Jag har andra studier som jag måste göra.
* Visual Basic.NET är enkelt språk jämfört med C#

Kan väl i egenskap som maskiningenjör själv undra varför sånt fokus på programmeringen? Finns dataingenjörer som löser den biten. Har i jobbet aldrig skrivit en rad kod(nåväl, några rader macro i CAD:en händer väl, skillnad dock). Spelar förmodligen ingen som helst roll vad du kör då du inte kommer använda det i yrket sen ändå.

Permalänk
Skrivet av Barra85:

Kan väl i egenskap som maskiningenjör själv undra varför sånt fokus på programmeringen? Finns dataingenjörer som löser den biten. Har i jobbet aldrig skrivit en rad kod(nåväl, några rader macro i CAD:en händer väl, skillnad dock). Spelar förmodligen ingen som helst roll vad du kör då du inte kommer använda det i yrket sen ändå.

Alla maskiningenjörer läser ett programeringsspråk. Oftast MATLAB eller C. Men det är oftast för kalkyler och macron.
Därför tänkte jag VB.NET passar mig bra. Enkelt och man kommer igång snabbt att kunna göra program

Permalänk
Medlem
Skrivet av heretic16:

Om ni är intresserad (antar ni är det) i vilka kurser jag syftar på så är det dessa:

C#
http://edu.mah.se/sv/Course/DA204B#Syllabus

VB.NET
http://edu.mah.se/sv/Course/DA206A#Syllabus

Kan inflika att jag tror mig ha läst denna VB.NET-kursen på MAH för ett par år sedan (verkar åtminstone vara samma kurs), och minns den som en OTROLIGT bra distanskurs. Inte på något vis på grund av VB.NET som språk, utan snarare som en väldigt god introduktion till objektorienterad programmering, då jag tidigare endast hade läst lite procedurell C.

Visa signatur

Stationärt: i7 3770k, Gigabyte GTX 780 WF, 4x8GB XMS3, MSI Z77A-GD65, Samsung 830 + 840, FD Newton 650W, FD Define R2
Bärbart: MacBook Pro 13" Tidigt 2011, Core i5, 8GB DDR3, OCZ Vertex 3 LT 240GB
Hemmaserver: HP Microserver N54L, 4GB ECC, Debian

Permalänk
Skrivet av TheFork:

Kan inflika att jag tror mig ha läst denna VB.NET-kursen på MAH för ett par år sedan (verkar åtminstone vara samma kurs), och minns den som en OTROLIGT bra distanskurs. Inte på något vis på grund av VB.NET som språk, utan snarare som en väldigt god introduktion till objektorienterad programmering, då jag tidigare endast hade läst lite procedurell C.

Man kan väll säga att det är den första kursen inom programmering, utan någon stor fokus på att lära sig språket

Jag gillar distanskurser. Man får så mycket mer tid till studier

Permalänk
Avstängd

Jag har jobbat i 14 år i branschen, och i branschen menar jag konsultbranschen vilket innefattar i stort sett alla enterpriseprodukter du kan tänka dig.

Och där är C# överlägset Java och andra platformar. Det är möjligen den publika websiten som rullar på Java men den kodbasen är ofta försvinnande liten jämfört alla de back office system som finns på de stora bolagen. Innan C# var det VB som var störst i denna kategori. Jag har inga sifffror men jag kan nästan slå vad om en månadslön att om vi tar alla aktiva projekt just nu i Stockholmsregionen så kommer siffran för C# vara väldigt stor

edit: Dock förespråkar jag alltid rätt verktyg för rätt jobb

Visa signatur