C#

GameBoy
The master of all coding languages! :shock:

Discuss C# and all its features and possibilities here!

iamdaman13
Is it better than C++ and VB?

Cryophile
one word for you, iamdaman13: lol

Read up on it, you'll see why.

Anonymous
I hope I didn't just ask a stupid question! :oops:

iamdaman13
Sorry, I forgot to login. That was me.

Anonymous


Discuss C# and all its features and possibilities here!



Don't see what place discussion of C# has in a forum for Quest development myself.

Al (MaDbRiT)

Anonymous
Whoops! didn't finish what I meant to write there!

C#. Hmmm. Well the folks at Microsoft looked at C++, then at Java and some bright spark said - "If we combine the best bits of both we'll have a KILLER language" so off they went - recruiting the guy who largely wrote Delphi to add more outside influences to the pot.

Unfortunately, although some bits are indeed 'the best of both', C# suffers from a bad case of missing the point (in my opinion anyway)

#1 benefit of Java - it is cross platform, Java output runs unaltered on any Java Virtual Machine. Downside - even with JIT compilers, Java is relatively slow (how many Apps are written in Java? not many!)

#1 benefit of C++ - you have to compile it on its intended OS - but having done so it is relatively fast. Downside - much harder than Java (less forgiving structure).

C# - well it ain't cross platform because it's .net & relies way too much on the Windows API etc. Though it's arguably easier than C++ and not a lot harder than Java to code in. It uses the equivalent of Java's bytecode/JVM (MS calls it IL/CLR but it's the same principle), so it has Java's #1 weakness without its #1 strength.

C#'s only real advantage comes if you're working in a solely MicroSoft environment, where the .net framework allows you to use all the MS languages interchangeably on the same project.

One of my professional code-slinging friends described C# thus - I'm neither supporting or arguing with him - this is just the view of a pro coder who's been in the business for 20+ years.


Microsoft decided that if they couldn't own Java, they'd write their own 'better' version. Trouble is, Nicrosoft doesn't like to think there is anything other than Microsoft product out there, so they ignored the bit about cross platform capability and, in doing so, effectively ignored the whole reason d'etre of Java anyway.



I have VS.net myself, we 'upgraded' when it came out. I still mostly work in VB6 and (only when I absolutely HAVE to) Visual C++ 6. Our client machines are not all 'state of the art' PC's and the .net stuff isn't gnerally a very good performer at all on older machines.



Al (MaDbRiT)

davidw

Don't see what place discussion of C# has in a forum for Quest development myself.



90% of what's on this forum has nothing to do with Quest. Cut out the off topic crap and there'd be about 3 posts a month.

Alex
This is the "Games and Chat" forum anyway - so you can talk about anything.

GameBoy
wow... is all i have to say.

VB6 still kicks ass, but c# is the future. good for writing servers in ill tell ya that ;)

Anonymous
Ste wrote


c# is the future



Hmmm, I've heard that claim before - last time I think was when JAVA hit the market. :shock:

I'm not disputing C# is particularly suited to certain tasks, after all most programming languages have strong areas (personally I always found Delphi was really good for working with databases for instance) but I do think calling it 'the future' is a bit of a leap - especially as it is part of (and therefore tainted by) Microsoft's latest wheeze, the .net framework.

Before anyone accuses me of being blindly anti-Microsoft, I state here and now that I think Microsoft have produced some truly great products over the years, the 'classic' VB concept was (and remains) truly brilliant, VB3 through 6 being probably the most useful and almost certainly the most used programming tools since the introduction of GUI based computing.

They've also done some really good applications over the years. MS Office which is the world's most dominant productivity software is good, though I have to admit preferring Lotus's SmartSuite because Lotus seems to have mastered upward compatability far, far better than Microsoft ever have. You might say that's no 'big deal', but consider this first;

I have many Lotus Macro language based worksheets written in 1990 (and earlier) in Lotus 2.4 / 3.0 (DOS based) which still work unaltered in the latest version 9.8 software. Excel based solutions seem to need re-writes with every new release. If you've built and now have to maintain many hundreds of applications, this becomes a very 'big deal' in a hurry - trust me on this. :roll:

