C# FAQ 1.2 - What is C#?

The C# (pronounced "C-Sharp") programming language is one of the most powerful object-oriented programming languages developed by Microsoft. According to them, "C# is a modern, object-oriented language that enables programmers to quickly build a wide range of applications for the new Microsoft .NET platform, which provides tools and services that fully exploit both computing and communications." Actually, C# was originally codenamed "Cool" before being released as a beta in 2000. Microsoft then released different versions of the language including the latest release of C# 2.0. With each release, the product shipped with improved features for developing secured and scalable applications along with high quality documentation and code samples.

Prior to .NET, C, C++, and Visual Basic 6.0 had dominated the computer industry. The main drawback with these languages is that a programmer has to devote a long time to develop and deploy an application. Also, the syntax used by one language is different from the other; hence, it took a long time for a programmer to migrate between two different languages. Programmers were searching for a programming language that would not only reduce the development time of applications but also to attain good productivity. These difficulties were eliminated with the introduction of C#. This is because all .NET languages, including C#, commonly follow the Common Language Specification (CLS) and target the Common Language Runtime. Moreover, C# is relatively simpler language than C++ as it doesn't contain pointers and templates.

Some of the notable features of the C# programming language are namespaces, type-safe variables, multi-dimensional arrays, jagged arrays, operator overloading, indexers, delegates, versioning, attributes, and overriding. C# also comes with features such as "pass by reference" and "pass by value" for parameters, XML-based documentation with special comment tags, and integration with COM components developed using Visual Studio 6.0 and other non-.NET languages. Moreover, C# 2.0 supports new features such as Generics, Anonymous Methods, and Partial Types. Further, the key specifications for the C# language have been reviewed and ratified by an international standards organization called the European Computer Manufacturers Association (ECMA). For more details regarding this topic, refer to http://msdn.microsoft.com/net/ecma/.

You can develop console applications (executed from the command prompt), Windows applications, ASP.NET Web Applications, ASP.NET Web Services, and Mobile Web Applications, Class libraries, Windows control libraries, smart device applications, and Web control library applications by using the C# language. In addition to these applications, you can also create setup files for your C# projects using by Visual C# .NET. You will learn about the development of each one of these applications in forthcoming FAQs.



About the Author

Anand Narayanaswamy

Anand Narayanaswamy (Microsoft MVP) is a freelance writer for Developer.com and Codeguru.com. He works as an independent consultant and runs NetAns Technologies (http://www.netans.com)which provides affordable web hosting services. He is the author of Community Server Quickly (http://www.packtpub.com/community-server/book). Anand also runs LearnXpress.com (http://www.learnXpress.com) and Dotnetalbum.com (http://www.dotnetalbum.com) and regularly contributes product and book reviews for various websites. He can be reached at ananddotnet@yahoo.co.in

Comments

  • Basic programming

    Posted by morerajesh on 11/02/2006 01:09am

    Hello Mr. Anand I am well known to JAVA Plz tell me is it make easy to learn c# What are the basic syntax and concept what are the similarities betn java and c# Rajesh More morerajesh@rediffmail.com morerajesh@codeguru

    Reply
  • Thank u

    Posted by rejish823 on 06/01/2006 01:49am

    I got some knowledge about the c#.net

    • VERY GOOD

      Posted by shyam.krishna2020 on 11/25/2007 02:00am

      hi i m SHYAM; from NIIT LUCKNOW i got such a wonderful knowledge about c# (version 2.0),thanks for this YAAR.

      Reply
    Reply
  • Comments

    Posted by Legacy on 02/19/2004 12:00am

    Originally posted by: anon

    >C, C++, and Visual Basic 6.0 had dominated the computer >industry for the past two decades.
    Is VB 6.0 really 20 years old?

    >Also, the syntax used by one language is different from the >other;
    Of course. This is not a flaw. Each Dot net languages still has its own syntax.

    >Programmers were searching for a programming language that >would not only reduce the development time of applications but >also to attain good productivity. These difficulties were >eliminated with the introduction of C#.
    Where's your data showing these reductions in development times? You make claims without supporting them.

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • On-demand Event Event Date: March 27, 2014 Teams need to deliver quality software faster and need integrated agile planning, task tracking, source control, auto deploy with continuous builds and a configurable process to adapt to the way you work. Rational Team Concert and DevOps Services (JazzHub) have everything you need to build great software, integrated seamlessly together right out of the box or available immediately in the cloud. And with the Rational Team Concert Client, you can connect your …

  • Live Event Date: April 22, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT Database professionals — whether developers or DBAs — can often save valuable time by learning to get the most from their new or existing productivity tools. Whether you're responsible for managing database projects, performing database health checks and reporting, analyzing code, or measuring software engineering metrics, it's likely you're not taking advantage of some of the lesser-known features of Toad from Dell. Attend this live …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds