🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Is Unity3D a good place to learn C#?

Started by
5 comments, last by Shaarigan 4 years, 1 month ago

Hey everyone, hope you're having a good day so far. I've had a question on my mind for a while now and wanted to ask it here.

Would Unity3D be a good place to start learning C# or should I look elsewhere?

Advertisement

Hi KPopFanJenn,

it's a very good place to learn game programming with C# (and Unity).
You're going to learn the basic syntax and concepts of C# as well.

But Unity has a strong focus on its Monobehaviour and GameComponents Systems.
Things that do not exist like this outside of Unity.

How do you intend to use C# later on?

@GWDev I have Unity3D installed on my laptop and was asking on other forums if Unity3D was a good place to start but was told it wasn't.

In a course I'm taking in the Fall quarter I'll be learning about C# and wanted to get a head start with it. I also plan on making a game of my own for fun and learning purposes.

Unity is of course a fun place to learn the syntax and concepts of C#. You will learn about:

  • Conditions
  • Variables
  • Datatstructures
  • Loops
  • Classes
  • Interfaces
  • Visibility
  • Keywords
  • Events / Actions / Delegates
  • …..

On top of that you get free access to the unity learn ressources at the moment. The material is very good.

Just expect to do some things different in application/web/tool development and you will be fine.

Thanks for the info. I appreciate it.

Keep in mind that Unity adds some “convencience” stuff you would not get to know if you're not from a plain C# background. Like some operators, especially the null-check uses an extension C# doesn't offer by default.

Some other .NET technology like Reflection will behave somehow different on Unity depending on for which platform you are building as Unity still embedds a Mono Runtime instead of the .Net one

This topic is closed to new replies.

Advertisement