this post was submitted on 14 Sep 2023
420 points (79.6% liked)
Programmer Humor
19703 readers
117 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Thinking that C# is just Unity is a MASSIVE disservice to C# and dotnet imo. Unity's usage of C# is really crummy, basically relegating a very powerful language to working as a weird scripting language.
Absolutely. C# in Unity always seemed to me like a square peg in a round hole.
From my perspective (teaching game programming classes), it's incredibly clunky for beginners when compared to others. Unity needed a tightly integrated, noob-proof scripting language. Despite C# being the primary language, it's integration and setup with the rest of Unity seems surprisingly lacking, and, like you're referencing, you don't even get convenient use of the broader C# / Mono / .net ecosystem, which makes skills more portable. Even the "bad old days" of Flash/ActionScript were much easier for students, and results in more portable coding skills (e.g. at least transitioning to Web / JavaScript from Flash / ActionScript is easier)
It's much easier to teach same lessons / concepts using Godot, though sadly Unity is much better known. Hopefully the present pricing chaos might shift the needle a bit on this!
Unity used to also have UnityScript, but it's deprecated. It was like JS, but it wasn't really used by many people compared to C#.
I am curious, what exactly is missing in the latest LTS version from .Net what makes it so clunky to use for students? Afaik it is pretty solidly close to actual .Net 4.7 nowadays.