Programmeertaal C# wordt steeds populairder

Een onderzoek van Evans Data heeft aangetoond dat de populariteit van Microsoft's C# programmeertaal snel aan het groeien is. Het gebruik ervan verdubbelde in het laatste half jaar, en men verwacht dat de groei het komende jaar in hetzelfde tempo door zal gaan. Twaalf procent van de ondervraagde Amerikaanse programmeurs zegt begonnen te zijn met het gebruiken van de Java-achtige taal, die een belangrijke rol speelt in de .NET strategie. Het gebruik van C# zou niet ten koste gaan van andere talen, het grootste deel van de ondervraagde programmeurs speelt er alleen een beetje mee, en de meeste serieuze projecten waarin gebruik wordt gemaakt van C# worden nog voor meer dan 80% in een andere taal gemaakt. Opvallend feit is dat mensen die ervaring hebben met Visual Basic en XML eerder geneigd zijn om over te stappen dan mensen die gewend zijn om met Java te werken:

Visual Studio.NET logo C# is not displacing any languages, because most C# users are trying out the technology instead of committing to it wholeheartedly, an Evans Data representative said.

[...] Microsoft is using C# in its battle for software developers. The company's .Net Web services plan is up against rival technologies sold by Sun Microsystems, inventor of the Java language, and other Java backers, such as Oracle, IBM and BEA Systems.

Door Wouter Tinus

07-05-2002 • 00:04

39

Bron: Yahoo

Reacties (39)

39
39
38
9
1
0
Wijzig sortering
en de meeste serieuze projecten waarin gebruik wordt gemaakt van C# worden nog voor meer dan 80% in een andere taal gemaakt.
Dat is logisch denk ik, C# is een relatief jonge taal die zich nog moet bewijzen qua kwaliteit van de gecompileerde code bij de meeste grote programmeurs denk ik. De meeste talen die nu het meest gebruikt worden bij grote projecten, zoals C(++) en op Pascal gebaseerde talen, bestaan al heel veel jaar.

Het is niet voor niets dat Cobolt nog zo veel gebruikt wordt, dat is een taal die zich al heel vaak bewezen heeft qua stabiliteit.
Opvallend feit is dat mensen die ervaring hebben met Visual Basic en XML eerder geneigd zijn om over te stappen dan mensen die gewend zijn om met Java te werken:
Ik denk dat mensen die nu met Java werken ook weinig nut zien in een overstap, want zoals in de tekst ook al staat, C# lijkt op Java. Juist voor mensen die in VB programmeren heeft het dan weer wel zin, omdat VB code alleen maar geschikt is voor Windows systemen. Als ze dan toch moeten overstappen, dan stappen ze denk ik liever over op een taal die ook van MS is.
Het is niet voor niets dat Cobolt nog zo veel gebruikt wordt, dat is een taal die zich al heel vaak bewezen heeft qua stabiliteit.
[mierenneukmode] het isCobol [/mierenneukmode]

Het is niet zozeer dat Cobol zich al zo lang bewezen heeft, alswel daat er zo gruwelijk veel legacy code is die men nog steeds gebruikt omdat men niet deze code te vervangen door iets anders. Meestal omdat de gebruiker het niet aandurft of zich zelfs kan veroorloven ook maar iets uit te proberen. Banken/verzerkeraars hebben daar nogal last van.

Verder valt het denk ik nog wel mee met de kwaliteit van de geproduceerde code van de C#-compiler. De back-end is dezelfde als voor de rest van de compilers in de VS.Net club. (Dus waarom men overstapt van VB naar C# :? )
Ik las in een groep ergens dat alle .NET talen vertaald worden naar C# alvorens gecompileerd te worden. Iets programmeren in VB.NET kan dus nog meer overhead opleveren aangezien het eerst vertaald word naar C#. Dan kun je net zo goed meteen native in C# programmeren.
Dat klopt niet. Er is net als Java een intermediate notatie die in het geval van .NET MSIL (MS Intermediate Language) heet zo uit m'n hoofd.
[mierenneukmode] het isCobol [/mierenneukmode]
en eigenlijk is het COBOL , want het is een acroniem voor COmmon Business Oriented Language.
Was het niet de bedoeling dat deze taal ook platform onafhangkelijk zou zijn zoals JAVA. Ik nl nog geen enkel bericht gelezen van C# progjes die op linux draaien.

Spijtig genoeg hangt het succes van deze taal niet af van z'n prestaties maar van de marketing van MS.
Volgens mij is niet de .NET strategie van MS de toekomst maar open source zoals linux ed.
wat ik uit het verhaal van iemand van microsoft op een lezing over .NET begrepen heb is dat ze het wel degelijk mogelijk gemaakt hebben om alle .NET componenten werkend te krijgen op alle platformen. Alleen MS heeft de source vrij gegeven van .NET maar maakt het niet zelf mogelijk om het ook op linux te draaien.. daar moet de linux community zelf voor zorgen. maar dit moet niet al te moeilijk zijn daar de source vrijgegeven is.
wat ik uit het verhaal van iemand van microsoft op een lezing over .NET begrepen heb is dat ze het wel degelijk mogelijk gemaakt hebben om alle .NET componenten werkend te krijgen op alle platformen. Alleen MS heeft de source vrij gegeven van .NET maar maakt het niet zelf mogelijk om het ook op linux te draaien.
Dit verhaal is maar zeer ten dele waar. Wat MS heeft gedaan is onder de Shared Source licentie een stuk software uitbrengen dat alleen dienst als voorbeeld implementatie, een soort van bijzonder uitgebreid voorbeeld, zeg maar. Dit is trouwens niet de versie van de CLR zoals die bij .Net wordt geleverd.

Zoals al meer is gezegd: MS probeert het beeld te scheppen dat ze opener worden, maar dat is maar in heel beperkte mate waar. Het idee acheter Open Source is immers dat de complete source vrijgegeven wordt en dat je daar ook zelf veranderingen in aan mag brengen. Dat laatste mag niet bij de SSL van Microsoft, een heel belangrijk minpunt want het ontneemt een organisatie of persoon om snel fouten te verbeteren of nieuwe features in te bouwen. Alles moet immers nog steeds via MS gebeuren.

Als het over C# gaat: dat de taal op andere platformen te gebruiken zal zijn is niet zo verwonderlijk. Met de libraries die gebruikt worden zit dat een beetje anders. De .Net functionaliteit zit uiteraard niet in een taal, maar in de libraries die meegleverd worden. Hierin zitten nogal wat Windows-specifieke zaken, zodat het overzetten van de libraries naar een ander platform, zoals Linux, heel veel werk met zich meebrengt.

Het is denk ik goed om in de gaten te blijven houden dat C# en .Net twee heel verschillende dingen zijn...
Anoniem: 21920 @Leipo7 mei 2002 12:00
Java is niet bepaald opensource, en Sun heeft een hele dikke vinger in de pap
Je hebt gelijk als je zegt dat Java geen open source is, maar het is ondertussen wel een defacto standaard geworden die door veel bedrijven wordt geimplementeerd.

Zo zijn er leuke compilers, stapels implementaties van de J2EE specificatie maar ook problemen om hier een echte open source implementatie voor te certificeren.

Kortom, ook de Java-wereld is niet ideaal voor open Source, maar naar mijn idee is alles wel een stuk opener dan in de Microsft wereld. Kijk maar eens naar dingen als het Java Community Process, wat iedereen in principe de kans geeft om mee te praten over veranderingen. In hoeverre dat in de praktijk gebeurt is weer vers 2, maar de mogelijkheid is er in ieder geval.
Waarom heb ik het gevoel dat MS er wel voor gezorgt zal hebben dat .NET programma's beter zullen draaien op windows dan op andere operating systemen.

