C# is a language for professional programming. C#(pronounced C sharp) is a programming language designed for building a wide range of enterprise applications that run on the .NET Framework . The goal of C# is to provide a simple, safe, modern, object-oriented, highperformance , robust and durable language for .NET development. Also it enables developers to build solutions for the broadest range of clients, including Web applications, Microsoft Windows Forms-based applications, and thin- and smart-client devices.
C# was developed by Anders Hejlsberg and his team during the development of .Net Framework .
The following reasons make C# a widely used professional language:
C# is a much more powerful programming language than many of us may realize. Not only can you build traditional Windows Client applications and Web applications but you may also use C# to build mobile apps, Windows Store apps, and Enterprise applications.
The following table summarizes the C# versions with year and features.
|1.0||1999-2002||Modern, Object Oriented, Simple, Flexible, Typesafe, Managed, Garbage Collection, Cross-platform|
|2.0||2005||Generics, Anonymous Method, Partial Class, Nullable Type|
|3.0||2008||LINQ, Lamda Expression, Extension Method, Anonymous Type, Var|
|4.0||2010||Named and Optional Parameters, Dynamic Binding|
|5.0||2012||Async Programming,Caller Information|
|6.0||2014||Null-Conditional Operator,Auto-Property Initializers,Nameof Expressions,Primary Constructors|
C# language can be used to build any and all kinds of applications. Not only Windows or Web applications but C# can be used to build mobile, Windows Store, and Enterprise applications. C# can also be used within the SQL Server database to build reports, jobs and modules to do the backend work.
Windows Forms and WPF are two major technologies used to develop Windows client applications. C# can also be used to write non-UI console and WPF Browser based applications. Visual Studio 2013 supports four project templates, including Windows Forms application, WPF application, Console application, and WPF Browser application.
Here are some common properties of Windows applications.
Examples of Windows Applications
Visual Studio 2013/2015 supports the three major ASP.NET project templates, ASP.NET web applications, ASP.NET MVC web applications, and ASP.NET server controls.
The following are some common properties of Web applications:
The following are examples of Web sites:
ASP.NET MVC is one of the newest frameworks to build ASP.NET Web applications.
Windows Services has been around since early Windows days. A Windows Service (also known as Microsoft Windows Service or Windows NT Service) is an executable application that runs on Windows operating systems. A service usually does not have a user interface, performs operations in the background and does not require any user interaction.
Web Services were introduced to provide remote communication among devices over the Internet. The main purpose of a Web Service is to provide data accessibility and updatability remotely using the internet protocols regardless of the platform, Operating System, client browser, and application. Physically, a web service is a software application running on a Web Server that can be called by outside applications using the internet to access and write data.
Windows Store apps were introduced in the Windows 8 operating system. Windows Store apps are a new type of application that was never developed before. You can think of a Windows Store app as an app that runs on an iPhone or Android device and has features like Touch, messages, tiles, and swipe.
Mobile apps run on mobile devices. The Apple iOS and Google Android are two major players in the mobile app market. Microsoft has its own Mobile operating system, Windows Phone. Obviously, C# as a language is used to build Windows Phone apps.
But it does not mean you can't use the C# language to build iOS and Android apps. Xamarin has focused on building tools for C# developers that allow developers to build native apps for iOS and Android. Xamarin Studio works with Visual Studio to write code in C# and compiles come to native iOS and Android distributable.
Visual Studio 2013/2015 with C# provides a complete suite of tools to build cloud based applications for Windows Azure. Windows Azure is Microsoft's operating system for cloud computing and hosting. Using Visual Studio, not only you can build Azure solutions but can also deploy and manage them. C# can also be used to work with SQL Azure, the cloud based version of Microsoft's SQL Server database server.
The C# language may also be used cross-applications to connect and build enterprise solutions.
Some of the critical requirements of an enterprise architecture are connectivity with various types of applications to transfer data.