Learning C# -- Help?

Started by apljee, March 30, 2015, 08:14:23 PM

Previous topic - Next topic

apljee

I'm going to begin the dangerous journey into a deathly black pit that I call C#. (Atleast, that's what I imagine it to be like. I mean, CMD is black. Maybe there's a bunch of batch stelagmites that decorate the cave. Who knows?)

I have no idea where to start.
I also have no idea what I'm doing - I've looked through a few tutorials and I've also looked at the Rimworld code and it's basically jibberish to me. If I'm right, C# is vaguely similar to Java and I never even understood Java too well.

Anyway, all responses that pertain to the subject are welcome and appreciated. Thanks! :)

akiceabear

+1 - I'm also interested in suggestions on where to start.

NoImageAvailable

Online tutorials are pretty much the way to go, unless you're willing to attend a programming course/get a computer science degree. For specific questions Google can usually help. If you're new to programming in general finding a tutorial on the basics would probably help. But in the end you have to learn for yourself, nobody here can cram a neurotrainer into your head and make you magically good at programming.
"The power of friendship destroyed the jellyfish."

soulkata

If its your first programing experience, I would suggest going into regulas classes of programming. At least, until you master the basics.

apljee

Quote from: soulkata on March 31, 2015, 07:37:16 AM
If its your first programing experience, I would suggest going into regulas classes of programming. At least, until you master the basics.

XML doesn't really count as it's just filling out defs but my first programming experience was actually HTML5 and CSS about two years ago, then I did JavaScript but never really got a hold of it and I also tried Java, so this isn't my first programming experience, unless you mean my first programming experience in C#. :P

Quote from: NoImageAvailable on March 31, 2015, 04:45:34 AM
Online tutorials are pretty much the way to go, unless you're willing to attend a programming course/get a computer science degree. [...]

For the second part... read up, and I wish that there was a neurotrainer. Do you have any recommendations on where to learn at?

NoImageAvailable

Quote from: apljee on March 31, 2015, 12:12:51 PM
Do you have any recommendations on where to learn at?

If you're talking about courses, you'll have to find that out for yourself since I don't know where you live. If you're asking about tutorials, Microsoft has a number of basic tutorials https://msdn.microsoft.com/en-us/library/aa288436%28v=vs.71%29.aspx
"The power of friendship destroyed the jellyfish."

apljee

Quote from: NoImageAvailable on March 31, 2015, 02:49:53 PM
Quote from: apljee on March 31, 2015, 12:12:51 PM
Do you have any recommendations on where to learn at?

If you're talking about courses, you'll have to find that out for yourself since I don't know where you live. If you're asking about tutorials, Microsoft has a number of basic tutorials https://msdn.microsoft.com/en-us/library/aa288436%28v=vs.71%29.aspx

Thanks.

Architect

When I made the BetterPower+ mod for this game (Little while back now, but was one of two of the biggest mods for a while), I had literally never written any code in my life at all. My suggestion from my own path is to get Visual Studios or MonoDevelop, get ILSpy, and then take a look at the decompiled code behind RimWorld as step zero.

Towards actually accomplishing anything, pick a small addition to the game that you think you could manage but that is also along the lines of something already implemented in the game, and apply the decompiled code to your own. For me that was a wind turbine, as power creators were already in the game in the form of solar panels and geothermal generators, creating something along those lines was easy. Then to establish what I had learnt, I added the ability for the power output to fluctuate randomly, then I added the fluctuation to be weather dependent, then that there was nothing too close to it, etc, etc.

TL;DR:
Start with something small that is almost entirely a copy and paste job out of Tynan's RimWorld code, then build on top of that. Rinse and repeat, pushing the boundary ever further until you are writing your own base points to build on.
Check out BetterPower+ and all its derivatives by clicking the picture below.

It adds many new methods of power generation and uses for it, as well as other things such as incidents.


apljee

Quote from: Architect on March 31, 2015, 04:37:37 PM
When I made the BetterPower+ mod for this game (Little while back now, but was one of two of the biggest mods for a while), I had literally never written any code in my life at all. My suggestion from my own path is to get Visual Studios or MonoDevelop, get ILSpy, and then take a look at the decompiled code behind RimWorld as step zero.

Towards actually accomplishing anything, pick a small addition to the game that you think you could manage but that is also along the lines of something already implemented in the game, and apply the decompiled code to your own. For me that was a wind turbine, as power creators were already in the game in the form of solar panels and geothermal generators, creating something along those lines was easy. Then to establish what I had learnt, I added the ability for the power output to fluctuate randomly, then I added the fluctuation to be weather dependent, then that there was nothing too close to it, etc, etc.

TL;DR:
Start with something small that is almost entirely a copy and paste job out of Tynan's RimWorld code, then build on top of that. Rinse and repeat, pushing the boundary ever further until you are writing your own base points to build on.

Wow! I haven't seen you here in a while. I'd thought you'd vanished! Anyways, thanks, I'll be sure to take everyone's suggestions.

Architect

Quote from: apljee on March 31, 2015, 05:24:42 PM
Wow! I haven't seen you here in a while. I'd thought you'd vanished! Anyways, thanks, I'll be sure to take everyone's suggestions.

I pop up when I feel that there is something that I can contribute to the discussion. Feel free to PM me if you have something you think I may be able to help with, but bare in mind my response time may vary.
Check out BetterPower+ and all its derivatives by clicking the picture below.

It adds many new methods of power generation and uses for it, as well as other things such as incidents.