C# ?
-
:confused: you are surely going to laugh ppl but i really don't know the answer of the question i'im going to ask you....what's C# ? I know logo,Basic,java,C,C++,pascal,fortran,... but C# ? I first thought it was some kind of sign to say C AND C++ but i realised by reading the board that it wasn't the case.... I really have never heard of that thing, could you light my little brain on that? :confused: Or maybe a homepage about it....thx for the help, Arnaud aka OptiKron
-
:confused: you are surely going to laugh ppl but i really don't know the answer of the question i'im going to ask you....what's C# ? I know logo,Basic,java,C,C++,pascal,fortran,... but C# ? I first thought it was some kind of sign to say C AND C++ but i realised by reading the board that it wasn't the case.... I really have never heard of that thing, could you light my little brain on that? :confused: Or maybe a homepage about it....thx for the help, Arnaud aka OptiKron
In short, C# is Microsoft's new language created specifically for the .NET platform. Long(er) version: C# is Microsoft's new language created specifically for the .NET platform. The language constructs are very similar to Java, but being similar is a bad thing because I'm tired of seeing "but I could do X in Java!" X| On a lighter note the language (for me) is much better than VB.NET and is cleaner than all the baggage that C++ had to carry to support .NET. HTH, James Sonork ID: 100.11138 - Hasaki "Not be to confused with 'The VD Project'. Which would be a very bad pr0n flick. :-D" - Michael P Butler Jan. 18, 2002
-
:confused: you are surely going to laugh ppl but i really don't know the answer of the question i'im going to ask you....what's C# ? I know logo,Basic,java,C,C++,pascal,fortran,... but C# ? I first thought it was some kind of sign to say C AND C++ but i realised by reading the board that it wasn't the case.... I really have never heard of that thing, could you light my little brain on that? :confused: Or maybe a homepage about it....thx for the help, Arnaud aka OptiKron
It's something of a cross between Java and C++. It is built on Microsoft's Common Language Runtime (CLR) (and so is VB.NET) which gives it Just In Time compiled characteristics. It is garbage collected, so you don't have to worry about long running programs fragmenting memory. Every type can be converted to an object (the universal base class) though it supports true value types as well (through a process called boxing). It supports multi threading. Array bounds and Null references are always checked. It is impossible to reinterpret_cast any object reference. The only casting analogs are static_casts which can be implicit and dynamic_casts which must be explicit. Now Visual C++ 7 and Visual Basic 7 both target the CLR, so why would you want to learn C#? The answer is that while VB7 and VC++7 support the CLR, they do so in a backwards compatible way. In VB, you must remember to define all method parameters as ByVal because that performs the best in the CLR, but the default is ByRef which was the original VB behavior. In C++ (I'm not quite as familier with C++ CLR code) you must use many nasty looking prefixes such as __managed. C# on the other hand was designed from the ground up to support the CLR. This means that all the syntactical default values are the same as the CLR defaults. Method parameters are always passed by value unless you use the 'ref' or 'out' keywords. The syntax is similar to C++ but IMHO cleaner in some areas. One feature that ppl want that is not present in the current version is templates. There are rumors that generic programming might be present in V2 of C# though. Bottom line: If you need to do web programming or business programming, C# is reliable and performs well too (or at least has good features for scaling across servers). If you need to write a high performance game or a ray tracer, you will probably be better off using C++. -- Peter Stephens
-
It's something of a cross between Java and C++. It is built on Microsoft's Common Language Runtime (CLR) (and so is VB.NET) which gives it Just In Time compiled characteristics. It is garbage collected, so you don't have to worry about long running programs fragmenting memory. Every type can be converted to an object (the universal base class) though it supports true value types as well (through a process called boxing). It supports multi threading. Array bounds and Null references are always checked. It is impossible to reinterpret_cast any object reference. The only casting analogs are static_casts which can be implicit and dynamic_casts which must be explicit. Now Visual C++ 7 and Visual Basic 7 both target the CLR, so why would you want to learn C#? The answer is that while VB7 and VC++7 support the CLR, they do so in a backwards compatible way. In VB, you must remember to define all method parameters as ByVal because that performs the best in the CLR, but the default is ByRef which was the original VB behavior. In C++ (I'm not quite as familier with C++ CLR code) you must use many nasty looking prefixes such as __managed. C# on the other hand was designed from the ground up to support the CLR. This means that all the syntactical default values are the same as the CLR defaults. Method parameters are always passed by value unless you use the 'ref' or 'out' keywords. The syntax is similar to C++ but IMHO cleaner in some areas. One feature that ppl want that is not present in the current version is templates. There are rumors that generic programming might be present in V2 of C# though. Bottom line: If you need to do web programming or business programming, C# is reliable and performs well too (or at least has good features for scaling across servers). If you need to write a high performance game or a ray tracer, you will probably be better off using C++. -- Peter Stephens
Peter Stephens wrote: If you need to write a high performance game or a ray tracer, you will probably be better off using C++. While I whole-heartedly agree with this statement, I must say I'm anxious for DirectX 9 to come out. DX 9 is supposed to include a managed interface, but thats all I remember on the topic. Maybe DX9 will allow a full-fledged game to be possible under .NET, then again maybe not :) James Sonork ID: 100.11138 - Hasaki "Not be to confused with 'The VD Project'. Which would be a very bad pr0n flick. :-D" - Michael P Butler Jan. 18, 2002
-
It's something of a cross between Java and C++. It is built on Microsoft's Common Language Runtime (CLR) (and so is VB.NET) which gives it Just In Time compiled characteristics. It is garbage collected, so you don't have to worry about long running programs fragmenting memory. Every type can be converted to an object (the universal base class) though it supports true value types as well (through a process called boxing). It supports multi threading. Array bounds and Null references are always checked. It is impossible to reinterpret_cast any object reference. The only casting analogs are static_casts which can be implicit and dynamic_casts which must be explicit. Now Visual C++ 7 and Visual Basic 7 both target the CLR, so why would you want to learn C#? The answer is that while VB7 and VC++7 support the CLR, they do so in a backwards compatible way. In VB, you must remember to define all method parameters as ByVal because that performs the best in the CLR, but the default is ByRef which was the original VB behavior. In C++ (I'm not quite as familier with C++ CLR code) you must use many nasty looking prefixes such as __managed. C# on the other hand was designed from the ground up to support the CLR. This means that all the syntactical default values are the same as the CLR defaults. Method parameters are always passed by value unless you use the 'ref' or 'out' keywords. The syntax is similar to C++ but IMHO cleaner in some areas. One feature that ppl want that is not present in the current version is templates. There are rumors that generic programming might be present in V2 of C# though. Bottom line: If you need to do web programming or business programming, C# is reliable and performs well too (or at least has good features for scaling across servers). If you need to write a high performance game or a ray tracer, you will probably be better off using C++. -- Peter Stephens
thx for the answer! I'm not in the business programming/web programming yet( in 3 years when i have finished university :) ). So I don't think I'll have a great use of it. I'll stick to C++ for the moment. I've actually discovered .NET just after i posted this message. It seems interesting but coming from microsoft....i'm have some doubts. Well, I should maybe try it to see what the new baby is capable of.
-
thx for the answer! I'm not in the business programming/web programming yet( in 3 years when i have finished university :) ). So I don't think I'll have a great use of it. I'll stick to C++ for the moment. I've actually discovered .NET just after i posted this message. It seems interesting but coming from microsoft....i'm have some doubts. Well, I should maybe try it to see what the new baby is capable of.
It never hurts to expand your skill set, one thing I liked to do was take problems given in uni and try to work them into my programming. In my Introduction to Error Correcting Codes class I wrote a program in C# to find the coset leaders for a given problem (64 possible cosets i had to find 63 vectors in the set, 256 or 512 vectors total). Good Luck, James Sonork ID: 100.11138 - Hasaki "Not be to confused with 'The VD Project'. Which would be a very bad pr0n flick. :-D" - Michael P Butler Jan. 18, 2002