Where to Learn C#?

Hi! I have asked this question a couple of times in the past. I get the reoccurring answer like “Well, this might help http://blahblahblah. It is 68 years old but you may find 3 sentences to help.” After that, I went a lot more into the business/marketing side of developing. But after a while, you get the though like "Hey! Wouldn’t that just be fantastic if I could design the game… MYSELF!!! :hushed:. So I thought I would try asking again where I can learn C# for Unity development. I already know the Engine like the back of my hand, just not programming.

Well considering Unity doesn’t use up to date C# you are stuck learning older versions.

The above link is the official C# programming guide which will definitely help you learn the language.

As far as piecing stuff together look at the official Unity Scripting References

As you learn try to create small games and work on creating eventually more complex mechanics. For help on stuff that you can’t figure out, after experimenting, don’t be afraid to check out YouTube or Google for tutorials of ask her for help. Here is a link to a bunch of videos that show how to be a functional game.

https://www.udemy.com/unitycourse/
Look at how many people that have bought this course: nearly 92000
Look at the ratings: 8200 rate it at 4.5+
Maybe spend 31 bucks and give it a try.
"The course is continually updated, a major improvement was made in Glitch Garden as recently as March 2016."

That’s funny. I choked on my tea.

6 Likes

The best place to start is probably the learn section at the top of this page.

Depends on how often one studies the back of their hand. :wink:

1 Like

This is really the only link that should be visible to new visitors :wink:

Go through the Unity tutorials. Follow along their programming guides, and go look up anything you don’t understand on MSDN. Newer C# is mainly about additional things rather than changed things, so older and newer programming tutorials are all useful, as long as the bits they cover are implemented in .NET 2.x and C# version whatever-it-is.

1 Like

I also recommend the Unity tutorials, they’re some of the best I’ve ever seen and I really wish they were around when I first started programming. But in addition to those tutorials and others I’d strongly recommend just trying things out yourself. Set yourself a small task and then break it down into smaller chunks to focus on one at a time. You won’t know how to do anything at first, so look it up. Then when you’ve learned what that small thing you need is move on to the next and look up that one too. You’ll spend a lot of time on Google this way and especially Stack Overflow and you’ll learn who Jon Skeet is fairly quickly. And you’ll also be much more likely to pick up the concepts because you have a personal investment in implementing them yourself. Don’t be afraid to read and watch every tutorial you can find but definitely try to experiment on your own as well.

I’d start making boring games which have some data requirements beyond just displaying sprites. Hangman or other word games, for instance, should teach you how to efficiently handle large lists of words. If you delve deep into it you may start making editor extensions to manage word lists, which teaches you a crapload of useful things, and the knowledge extends to making editor tools for more advanced games.

If tutorials bore you, find something simple and fun to make, then learn as you develop it.

2 Likes

couldnt that be because universitys buy these courses in bulk for their students? (the number who bought it I mean)

The best way I could point anyone in the “right” direction is actually this forum. No, not asking questions like… “I am trying to do X, but it is not working”… To answer questions.

I started playing with Unity a while back and instead of asking, I answer. Answering does a few things;

  1. it helps other people (but that really isn’t our goal here)
  2. It helps us understand where a problem is, and how to solve it.
  3. It gives us something to do while at work when we really don’t have anything to do and the mindlessness of facebook is not really going to help us.
  4. If we answer wrong… There are about 9 million people who are going to set us straight, thus… achieving what our goal was to begin with.

So, to be blunt, don’t try to figure out your coding problems, until you have figure out a vast majority of normal problems. Usually we learn by doing, but if we get stuck, we are stuck. If you get stuck answering someone else’s problem, just move to a different problem. Eventually, you will see the answer you were trying to figure out for it.

After a while of that, you will see that answering your problems are not really complicated and learning will be much faster.

Questions I passed over (either because I didn’t know an answer, or didn’t have time):

Questions I did answer:

The big thing is to remember, always test what you are doing. If it doesnt do what is asked, there is no point to put it up on the forum at all.

1 Like

This is the jackpot when it comes to learning. Nothing solidifies knowledge like trying to teach it to someone else.