Dit hebben ze nl ook gedaan met java. Eerste leveren ze een oude (slechte) versie van JVM mee met windows en nu zelfs helemaal niets meer.
wat ik uit het verhaal van iemand van microsoft op een lezing over .NET begrepen heb is dat ze het wel degelijk mogelijk gemaakt hebben om alle .NET componenten werkend te krijgen op alle platformen.
Je geeft zelf al aan van wie je deze informatie te horen hebt gekregen .....
MS probeert inderdaad enigszins mee te doen aan de 'open-source hype', maar ze geven de libraries van deze omgeving niet vrij, dus heb je er weinig aan (de enige manier om die dus na te bouwen is reverse enginering en dat mag nou eenmaal niet overal (logisch). Wat M$ dus doet is: proberen voor te komen alsof ze mee willen werken met de opensource gemeenschap, maar dan net te weinig informatie geven om een opensource .net omgeving te bouwen (en de standaarden 'propriety' houden)
Er is een C# VM in de maak genaamd mono: http://www.go-mono.com/ welke wordt ontwikkeld door de grondleggers van Gnome en andere vrijwilligers. De taal zelf is een open standaard met alle basis functies die het biedt. Dat is natuurlijk heel positief, omdat iedereen zijn implementatie kan maken. Java is dit bijvoorbeeld niet, waardoor je niet zomaar een Java VM kunt maken.

Maar wat ik ervan gehoord heb is dat er toch behoorlijk wat adders onder het gras zitten, omdat Microsoft ook een stel propriëtaire aanvullingen zou hebben ontwikkeld.

Ik denk sowieso dat het geen succes gaat worden, omdat het eigenlijk niks nieuws onder de zon is. Het is een combinatie van een aantal reeds bestaande technieken waar denk ik niet echt veel voordeel aanzit, behalve dan voor het banksaldo van Microsoft...
Het gebruik ervan verdubbelde in het laatste half jaar
Hehehe, verdubbelde van 5 gebruikers naar 10 gebruikers ja :). Zo kan ik ook positief berichten over dingen!
Anoniem: 22378 7 mei 2002 22:03
Ik moet bekennen dat ik C# nog niet bekeken heb, dus daar kan ik niet over oordelen.

Zoals ik het zie en gelezen heb is C# een poging van MS om het falen van VB te vergeten. VB was ooit het visioen van Bill. De hele wereld zou zin VB gaan schrijven. Dat is niet gelukt, dus nu poging 2, maar dan met een C-variant. Het zal allicht beter zijn dan VB, want VB is een simpele taal waarin het lastig is overzichtelijk complexe code te schrijven. Java daarentegen leent zich daar uitstekend voor (Net als C++). Het enige probleem dat Java op dit moment nog steeds met zich meebrengt is de performance. Die performance kan al aanzienlijk verbeterd worden door bv het proggie met de JET compiler (oftewel er geen bytecode meer, direct (dus ook platform-afhankelijke) machinecode)) te compileren. Et Voila!
Het is uiteraard een heel logische keus voor een programmeur om over te stappen naar de programmeertaal van de toekomst.

Java is goed te leren, en in .net stikt het ervan, hier valt je brood nog mee te verdienen, waarom tijd en moeite in een verouderde programmeertaal steken ?

Ik wil hiermee niet zeggen dat dus iedereen massaal aan het programmeren moet gaan, dan verdient niemand zijn brood meer in het vak :D

Deze taal heeft veel mogelijkheden en is goed overzichtelijk zoals ik begrepen heb, en dat is ook natuurlijk een belangrijk aspect. Het heeft dus 2 voordelen.

Snel en simpel (relatief gezien)
Taal van de toekomst.
Java is goed te leren, en in .net stikt het ervan, hier valt je brood nog mee te verdienen, waarom tijd en moeite in een verouderde programmeertaal steken ?
waar denk jij dat het geld voor de meeste programmeurs te verdienen valt? in bedrijfsapplicaties of in desktop software? Het merendeel van de programmeurs werkt aan specifieke bedrijfsapplicaties, en 80% van die markt is java. Bij bedrijven als KPN, Unilever en Shell is java de enige optie.

