I don't like any .NET application due to performance considerations. However, lot's of people come to me and say lots thing about C#, so great, so powerful, it will eliminate all C, ... etc. but I thing that's crappiest language after BrainF*ck.
Now, I have doubts about that, could I be wrong ? What do you thing about C# ?
Now, I have doubts about that, could I be wrong ? What do you thing about C# ?
I don't have more than "hello, world" C# experience, but apart from the whole dotNET thing, it seems like a decent enough language - the implementation might lag behind performance-wise, though.
What's your problem with it? :)
What's your problem with it? :)
The main advantage of C# is that it can run on everything, provided that the .NET is installed. Even on mobile phones. It'll never beat 'native programming' in performance, but the performance is something usually put behind the development time and portability, priority-wise.
It's just a matter of time when there'll be no need for 'native programming' (or at least the need will be greatly limited).
It's just a matter of time when there'll be no need for 'native programming' (or at least the need will be greatly limited).
*THEORETICALLY*, non-native JIT'ed programs could be faster than native programs, because their run-time properties can be examined and the JIT code can take advantage of that. Of course a compiler with profile-guided optimization can achieve some of the same advantages.
I haven't seen that happen though, especially SUN's java sucks (MS JVM was so much faster, but SUN got that project stopped). Don't have much experience with dotNET, except that it seems to run fair enough, although memory use and initial loading time sucks.
With the Alpha version of NT, win32 apps would actually run faster under (JIT) emulation than on native x86 hardware... well, at least the ones that did a lot of system calls (think GDI intensive code, for instance).
It's just a matter of time when there'll be no need for 'native programming' (or at least the need will be greatly limited).
The need is already greatly limited, but many programmers (including me) just aren't willing to accept that :). Until some very radical VM+JIT comes up, though, there'll always be a need for native code. Graphics programs, games, audio apps, video editing, etc.
I haven't seen that happen though, especially SUN's java sucks (MS JVM was so much faster, but SUN got that project stopped). Don't have much experience with dotNET, except that it seems to run fair enough, although memory use and initial loading time sucks.
With the Alpha version of NT, win32 apps would actually run faster under (JIT) emulation than on native x86 hardware... well, at least the ones that did a lot of system calls (think GDI intensive code, for instance).
It's just a matter of time when there'll be no need for 'native programming' (or at least the need will be greatly limited).
The need is already greatly limited, but many programmers (including me) just aren't willing to accept that :). Until some very radical VM+JIT comes up, though, there'll always be a need for native code. Graphics programs, games, audio apps, video editing, etc.
The main advantage of C# is that it can run on everything, provided that the .NET is installed. Even on mobile phones.
Yes, but I want to emphasis that, this is not mean *exactly same* binary/code can run/compile on mobile phones.
.NET Compact Framework and .NET Framework is different.
On the other hand, As f0dder said,
http://www.sysinternals.com/blog/2005/04/coming-net-world-im-scared.html
"It makes me wonder if Microsoft gets a cut of every RAM chip sold…"
Isn't the "compact framework" just a subset of the full framework? If it's just a subset, then nothing new - it's always been like that, also before JAVA. Embedded C/C++ compilers didn't support the full language/library range either.
Interesting article there on sysinternals (those guys are great). That's quite an insane amount of "private bytes" (the memory figure that matters) for the managed notepad version O_o. But I guess it's hard not to get *some* hit when you JIT.
It's really too bad dotNET is implemented so badly, the idea is good enough. I wonder how mono's stats are.
Interesting article there on sysinternals (those guys are great). That's quite an insane amount of "private bytes" (the memory figure that matters) for the managed notepad version O_o. But I guess it's hard not to get *some* hit when you JIT.
It's really too bad dotNET is implemented so badly, the idea is good enough. I wonder how mono's stats are.
I wonder how mono's stats are.
I know only one thing about mono, it doesn't support windows forms. if you build up a gui app, you have to use "GTK#" and that's mean bye bye visual studio.
I know only one thing about mono, it doesn't support windows forms. if you build up a gui app, you have to use "GTK#" and that's mean bye bye visual studio.
What about WindowsForms toolkit? Not complete windows forms API implementation, but it seems to provide all the basic stuff.
I wonder how mono's stats are.
I know only one thing about mono, it doesn't support windows forms. if you build up a gui app, you have to use "GTK#" and that's mean bye bye visual studio.
Is .net actually used in phones now? It's so big, even the compact version, that I last recall it wasn't used in phones, not that I've followed it or anything.
What about WindowsForms toolkit? Not complete windows forms API implementation, but it seems to provide all the basic stuff.
Hmmm, I hadn't been heard that until you told. I will take a look
I wonder how mono's stats are.
I know only one thing about mono, it doesn't support windows forms. if you build up a gui app, you have to use "GTK#" and that's mean bye bye visual studio.
Mono can still be useful for windows users that don't have the money for visual studio (and don't want to use VS Express for some version), or those open source zealots that won't use any commercial software.
A colleague at the PDA-software company that I work at, said mobile Windows OS has .NET and .... MFC in ROM. (yeah, I couldn't believe MFC is alive). Still, on those devices (with 32,64 or 128MB RAM), you usually would run 1-2 tasks (can be managed-apps), and 1 mp3 player (usually written in pure C). Though, I've never played with a mobile WinOS device yet - to verify speed/footprint.
We use some devices with Windows Mobile at my work (www.DPDdk.dk) for barcode scanning and customer/package lists and such... seems like a pretty nice use for embedded windows, the UI is a lot nicer to use than the old (15 years old?) hardware we used to have.
It's a bit slow at times, though, but I dunno if that's because of windows or the scan software itself.
It's a bit slow at times, though, but I dunno if that's because of windows or the scan software itself.
At "Windows Forms 2.0 Programming By Chris Sells, Michael Weinhardt", I found an interessting comparation chart.

