C# Cross-Platform
This tutorial discusses the different methods to create a cross-platform application in C#.
Cross-Platform Applications in C#
Unlike Java, which is a programming language and a framework in itself, C# is just a language that needs a framework to be fully cross-platform.
Java is fully cross-platform because it runs on Java Virtual Machine and Java Runtime Environment, which are the same across all platforms and operating systems.
To make C# fully cross-platform, we must select a development framework that suits our needs.
In earlier days, if we wanted to create a cross-platform application in C#, we could only use the Mono
framework. Mono
is great for this, but it is still a third-party framework and not directly supported by Microsoft.
We can also create cross-platform applications with Microsoft’s .NET Core
framework.
the Mono
Framework in C#
Mono
is a free, open-source, and cross-platform implementation of Microsoft’s .NET
framework based on the ECMA standards for C# and Common Language Runtime CLR.
Mono
is a software development framework in C# that allows developers to write cross-platform applications as part of the .NET
foundation.
the .NET Core
Framework in C#
.NET Core
is an open-source, cross-platform, and general-purpose framework maintained by Microsoft. The .NET Core
software development framework in C# allows developers to write cross-platform applications.
Conclusion
The highlighting features of the Mono
framework are that it is cross-platform, open-source, and implements the .NET
framework.
The highlights of the .NET Core
framework are that it is cross-platform, consistent across different architectures, and provides some command-line tools.
Mono
provides us much more features because it is an implementation of the full .NET
framework, while the .NET Core
only has a subset of features compared to it.
Microsoft maintains the .NET Core
and has a bigger community, so it has fewer issues than Mono
.
These frameworks have their advantages and disadvantages over each other. We must decide which framework suits our scenario the best.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn