Looking for Information around .NET Core and creating a GUI.

The Title doesn’t really explain it, so ill try to be more informative of this discussions boundaries here.

. So here I am finishing my game development focused Degree, but I’d rather work in Application development as it’s more accessible (or so I thought) and employable, with there being Google knows how many more jobs available. My only experience is making a .Net App is from my degree where I made a tool to generate code snippets from a sprite sheet, i.e., load up sprite sheet into a canvas, create an animation set, use a selecting box to select each frame of the animation, and output usable code snippets for a 2D game. This was mostly done using XAML for the interface and C# for the event handling and logic. But when looking into the latest trends in application development, it seems as though people are using this new dotNET API that essentially combines all the others into one called .NET Core. Awesome, an all in one, sounds easy enough… hmm not really, no Native GUI support, Command line only with test units and libraries…. feels a bit incomplete to me.

. OK so what out there can make up for this lack of GUI support, Electron, Avalonia, QT…? I’m sure I’m missing a few other here (feel free to help fill in the blanks). Ok so now we’ve found a few options let’s have a closer look at them.

. Electron seems to be a good front end option, well supported, made with/for Atom (IDE), and even Microsoft have used it to make Microsoft code which is a cross platform IDE. sounds great that it uses HTML and CSS for creating a front end, but i don’t want to use JavaScript… which it seems electron is heavily reliant upon as I can find little to no information on using C based languages with it and they even have conflicting information themselves on its C type compatibility on their github and/vs website. sorry, but to me java breeds bad behaviours and I’d like to minimise my use with it at all cost, I’m not a web developer, but I can appreciate HTML and CSS and like them for what they do, but I draw the line at java, I like my OOP and have used C++/C# for the last 5 years, I understand that I may need to use some JS to create pipelines to C++ or C# coded libs, which is fine, just don’t want my whole project reliant on it.

. So how about Avalonia? Well it’s in alpha, has a few issues here and there, but overall seems like a good option, but I can’t find enough information on it to really make a good decision as to its potential, people do mention I can use a C# or C++ lib with it, but the information just isn’t there. It really pales in comparison and is overshadowed by electron.

. QT? Few people told me to stay the hell away from it. So I don’t know much.

. What I would like to do is come up with a table or chart showing the various Structured Pipelines for creating a .NET core App with a GUI, what languages are used at what levels, and how they interact. There is simply so much information that it’s conflicting, and I just need a clearer picture to better understand what I should be doing and where I should be looking for better information. Whenever I think I’m starting to understand, I find myself asking even more questions and my previously founded clarity, quickly blurring as these new question contradict what I just learned. I personally find this lack of information very off putting for newcomers, unless I’ve just somehow blindly missed the .NET Core 101 guide to successful development in my searches.

. Honestly if it really comes down to it, I’ll just bolster up my .Net standard knowledge as much as I can and try to use WPF/WinForms/XAML until the .NET Core team get around to GUI Support.

. TLDR; I am having a hard time understanding the structure of a .Net Core application and giving it a GUI, while also avoiding the use of Java in the back end as I prefer C# and C++.

. Sorry if i seem like i don’t understand things, as i simply don’t to a degree. I’m here to try and ask for some help in understanding Application development using .NET after I’ve burnt myself out on googling and researching for the last few days as it seems like you can only know, if you’ve been doing .NET since the beginning… at least from my perspective.

submitted by /u/Honjura
[link] [comments]

Leave a Reply