In this lesson, we will learn about the IDEs (Integrated Development Environment) needed to run C# programs on Windows, Linux as well as Mac Operating System.
To run C# program on Windows, use Microsoft Visual Studio. In this tutorial series, we will run C# program on the same IDE.
Visual Studio is an Integrated Development Environment (IDE) from Microsoft. It is used to develop websites, computer programs, web apps, web services etc. The current version is Visual Studio 2017. It released on 7 March 2017 and has many new features such as support for EditorConfig, NGen Support, .NET Core as well as preview for Docker toolset and Xamarin 4.3
The different features in Visual Studio 2017 IDE are:
Code can be written accurately and effectively using Visual Studio without losing the current file context. Various parts of the program such as call structure, related functions, check-ins, test status etc. can be seen in detail.
Bugs can be quickly and easily found and fixed using the Visual Studio debugger. This can be done across languages and locally as well as remotely.
Visual Studio test tools provide various features such as quality metrics, indicators, test status reporting etc. These can be used to plan and execute the testing effort.
The source code can be managed in Git repos hosted by any provider. Azure DevOps can also be used to manage code for the project.
The Visual Studio functionality can be extended by using various tools, controls, and templates available in Microsoft.
There are three editions of Visual Studio 2017 IDE available. These are:
1. Visual Studio Community 2017
This is a free IDE for students, individual developers and open source projects.
2. Visual Studio Professional 2017
This is for professional developers and contains tools, services and subscription benefits for small teams.
3. Visual Studio Enterprise 2017
This provides solutions to meet the quality and scale needs of teams of all sizes.
To run C# programs on Mac, use Visual Studio for Mac. The Visual Studio for Mac is created to optimize the developer workflow for Mac.
Some of the features of Visual Studio for Mac are as follows:
1. Efficient Collaboration
Projects can be shared easily with developers across Windows and Mac using Visual Studio. The code can be easily managed in Git repos that are hosted by any provider including GitHub and Azure DevOps.
2. Quality Mobile Apps
It is very easy to build and connect native mobile apps for Android, iOS and macOS. This can be done using Xamarin’s advanced debugging tools, profiling tools, unit tests and UI test generation features.
3. Modern Web Apps
Beautiful and Modern Web Applications can be created using the ASP.NET Core in Visual Studio for Mac. In addition, direct publishing to the cloud can be done from the IDE.
4. Intelligent Services
.NET Core solutions can be created using Visual Studio for Mac. These provide back-end services to client solutions.
5. Cross-Platform Games
Games that run on multiple platforms can be created using Unity and Visual Studio for Mac. This can be done using powerful coding, refactoring and debugging features in Visual Studio for Mac.
Monodevelop is a cross-platform IDE that allows developers to write different applications for Linux, and even Windows and macOS. It is also easier to maintain a single code base for all platforms as .NET applications created with Visual Studio can be ported to Linux and MacOS.
The different features of Monodevelop are as follows:
1. Advanced Text Editing
Support for code completion is provided for C#, code templates, code folding etc.
Monodevelop is multi-platform and supports Linux, Windows and MacOS.
3. Integrated Debugger
This is a useful tool for debugging Mono and native applications.
This is used to create web projects along with full code completion support as testing on XSP, which is the Mono web server.
5. Configurable Workbench
This contains user defined key bindings, external tools and fully customizable window layouts.
6. Multiple Language Support
Multiple languages such as C#, Visual basic, F#, .NET, Vala etc. are supported.
7. GTK# Visual Designer
It is easy to build GTK# applications using the GTK# visual designer.
8. Other Tools
There are many other tools also available such as makefile integration, source control, packaging and deployment, unit testing, localization etc.
In this tutorial series, we will be working on Windows OS. Therefore, the IDE we will use is Microsoft Visual Studio. Let us see the same in the next lesson i.e. “Set Environment”.