Dus hoe kom jij er in hemelsnaam bij dat java dood is?
Anoniem: 47550 @LinuxMan7 mei 2002 09:45
Java is idd f.ckin freaking alive...en ik denk dat C# heel erg leuk is maar vooralsnog alleen voor het windhoos platform en voor crossplatform support moet je toch nog echt bij java zijn :)
Anoniem: 42934 @LinuxMan7 mei 2002 12:25
mwhaaah, 80%..... dat lijkt me errug hoog. Ooit van Delphi en Cobol gehoord? Grootste deel bij banken (mainframe) draait op Cobol. Gaan wel over, maar 80% is onzin.
Anoniem: 4219 @D-Devil7 mei 2002 10:08
Ik zie eigelijk niet in waarom C# de taal van de toekomst zou zijn. Uiteindelijk is een programmeertaal maar één van de aspecten van een programma.

Wat heeft volgens jou C# dat bv. C++ of Java niet hebben?
C# is krachtig, maar efficiënt in werken.

Een goed alternatief voor bedrijven die de kracht van C++ willen hebben, maar met de snelheid (in programmeren) en efficiëntie van Visual Basic willen werken. Het combineerd beide voordelen van C++ en VB dus.

Dit zijn mijn ervaringen. Ik werk al geruime tijd met VB en C++ en ben dus ook met C# aan de gang gegaan en het pakte bij mij positief uit.
Je vergeet ff dat het de wat leukere functies uit C++. Zoals multiple inheritance wat niet meer mogelijk is. Plus dat heel dat .NET minder snel is (net als java overigens) dan native C++ apps.

Java vind ik overigens rete traag... Leuk spul hoor, maar alles geschreven in java draait zo'n 30% langzamer ofzo... (afhankelijk van de applicatie)
Je vergeet ff dat het de wat leukere functies uit C++. Zoals multiple inheritance wat niet meer mogelijk is.
Laatst nog op een systeem-ontwerp cursus werd het gebruik van multiple inheritance (MI) zeer sterk afgeraden. Er zijn maar weinig goede voorbeelden te vinden van situaties waarin MI een voordeel oplevert t.o.v. andere oplossingen. MI kan daarentegen wel voor moeilijk te traceren bugs zorgen.
Multiple Inheritance is per definitie een "schonere" oplossing dan het overige "patchwork" om hetzelfde voor elkaar te krijgen. Een goede SO cursus kan dat bewijzen.
Ik geloof dat je leraar een programmeertaal gewend is die geen MI ondersteund, maar dit weet ik uiteraard niet.

En de potentiele bugs ? Tja, dan had de systeem-ontwerper maar beter zijn vooronderzoek/werk moeten doen.
No flame intended, trouwens. (ander krijg ik ook een kogel door m'n kop :'( )
Anoniem: 37180 @mOrPhie8 mei 2002 01:42
C# is net zo snel, als niet sneller dan C++
Je hoeft niet per se op de CLR te schrijven (=trager) maar kan ook gewoon native Win32 apps schrijven in C#
Anoniem: 41994 @D-Devil7 mei 2002 14:46
Snel en simpel (relatief gezien)
Taal van de toekomst.
Volkomen lege term, alle talen die ooit een beetje serieus gebruikt zijn, worden nog steeds gebruikt. C# is een aardige taal, maar ook zeker niet overal voor geschikt. Denk jij dat een operating system erin geschreven wordt? Tuurlijk niet. Volgens mij is C# vooral een gespecialiseerde taal voor bedrijfsapplicaties. Het had mij trouwens een beter idee geleken als Microsoft standaard C++ had genomen en hieruit de oude C commandos had gesloopt, of dat je deze bijvoorbeeld alleen kan gebruiken binnen bepaalde blokken zoals nu met "unsafe" code in C#. Zodat de taal wel standaard C++ zou zijn. Verder nog een mooie, elegante (heel anders dan MFC dus!) portable class library gebruik makende van de STL, het had mooi kunnen zijn.. :'(
Anoniem: 52788 7 mei 2002 06:28
Tja, veel mensen stappen op het laatste en nieuwste wat uitgebracht word en een paar jaar later komen ze erachter dat het toch allemaal niet zo mooi en goed was zoals was voorgespiegelt. Veel mensen komen ook terug van hun keuze voor Java. Het idee erachter is leuk, maar er kleven ook nadelen aan.

Hetzelfde geld voor C# en .NET. Het idee erachter lijkt allemaal leuk, maar het moet zichzelf nog maar eens bewijzen. Overigens zie ik weinig nieuws onder de zon. Alles wat er in .NET zit komt me bekend voor. Microsoft heeft goed gekeken naar SUN en naar C++ en nog verschillende andere talen en omgevingen. Uiteraard is daar niets mis mee.

Voorlopig hou ik het bij C++ en wacht af hoe het gaat worden.
Persoonlijk denk ik dat het net andersom is, nl. dat Java steeds meer gebruikt wordt. Wat er gebeurd is dat toen Java nog jong was er een enorme hype over ontstaan is en daar heeft het nooit aan kunnen voldoen. Daarna kwam er een enorme terugval in het gebruik (men haalde de applets van de site en verving ze door Flash of DHTML+script) maar langzamerhand heeft Java zich goed weten in te graven op server systemen.
Het grootste probleem met de applets was dat daardoor niemand Java zag als een volwaardige programmeertaal: het was eerder een speelgoedtaal om websites interactiever te maken.

Het is pas door de Java servlets en dergelijke dat de meeste mensen begonnen in te zien dat het evenwaardig was aan andere talen.
Logisch, C# is goede nieuwe taal om windows programma's in te maken. Wilde je geavanceerde programma's maken, dan ontkwam je meestal niet aan C(++) of misschien Delphi/ BCB icm winapi.
Wilde je vooral snel een programma in elkaar klussen dan ging dat het makkelijkst met VB, maar die liet het afweten op gebied van multithreading. (Daarnaast is de syntax imho gewoon bagger).
C# en .Net bieden het beste van 2 werelden. Uiteraard kan er ook in een andere taal .Net gecode worden, maar in andere talen zoals C++ is het .Net er gewoon in geprutst. .Net in vb is ook mogelijk, maar ik ben blij dat er nu eindelijk een goed alternatief voor vb is.
Eerlijk gezegd heeft men voor de problemen die je hier beschrijft de term 'library' uitgevonden. Een taal is niet alleen de taal zelf, maar ook de uitbreidingen in de vorm van libraries.

Met MFC schrijf ik net zo snel programma's als met Visual Basic. Met Delphi al helemaal... En dat is nog een obscure taal ook (ObjectPascal).

Ik snap niet helemaal waarom mensen denken programmeren alleen snel gaat met een taal als Visual Basic. Met Visual Basic gaat het JUIST langzamer omdat het zulke achterlijke foutmeldingen geeft dat je langer met debuggen bezig bent dan met programmeren.

Laat ik het zo zeggen: een _echte_ programmeur maakt het weinig uit of hij in C++, Java of C# programmeert.

Wat WEL uitmaakt is dat C# weer iets nieuws is, weer een andere syntax heeft en daarbij ook weer zijn eigen rariteiten en uitzonderingen. Dat betekent dat een programmeur daar allemaal weer ervaring mee moet krijgen.

Persoonlijk denk ik dat de meeste mensen puur op C# overstappen omdat het _nieuw_ is. Die mensen hebben dat zelf misschien helemaal niet zo door. Maa intussen kosten ze wel veel geld voor bedrijven, omdat ze in de baas z'n tijd op een nieuw paard aan het wedden zijn.

Ik denk zelf dat C# doodgewoon overbodig is. Er is al een taal met de syntax van C++, internet-connectivity en geheugenbeheer. Die taal heet 'Java', en is al heel wat verder uitontwikkeld dan C#.

Daarnaast geloof ik niet dat ze bij Microsoft een fatsoenlijke programmeertaal kunnen bedenken. Dat is voorbehouden aan wetenschappelijke instellingen en niet aan commercieele instellingen. Wetenschappelijke instellingen zijn namelijk onbevooroordeeld. Een gedeelte van C# is zo opgezet omdat Microsoft een gewicht tegen Java wilde inbrengen. Dan kan zo'n taal nooit zonder subjectieve elementen zitten, dingen die in Java op manier a) zijn opgelost en in C# op manier b), terwijl beide manieren eigenlijk gewoon hetzelfde zijn. En dan is de taal die als laatste gekomen is overbodig. C# dus.
Java is goed te leren, en in .net stikt het ervan, hier valt je brood nog mee te verdienen, waarom tijd en moeite in een verouderde programmeertaal steken ?
Er zijn toch wel een aantal talen die al heel veel jaren bestaan en die zich wel degelijk bewezen hebben. Die talen zijn niet zomaar te vervangen. Dan kijk ik bijvoorbeeld naar C/C++. C bestaat al (als ik het nog goed weet) een jaar of 30 nu. Terwijl C++ iets jonger is, maar toch ook wel een jaar of 10,15 al meegaat. Die talen zijn zodaning geevalueerd, dat ze 'volwassen' zijn geworden. En ook tegenwoordig wordt nog meer als 75% van de software in talen als C/C++/Cobolt geschreven. Gelukkig maar!
Anoniem: 32081 @Primal7 mei 2002 09:10
Precies, wat veel mensen hier vergeten is dat een groot deel van het schrijven van software niet van scratch begint, maar dat is softwareonderhoud aan bestaande systemen. Die moet je dus wel schrijven in de taal waarin het huidige systeem geschreven is. Die onderdelen zijn goed getest en hebben zich bewezen in de praktijk. Dat ga je niet zomaar weggooien. Dat is vaak fout nummer 1 bij onervaren programmeeurs, het oude spul weggooien en 'eventjes' de boel opnieuw opzetten in de taal die zij als beste beheersen. Dat gaat dus vaak fout.
Bovendien heeft ook een taal vaak enige tijd nodig om te evolueren tot een efficiente taal. Dat was al zo in het verre verleden bij bijvoorbeeld Fortran waar de eerste standaard in '66 kwam, maar pas in '77 op een hoger plan werd gezet (en in '90 en '95 nog een keer), ook C heeft de K&R methodiek laten vallen, C++ heeft volgens mij 5 jaar nodig gehad voordat het een ANSI goedkeuring kreeg, Java had een verkeerde methodiek gebruikt in versie 1.0, ga zo maar door. Dit zal met C# niet veel anders worden.
dit is niet zo gek denk ik, vb programmeurs stappen massaal over naar c# omdat vb zo verandert is in .net dat je net zo goed nieuwe taal kan gaan leren, j++ programmeurs denk ik ook omdat dit meer toekomst heeft op het m$ platform.

[sorry_hoor] wat nou troll ik werk bij een bedrijf waar al 3 mensen naar c# zijn overgestapt, en dat waren die-hard vb-ers, ken je feiten voor je een troll uitdeelt.[/sorry_hoor]
Anoniem: 14038 7 mei 2002 03:37
Misschien dat ik een van degenen ben die sceptisch is. Want ook bij C++ heeft het een paar versies geduurd voordat die compilers konden concurreren met de bijv. Borland versie. (4.2 of 5)
En met deze versie denk ik dat ze nog wel wat kinderziektes eruit moeten halen omdat ook al hebben ze heel lang getest en RC's uitgebracht de architektuur zowieso verfijnt moet worden.
Misschien wel vergelijkbaar met de mensen die liever op NT4 of 2000 ipv van XP blijven werken. Dan loop je misschien wat achter, maar weet je wel wat je hebt (of niet).
En je bind je toch op deze manier aan de MS VM omgeving want de alternatieven zijn er nog niet helemaal klaar voor. (ook allemaal nog nieuw enzo)

Maar wellicht dat het C# toch aanslaat omdat het qua programmeren syntactisch allemaal wat makkelijker is dan het C/C++ geploeter (waar ik nog steeds een hekel aan heb, maar wel heel goed werkt)
En de drempel van VB naar C# is dus ook stukken lager. En da's misschien wel de reden voor die stijging.
Mja, programmeren blijft programmeren en de taal is dan maar bijzaak. ;)

Op dit item kan niet meer gereageerd worden.