Learnt C what next?

Started by
6 comments, last by KnolanCross 11 years ago

Hey guys,

I've learned C and can confidently program, compile and run command line programs.

I want to learn GUI programming for Mac/iOS so I can make games/apps/programs of a graphical nature.

Is learning Objective-C a good next step? What's a good resource for doing this?

Thanks for the help!

Advertisement

Well - I would suggest stepping up to c++ with OOP programming and then download the new Qt framework for GUI - it is a great cross platform develpment

library for GUI and you can get a windowed application up and running with it no time

http://qt-project.org/downloads

If you're wanting to target Mac/iOS exclusively, then yeah Objective-C is probably the way you'll want to go.

My Games -- My Music 

Come join us for some friendly game dev discussions over in XNA Chat!

Don't split the banana, he speaks words of wisdom. OOP is a must in today's programming world. Both C++ and Objective-C support OOP. Personally, I think C++ would open up lots of new doors elsewhere, but If all you want to do is OSX and IOS than Objective-C is the way to go.

Stay gold, Pony Boy.

You do not need to know objective C in order to do Development for Mac/IOS. I mean just basic Objective C should get you going. All the code cane be implemented in C or C++

Making games of a graphical nature doesn't really need a GUI library. Just set up an OpenGL rendering context, or a 2D canvas in any way possible (Java, Obj-C, C#), then you can easily use C for the rest.

How good are you at C? If you have spent quite a while mastering it, then I don't see a problem why you cant use it.

Especially since the popular way to develop games nowadays is using the Component Entity Model which favors composition over inheritance and so using an OO language is not necessary.

That said, C can handle object orientation perfectly fine which you can see in pretty much any C GUI library (Motif, Gtk+, etc..)

In other words, you don't need to spend time learning a new language and you can start making software. 80%+ of the UNIX world writes user-land programs in C so it is certainly capable.

http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.

i think c++ is better because it has a better memory and hardware management.

I know: C,C++,C# and a bit LUA.

If you have learned C enough, you can go and code your games with it. After all, there are some C libs that will compile for IOS/Android, such as allegro and orx (they can be found here: http://alleg.sourceforge.net/docs.html and here: http://orx-project.org/).

I don't believe that you need to learn OO in order to be a good programmer or to write a good system. OO will introduce you to some great programming techniches - such as heritage and, most importantly, modularity - but those are not an OO exclusive feature, you can use both concepts in any language you use.

So, my advice is: if you like C and are confident on using it (and by that I mean that you should have knowledge on how it handles memory, the different memory regions and how to debug code to find your errors fast enough), try using it for a while. If you are feeling that the language is delaying you, change it.

Currently working on a scene editor for ORX (http://orx-project.org), using kivy (http://kivy.org).

This topic is closed to new replies.

Advertisement