That's all by the by, Microsoft's biggest problem with .net generally is the millions of disgruntled Visual Basic programmers out there who've invested years (in some cases many many years) in becoming expert in VB, who now feel MS has decided that they should just dump all the knowledge they've accumulated and start all over again with .net in the form of VB.net.

(Actually, VB.net isn't THAT bad to change to, if you already know another language like C++ or Java, but it IS a bitch if your knowledge base is in VB alone. Most people I know feel you might as well just learn C++ anyway as try to go from Classic VB to VB.net from a purely VB background)

Visit the related forums and you'll see there are a lot of very unhappy working professionals out there who's faith in Microsoft has gone, who are saying 'why should I bother to invest my time in learning .net, Microsoft will probably just dump the whole thing in a couple of years anyway. After all they've done it to me before with VB classic'.

It's not hard to see their point really. :roll:

C++ isn't a purely Microsoft product, C# effectively is. If you've just had your fingers burned by trusting MS and have to invest a lot of time in learning something new, would you hitch your wagon to the already proven C++ (cross platform, cross vendor) chariot, JAVA, or Microsoft's newest proprietary language that they could drop on a whim whenever it suited them, C#?

Were I a betting man, my money would not be on C#. So in light of the above (more than any technical shortcomings) I can't see C# as 'the future', until MS proves otherwise I'm more likely to consider it just another MS variation on a mainstream language that I don't want to waste too much time on. :-)

Al (MaDbRiT)

Farvardin
I hope the future would rather not be a microsoft/mswindows language, but an open one.

GameBoy
well, if microsoft could develop a decent OS, and then EVERYBODY used microsoft, we wouldnt have a problem there, would we 8)

Anonymous
Ste wrote;


well, if microsoft could develop a decent OS, and then EVERYBODY used microsoft, we wouldnt have a problem there, would we.



OH NO! Please don't open this particular can of worms! 8)

Seriously, I don't think any monopoly is ever a good thing. You need healthy competition to drive the quality/value of products upwards - the theory being that if there is no alternative product then there is no incentive for a company to improve.

Imagine a one car company monopoly. An annual review meeting maybe...

Product Development engineer:
"O.K. so our product is cruddy looking, overpriced, unreliable and 50 years behind the current technology, but so what? It makes us a HUGE profit because we recouped the development cost years ago. Why waste billions of our profits developing a new and better car? Let's face it, If the public want to drive they got no choice but to buy whatever we choose to sell 'em at whatever price we feel they'll stomach"

Al (MaDbRit)

Anonymous
yeah, but err, cars and operating systems, two totally different things. I don't know any other operating system like windows, but i can tell you a few cars which are practically the same, by different companies. You can't really compare Windows with Linux or Mac, however, there is an operating system called Lindows (i think its that), pretty funny. But from my experiences, windows, linux, and mac are very different, and if you all wanted to use quest, you would HAVE to use windows as it only runs on windows (im assuming). And games that only run on windows, there are alot of other things which run specifically on windows, and if you have Mac or Linux or whatever, you can't use them, for me, i wouldnt use anything BUT windows.

So i think if windows was the only OS out there, it would still improve, it would have to as more and more games, software applications etc are being developed and advancing more and more each day, so Microsoft operating systems would need to be improved to keep up with hardware and software, or else we'd all be stuck playing PacMan for the rest of our lives. :cry:

Anonymous
yeah, but err, cars and operating systems, two totally different things. I don't know any other operating system like windows, but i can tell you a few cars which are practically the same, by different companies. You can't really compare Windows with Linux or Mac, however, there is an operating system called Lindows (i think its that), pretty funny. But from my experiences, windows, linux, and mac are very different, and if you all wanted to use quest, you would HAVE to use windows as it only runs on windows (im assuming). And games that only run on windows, there are alot of other things which run specifically on windows, and if you have Mac or Linux or whatever, you can't use them, for me, i wouldnt use anything BUT windows.

So i think if windows was the only OS out there, it would still improve, it would have to as more and more games, software applications etc are being developed and advancing more and more each day, so Microsoft operating systems would need to be improved to keep up with hardware and software, or else we'd all be stuck playing PacMan for the rest of our lives. :cry:

Anonymous
that was me btw...lol

Anonymous


yeah, but err, cars and operating systems, two totally different things. I don't know any other operating system like windows, but i can tell you a few cars which are practically the same, by different companies.



That's called 'badge engineering' - vehicles are the same, only the branding is different. :-)

I don't see why you shouldn't compare an OS to a motor car, they are both commodities that serve a specific purpose - although in completely different areas admittedly.


But from my experiences, windows, linux, and mac are very different, and if you all wanted to use quest, you would HAVE to use windows as it only runs on windows (im assuming).



Quite true, but Quest isn't the only IF language and plenty of them run on 'other systems' - TADS, INFORM & HUGO (the big 3) for a start.


And games that only run on windows, there are alot of other things which run specifically on windows, and if you have Mac or Linux or whatever, you can't use them, for me, i wouldnt use anything BUT windows



There is quite a lot of MAC specific software too. Plenty of Graphic Art professionals etc. use MAC's for precisely this reason and they wouldn't use anything BUT Mac. I reiterate, this is a GOOD THING as it keeps both Apple & MSoft on their toes making sure the other doesn't gain a killer advantage.


So i think if windows was the only OS out there, it would still improve, it would have to as more and more games, software applications etc are being developed and advancing more and more each day, so Microsoft operating systems would need to be improved to keep up with hardware and software, or else we'd all be stuck playing PacMan for the rest of our lives.



EXACTLY my point! I am cynical enough to think that 'Windows' progress would have been a lot slower (and prices a lot higher) had there been no Apple out there. True there would still be 'progress', because Microsoft (and everyone else) still want to force you to upgrade (read as "spend more money") every now and again - planned obsolesence is a cornerstone of design in the modern industrial world.

The thing is, without competition Microsoft could dictate the pace and price of progress to suit themselves. That would be a bad scenario in my book!

Al (MaDbRiT)

GameBoy
so what about C#..... rofl

OldManRivers
"C++ isn't a purely Microsoft product, C# effectively is."

Statement One-True, statement 2-Not true.

Uncharacteristically for Microsoft they have "gifted" C# to the rest of the world while VB is still their property.

Borland, a major Microsoft competitor, even provide a free, for personal use, C# compiler and IDE. I've used it and it works really well.

As for disgruntled VB programmers being p****d off by having to abandon years of code, well that's life. I still regret that the reams of Poking and Peeking of Z80 ZX-81 code, 6502 Commodore-64 and DOS based Int 21H no longer works in the XP environment. But I'd be much more disgruntled if we hadn't progressed! Anyway I know that the experience and scarring of past endeavours will still pay dividends in the future.

The .NET technologies are pretty scary but they are, I believe, an honest attempt to provide a better foundation for future computing than the rag-bag of tools we have at the moment.

Dot Net represents a paradigm shift that starts a new chapter, possibly a new volume, in the history of computing.

VB.Net along with C# allow us an opportunity to add a sentence or two to that history.

It doesn't mean we have to drop our old skills straightaway, that would be foolish. Keep up the old skills, pick up new ones on the way. Well that would be my advice.

(Old Man Rivers creakily climbs off his soapbox, picks up his stick, sighs as deeply as his wizened emaciated chest allows and limps off into the distance)

paul_one
OK - but how is C# not microsoft property - seeing as how:
Microsoft MADE it!!

First off MS give away a free compiler (last time I looked anyway)... It wouldn't surprise me if Borland didn't just build an IDE and just use/alter the free compiler given away by MS...

Also, C# isn't completely compiled... As far as I've read C# get's kinda jumbled, into an intermediate code which isn't quite machine code but isn't quite interpreter code either...

Anyway, it is surely better to learn C++ so that you have a wide variety of systems that you can adapt to - including C#...

Anonymous


Also, C# isn't completely compiled... As far as I've read C# get's kinda jumbled, into an intermediate code which isn't quite machine code but isn't quite interpreter code either...



Correct - code is produced for a "virtual machine" for a common runtime library....

This all sounds remarkably like Java 'byte code' doesn't it... But why would Microsoft re-work the Java concept when it already exists?

Cause they don't own Java that's why. :-) Call me cynical but I don't believe Microsoft introduced C# & .net for any other reason than to make a shedload of $$$ and through it monopolise things even more.

Al

GameBoy
that's MS for ya. :D

This topic is now closed. Topics are closed after 14 days of inactivity.

Support

Forums