C# questions
-
But not about programming it. How mature is the C# development environment? What kind of learning curve does C# have? Can a C# program run under Windows 2000? What kind of overhead does a C# executable have? Does MS use C# for any internal projects? Has any C# program become a commercial success? And the bottom line: Is C# really ready for prime time? We are starting a new project that will have a projected life cycle of 15 - 20 years. Is it even feasable to consider writing part of the project in C#?
-
But not about programming it. How mature is the C# development environment? What kind of learning curve does C# have? Can a C# program run under Windows 2000? What kind of overhead does a C# executable have? Does MS use C# for any internal projects? Has any C# program become a commercial success? And the bottom line: Is C# really ready for prime time? We are starting a new project that will have a projected life cycle of 15 - 20 years. Is it even feasable to consider writing part of the project in C#?
How mature is the C# development environment? Very. Visual Studio .NET 2003 has very good support for most things people want and need. It has notable lacks, too; for instance, it doesn't support code refactoring. The next version will support more features, though. There are also free IDEs like SharpDevelop that people on a budget can use to get started. What kind of learning curve does C# have? Object-oriented development is not something you pick up overnight. For an experienced, good Java or real object-oriented C++ developer, C# should be easy to pick up. I was an old jarhead and it was easy for me. The API is fairly well designed, and the documentation for everything is superb. Can a C# program run under Windows 2000? It sure can. It can run on any machine with a .NET runtime installed; this includes even operating systems like Linux, with the Mono project getting closer to releasing gold code every day. Microsoft has provided the .NET runtime for OSes as old as Windows 98. What you actually compile and execute is called "intermediate language" or IL; there are many languages in which you can write code that is transformed to IL, but the most often-used are VB.NET and C#, with managed C++ coming on strong. Third-party implementations exist for everything from Python.NET to Cobol.NET to Fortran.NET. (It is IL that is actually deployed in a .NET "assembly", a DLL or EXE.) What kind of overhead does a C# executable have? "Managed" code, code that's written to take advantage of .NET runtime features like garbage collection, runs slower than equivalent "unmanaged" code. Managed code is the type you're encouraged to create, and the type you create by default. However, you can also write a .NET project that contains unmanaged code, if you need better performance. I must say, though, that it's possible to write managed code that runs very fast. And the bottom line: Is C# really ready for prime time? Yep. Lots of companies are using it every day now. Most of the problems in version 1.0 have been ironed out in version 1.1 . In my opinion, the .NET runtime will still be around fifteen or twenty years from now; it might have been rebranded, and it will certainly be extended, but it's so well-designed that there will be no reason to discard it. COBOL was only designed to last for three years, and now look at it; you can't get rid of it. Microsoft is a strong company, and it's a pretty safe bet that they'll be
-
How mature is the C# development environment? Very. Visual Studio .NET 2003 has very good support for most things people want and need. It has notable lacks, too; for instance, it doesn't support code refactoring. The next version will support more features, though. There are also free IDEs like SharpDevelop that people on a budget can use to get started. What kind of learning curve does C# have? Object-oriented development is not something you pick up overnight. For an experienced, good Java or real object-oriented C++ developer, C# should be easy to pick up. I was an old jarhead and it was easy for me. The API is fairly well designed, and the documentation for everything is superb. Can a C# program run under Windows 2000? It sure can. It can run on any machine with a .NET runtime installed; this includes even operating systems like Linux, with the Mono project getting closer to releasing gold code every day. Microsoft has provided the .NET runtime for OSes as old as Windows 98. What you actually compile and execute is called "intermediate language" or IL; there are many languages in which you can write code that is transformed to IL, but the most often-used are VB.NET and C#, with managed C++ coming on strong. Third-party implementations exist for everything from Python.NET to Cobol.NET to Fortran.NET. (It is IL that is actually deployed in a .NET "assembly", a DLL or EXE.) What kind of overhead does a C# executable have? "Managed" code, code that's written to take advantage of .NET runtime features like garbage collection, runs slower than equivalent "unmanaged" code. Managed code is the type you're encouraged to create, and the type you create by default. However, you can also write a .NET project that contains unmanaged code, if you need better performance. I must say, though, that it's possible to write managed code that runs very fast. And the bottom line: Is C# really ready for prime time? Yep. Lots of companies are using it every day now. Most of the problems in version 1.0 have been ironed out in version 1.1 . In my opinion, the .NET runtime will still be around fifteen or twenty years from now; it might have been rebranded, and it will certainly be extended, but it's so well-designed that there will be no reason to discard it. COBOL was only designed to last for three years, and now look at it; you can't get rid of it. Microsoft is a strong company, and it's a pretty safe bet that they'll be
I gave you a '5' for using the word "vicissitudes" in a sentence! :) Cheers, Tom Archer "Use what talents you possess. The woods would be very silent if no birds sang there except those that sang best." - William Blake * Inside C# -Second Edition * Visual C++.NET Bible * Extending MFC Applications with the .NET Framework
-
I gave you a '5' for using the word "vicissitudes" in a sentence! :) Cheers, Tom Archer "Use what talents you possess. The woods would be very silent if no birds sang there except those that sang best." - William Blake * Inside C# -Second Edition * Visual C++.NET Bible * Extending MFC Applications with the .NET Framework
Heh heh. I'm really a word geek pretending to be a programmer; don't tell my boss. -Jeff here, bloggy bloggy
-
Heh heh. I'm really a word geek pretending to be a programmer; don't tell my boss. -Jeff here, bloggy bloggy
It was obvious that you have mad cross-over skillz between the programmer side and the wordsmith side when you managed to use the hip-hop phrase "bling-bling" in an article entitled "An Extensible Expression Evaluation Package (EEEP!)" :-D Cheers, Tom Archer "Use what talents you possess. The woods would be very silent if no birds sang there except those that sang best." - William Blake * Inside C# -Second Edition * Visual C++.NET Bible * Extending MFC Applications with the .NET Framework
-
It was obvious that you have mad cross-over skillz between the programmer side and the wordsmith side when you managed to use the hip-hop phrase "bling-bling" in an article entitled "An Extensible Expression Evaluation Package (EEEP!)" :-D Cheers, Tom Archer "Use what talents you possess. The woods would be very silent if no birds sang there except those that sang best." - William Blake * Inside C# -Second Edition * Visual C++.NET Bible * Extending MFC Applications with the .NET Framework
And I'm rating you a 5 for using the phrase "mad cross-over skillz". I'd give you an extra point for that "z" in "skillz". Word :cool: Woke up this morning...and got myself a blog
-
How mature is the C# development environment? Very. Visual Studio .NET 2003 has very good support for most things people want and need. It has notable lacks, too; for instance, it doesn't support code refactoring. The next version will support more features, though. There are also free IDEs like SharpDevelop that people on a budget can use to get started. What kind of learning curve does C# have? Object-oriented development is not something you pick up overnight. For an experienced, good Java or real object-oriented C++ developer, C# should be easy to pick up. I was an old jarhead and it was easy for me. The API is fairly well designed, and the documentation for everything is superb. Can a C# program run under Windows 2000? It sure can. It can run on any machine with a .NET runtime installed; this includes even operating systems like Linux, with the Mono project getting closer to releasing gold code every day. Microsoft has provided the .NET runtime for OSes as old as Windows 98. What you actually compile and execute is called "intermediate language" or IL; there are many languages in which you can write code that is transformed to IL, but the most often-used are VB.NET and C#, with managed C++ coming on strong. Third-party implementations exist for everything from Python.NET to Cobol.NET to Fortran.NET. (It is IL that is actually deployed in a .NET "assembly", a DLL or EXE.) What kind of overhead does a C# executable have? "Managed" code, code that's written to take advantage of .NET runtime features like garbage collection, runs slower than equivalent "unmanaged" code. Managed code is the type you're encouraged to create, and the type you create by default. However, you can also write a .NET project that contains unmanaged code, if you need better performance. I must say, though, that it's possible to write managed code that runs very fast. And the bottom line: Is C# really ready for prime time? Yep. Lots of companies are using it every day now. Most of the problems in version 1.0 have been ironed out in version 1.1 . In my opinion, the .NET runtime will still be around fifteen or twenty years from now; it might have been rebranded, and it will certainly be extended, but it's so well-designed that there will be no reason to discard it. COBOL was only designed to last for three years, and now look at it; you can't get rid of it. Microsoft is a strong company, and it's a pretty safe bet that they'll be
Jeff Varszegi wrote: In my opinion, the .NET runtime will still be around fifteen or twenty years from now; it might have been rebranded, and it will certainly be extended, but it's so well-designed that there will be no reason to discard it. I hope. But COM and DCOM were touted as open source solutions to the world's problems when they first came out. How the mighty have fallen.