The standard .NET C# compiler and CLI run on and build for Windows, MacOS, and Linux. You can run your ASP.NET webapps in a Linux docker container, or write console apps and run them on Linux, it doesn’t matter anymore. As a .NET dev I have literally no reason to ever touch Windows, unless I’m touching legacy code from before .NET Core or building a Windows-exclusive app using a Windows app framework.
I too have been burned by “cross-platform” tooling. What I’ve learned is the more complex your project is, the less likely it is to have simple cross compliation.
But with that huge caveat, I’ll say I’ve had a better time doing cross comp on dotnet than I have rust. Either of them are infinitely better than learning cmake though. That’s definitely just my amateur take though. I’m sure smarter people will tell you I’m wrong.
Well, I’m currently writing a service and frontend, both in C# (Blazor for the UI), and using docker-compose to build and deploy them to a Raspberry Pi running Linux. So not only cross-platform, but cross-architecture as well.
This is not a new thing either. Since .NET Core was released almost 10 years ago, it has supported cross platform development.
What does fully cross platform mean? It sounds very vague and a lot like an exaggeration.
The sdk and runtime are available on all operating systems. I have used nvim on Ubuntu (wsl) to write and execute C#.
See all Operating Systems is a steep claim, that is how I originally misunderstood the meaning of fully cross platform.
I’m relatively certain that it won’t run on DOS or an Arduino, thereby instantly disproving the ‘all operating systems’.
Is there anything out there that’s that literal?
The standard .NET C# compiler and CLI run on and build for Windows, MacOS, and Linux. You can run your ASP.NET webapps in a Linux docker container, or write console apps and run them on Linux, it doesn’t matter anymore. As a .NET dev I have literally no reason to ever touch Windows, unless I’m touching legacy code from before .NET Core or building a Windows-exclusive app using a Windows app framework.
I feel the pain in your comment.
I too have been burned by “cross-platform” tooling. What I’ve learned is the more complex your project is, the less likely it is to have simple cross compliation.
But with that huge caveat, I’ll say I’ve had a better time doing cross comp on dotnet than I have rust. Either of them are infinitely better than learning cmake though. That’s definitely just my amateur take though. I’m sure smarter people will tell you I’m wrong.
Well, I’m currently writing a service and frontend, both in C# (Blazor for the UI), and using docker-compose to build and deploy them to a Raspberry Pi running Linux. So not only cross-platform, but cross-architecture as well.
This is not a new thing either. Since .NET Core was released almost 10 years ago, it has supported cross platform development.