C# -- Good or Bad?



 DEVELOP > c-Plus-Plus > C# -- Good or Bad?

LINK TO THIS PAGE  


rating :  0   |  0


  Page 1 of 1

1

 
Topic: DEVELOP > c-Plus-Plus
User: "Jewbster"
Date: 11 Dec 2004 11:15:35 AM
Object: C# -- Good or Bad?
I was wondering if anyone had any thoughts on the relatively new C#
programming. Do you think it is getting too far away from the barebones
of coding, or do you think it is a practical, or possitive, step
forward?
.

User: "Matthias =?ISO-8859-1?Q?K=E4ppler?="

Title: Re: C# -- Good or Bad? 11 Dec 2004 12:04:44 PM
This has nothing to do with ISO C++, but... :)
I have only worked with C# for an assignment during an internship, and I
liked it a lot better than Java. It's cleaner and more consequent than
Java. IMO properties and delegates for example are language constructs
which really make sense to have in an OO language. D has them, too.
Jewbster wrote:

I was wondering if anyone had any thoughts on the relatively new C#
programming. Do you think it is getting too far away from the barebones
of coding, or do you think it is a practical, or possitive, step
forward?

.
User: "Jewbster"

Title: Re: C# -- Good or Bad? 11 Dec 2004 12:10:10 PM
Sorry, first time using the google groups.
Do you think this is something witch could replace C/C++, or is not
quite powerful enough?
.
User: "Mark Bruno"

Title: Re: C# -- Good or Bad? 11 Dec 2004 02:34:14 PM
I'm kinda sick of people going nuts with being off topic. C# from the C++
programmer's perspective is an interesting topic and might as well be
discussed here. This is comp.lang.c++, not comp.std.c++, so we should allow
a little lee way. Anyway, as for my opinon. I think that a "higher level"
language is necessary in today's computing environment, but have always been
annoyed with some of java's fickleness. C# takes what java's laid the
ground for, but adds some stuff I missed from C++, such as pointer
manipulation. So I like it, but would never undertake a serious programming
endeavor in it, unless I was heavily relying on the .net framework.
.
User: "EventHelix.com"

Title: Re: C# -- Good or Bad? 12 Dec 2004 07:53:41 PM
I agree with you.
Has there been some discussion in the C++ community about incorporating
some of the features from C# ?
I would like to see C++ support:
- Event handling
- Attributes
- in/out indication is parameters
- Option for garbage collection
Deepa
--
http://www.EventHelix.com/EventStudio
EventStudio 2.5 - Generate sequence diagrams from plain text input
.
User: "Jewbster"

Title: Re: C# -- Good or Bad? 12 Dec 2004 09:02:42 PM
Is there any good editor you can use, that has the ease of use and
capabilities of 'Visual C#' that is either cheap or free.
*or maybe somewhere 'Visual C#' can be found for free; I've looked
fairly thoroughly
.
User: "EventHelix.com"

Title: Re: C# -- Good or Bad? 13 Dec 2004 08:31:03 PM
You should be able to download Visual C# 2005 Express Beta from
Microsoft's website.
Deepa
--
http://www.EventHelix.com/EventStudio
EventStudio 2.5 - Generate Protocol Sequence Diagrams in PDF and MS
Word
.
User: "Jewbster"

Title: Re: C# -- Good or Bad? 13 Dec 2004 11:35:39 PM
I d/led Visual C# 2005 Express Beta, but when I went to install it, the
installer took the longest time to d/l the components needed that it
was unreal.
I'm not sure if I got a bad d/l(even tho i got it from a microsoft
affiliate, msdn, or if it's just because it's a beta version.
It would've taken a month to d/l these components, so if you have any
thoughts please post them.
.
User: "EventHelix.com"

Title: Re: C# -- Good or Bad? 15 Dec 2004 08:53:53 PM
You can get some help in this area from microsoft.public.* newsgroups.
Deepa
--
http://www.EventHelix.com/EventStudio
EventStudio 2.5 - Generate sequence diagrams from plain text input
.





User: "Chris Gordon-Smith"

Title: Re: C# -- Good or Bad? 12 Dec 2004 04:25:43 AM
Mark Bruno wrote:

I'm kinda sick of people going nuts with being off topic.

Me too. So long as a topic has some general relationship to C++, its likely
to be of interest to me. Constantly insisting on discussion of only the C++
standard seems to me to be a very narrow point of view.
--
Chris Gordon-Smith
London
Homepage: http://graffiti.virgin.net/c.gordon-smith/
.

User: "fuzzylollipop"

Title: Re: C# -- Good or Bad? 13 Dec 2004 12:31:04 PM
Python is a MUCH better choice that C# ( or Java ) for that matter. It
has the high-level goodness with the ability to EASILY integrate C/C++
code for performance critical sections! The best of both worlds!
.


User: "Matthias =?ISO-8859-1?Q?K=E4ppler?="

Title: Re: C# -- Good or Bad? 12 Dec 2004 03:48:27 AM
Jewbster wrote:

Sorry, first time using the google groups.

Do you think this is something witch could replace C/C++, or is not
quite powerful enough?

No, I don't think it will ever "replace" C++ for several reasons.
First, it's a proprietary language, designed for a proprietary platform
(that is, Microsoft's .NET). That's generally a bad thing, because you're
dependant on one single instance which has total control. That's also one
of the points I don't like Java.
Second, C#, like Java, is working on an abstract machine, namely the .NET
runtime. It is half interpreted, half compiled to some sort of intermediate
language (MSIL). So you have the overhead of an additional abstraction from
the hardware and system software and the additional overhead of translating
the mnemonics of the abstract machine to commands your system understands
at *runtime*. In other words, it's (generally) slower than a binary program
produced by your highly optimized C++ compiler.
Third, regardless how more abstract and intuitive programming languages will
become, there are always situations where you need languages which allow to
work close to the hardware, like C and C++. There are situations, where you
HAVE to deal with your memory directly and don't want the garbage collector
to do the work for you.
Bottom line being, C# has its niche, so do C and C++. I doubt this will
change anytime soon.
Just my 2 cents.
Regards,
Matthias
.
User: "Chris Gordon-Smith"

Title: Re: C# -- Good or Bad? 12 Dec 2004 04:36:11 AM
Matthias Käppler wrote:

First, it's a proprietary language, designed for a proprietary platform
(that is, Microsoft's .NET).

I'm not sure that's strictly true. Here's what the Mono website says:-
QUOTE
Microsoft has submitted the specifications of C#, the runtime, the metadata
and the other various bits of the .NET development platform to the ECMA for
standarization.
UNQUOTE
--
Chris Gordon-Smith
London
Homepage: http://graffiti.virgin.net/c.gordon-smith/
.
User: "Matthias =?ISO-8859-1?Q?K=E4ppler?="

Title: Re: C# -- Good or Bad? 12 Dec 2004 05:11:47 AM
Chris Gordon-Smith wrote:

QUOTE
Microsoft has submitted the specifications of C#, the runtime, the
metadata and the other various bits of the .NET development platform to
the ECMA for standarization.
UNQUOTE

That's good news!
.
User: "Sven Axelsson"

Title: Re: C# -- Good or Bad? 12 Dec 2004 07:21:48 AM
On Sun, 12 Dec 2004 12:11:47 +0100, Matthias Käppler wrote:

Chris Gordon-Smith wrote:

QUOTE
Microsoft has submitted the specifications of C#, the runtime, the
metadata and the other various bits of the .NET development platform to
the ECMA for standarization.
UNQUOTE


That's good news!

It's not really news though, they did this back in August 2000. You can
read about it here: http://msdn.microsoft.com/net/ecma/
.
User: "Chris Gordon-Smith"

Title: Re: C# -- Good or Bad? 12 Dec 2004 04:51:29 PM
Sven Axelsson wrote:

On Sun, 12 Dec 2004 12:11:47 +0100, Matthias Käppler wrote:

Chris Gordon-Smith wrote:

QUOTE
Microsoft has submitted the specifications of C#, the runtime, the
metadata and the other various bits of the .NET development platform to
the ECMA for standarization.
UNQUOTE


That's good news!


It's not really news though, they did this back in August 2000. You can
read about it here: http://msdn.microsoft.com/net/ecma/

On the face it, it appears out of character. Perhaps that's why it takes
longer for the news to become known.
--
Chris Gordon-Smith
London
Homepage: http://graffiti.virgin.net/c.gordon-smith/
.




User: ""

Title: Re: C# -- Good or Bad? 13 Dec 2004 01:41:19 PM
[ talking about C# ... ]

First, it's a proprietary language, designed for a proprietary
platform (that is, Microsoft's .NET). That's generally a bad
thing, because you're dependant on one single instance which
has total control. That's also one of the points I don't like
Java.

Actually, C# and the CLI are arguably even more standardized than C++.
Like C++, each has an ISO standard, but unlike C++ each also has an
ECMA standard (that is essentially identical to the ISO standard). From
a practical viewpoint, simply having the same standard endorsed by more
standards bodies means little. OTOH, ECMA standards are all available
for free download, which is kind of nice.
Java is a whole different kettle of fish: AFAIK, it's never been
endorsed by even a single standards organization, and it looks like Sun
has given up on even trying to create the illusion of it being
independently defined.

Second, C#, like Java, is working on an abstract machine, namely
the .NET runtime. It is half interpreted, half compiled to some
sort of intermediate language (MSIL). So you have the overhead
of an additional abstraction from the hardware and system
software and the additional overhead of translating the mnemonics
of the abstract machine to commands your system understands
at *runtime*. In other words, it's (generally) slower than a
binary program produced by your highly optimized C++ compiler.

This is an accurate description of the first generation of Java Virtual
Machines, but not really of most current ones, nor of (at least MS's
implementation of) the CLI. These implementations use JIT compilation,
so anything that runs often enough to care much about will get compiled
to native code rather than being interpreted. This doesn't guarantee
the same speed as C++ (any more than code from all C++ compilers is
identical in speed) but using a virtual machine, by itself, doesn't
necessarily imply a loss of speed either. OTOH, even with JIT
compilation, you see the time taken to compile the code as part of the
run-time, which can limit the utility of heavy-duty optimization except
where code is really executed a lot. At the same time, JIT compilation
more or less implies the availability of run-time directed
optimization, which many C and C++ compilers lack. From what I've seen,
the speed handicap of Java stems primarily from other points. I've done
only minimal work with C#, but at least at first glance, its speed
appears to be reasonably competitive as well.

Third, regardless how more abstract and intuitive programming
languages will become, there are always situations where you
need languages which allow to work close to the hardware, like
C and C++. There are situations, where you HAVE to deal with
your memory directly and don't want the garbage collector to
do the work for you.

It's true that access to the hardware is sometimes needed. If you're
really planning on writing an OS (or even a device driver), C# is
probably a poor choice. OTOH, the majority of C and C++ I've seen
really has little need for direct access to the hardware. For even more
direct access to the hardware, you might want to learn Verilog (or
VHDL).
Finally, I'd note that in some cases, interpretation can actually
improve speed. A byte-code interpreter is usually a small, tight loop
with extremely high locality of reference. Byte codes are typically
much more compact than binary code. These two factors tend to lead to
excellent cache usage. A modern CPU can execute quite a few
instructions in the time taken for one main memory access, so
interpretation doesn't necessarily imply a speed loss.
--
Later,
Jerry.
The universe is a figment of its own imagination.
.





  Page 1 of 1

1

 


Related Articles
 

NEWER

pg.1232     pg.940     pg.716     pg.544     pg.412     pg.311     pg.234     pg.175     pg.130     pg.96     pg.70     pg.50     pg.35     pg.24     pg.16     pg.10     pg.6     pg.3     pg.1

OLDER