Jump to content

  • Log In with Google      Sign In   
  • Create Account

i cannot make up my mind what language i should use


Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.


  • You cannot reply to this topic
10 replies to this topic

#1   Members   -  Reputation: 137

Like
0Likes
Like

Posted 27 August 2013 - 08:54 AM

I cannot make up my mind on which language to use

 

I have decided to narrow it down to c , c++ and c sharp.

 

I need tip on wich 1 to use, I will need to be able to program all sorts of ios and mobile units such as android , windows phone and iphone.

And all sorts of other platforms.

Best wishes tobben



#2   Members   -  Reputation: 1820

Like
4Likes
Like

Posted 27 August 2013 - 09:22 AM

I would strongly advise against C.  Bjarne Stroustrup, the author of the original C++ language, offers a convincing paper about learning C++ vs. C:

 

http://www.stroustrup.com/new_learning.pdf

 

As for C#, I've programmed it a little.  I guess with the CLR you have the advantage of writing to multiple platforms fairly easily, but I'm sure others have far more experience in deploying C# apps.



#3   Members   -  Reputation: 1998

Like
1Likes
Like

Posted 27 August 2013 - 09:25 AM

Normally, iOS devices use objective-c.

Normally, android devices use Java.

I believe that C# is the only option for windows phone.

Your best bet is probably C#....from a quick google search it seems to have the most multi-platform libraries/dev environments that support android and iOS.

It is also very easy to transition from C# to java, so if you want to make android apps in java later, you can do so.

Unity is a game dev environment that can output to many platforms, and also uses C#.

 

But honestly....

If you have never programmed before, you are a long time away from making any kind of "hit" game....therefore, multi-platform should be the last thing to worry about.

What device do you personally own and use? For starters, just focus on that device. Programming is fun, but if you shoot too high, it can also be a headache. 


Stay gold, Pony Boy.

#4   Members   -  Reputation: 180

Like
2Likes
Like

Posted 27 August 2013 - 10:16 AM

I would go with C#



#5   Members   -  Reputation: 453

Like
1Likes
Like

Posted 27 August 2013 - 10:39 AM

Use unity, and go with C#. 

 

Learning C# will help you with other things too, not just game development. There are lots of interesting technologies that use C# for web, mobile, desktop applications, etc. It's also a nice language to look at IMO, and the .NET and MONO frameworks help beginners and pros not have to reinvent the wheel. 


jmillerdev.com

Follow me @jmillerdev


#6   Crossbones+   -  Reputation: 7022

Like
1Likes
Like

Posted 27 August 2013 - 10:59 AM

I cannot make up my mind on which language to use

 

I have decided to narrow it down to c , c++ and c sharp.

 

I need tip on wich 1 to use, I will need to be able to program all sorts of ios and mobile units such as android , windows phone and iphone.

And all sorts of other platforms.

Best wishes tobben

To be honest, you won't be able to do any real mobile development until you've had enough programming experience and likely learned all three of those.

 

So here's what language you should use:

  1. Get three people
  2. Each person represents one of the three languages you're considering
  3. Play Rock, Paper, Scissors
  4. The champion is the language you should use

 

Because honestly, fussing about which to start with is a waste of time. People might have various arguments (some of them even being valid) about which to start with as a beginner, but none of this matters if you don't just pick a language and roll with it until you have a decent grasp of it. Then move onto another language. Then another. Learn several. Master a few.


[ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

#7   GDNet+   -  Reputation: 13703

Like
1Likes
Like

Posted 27 August 2013 - 11:13 AM


Normally, iOS devices use objective-c.
Normally, android devices use Java.
I believe that C# is the only option for windows phone.

 

  • iOS API calls (System, UI, etc) are objective-C, so in that way it "defaults" to Obj-C. But it supports C, C++ and C# through monogame. Other languages too.
  • Andried API calls (System, UI, etc) are Java, so in that way it "defaults" to Java. But it supports C, C++ and C# through monogame. Other languages too.
  • Windows Phone 8+ API calls are C/C++ underneath with projections to the CLR and Windows Runtime, so in that way C++, C#, VB, and even HTML5/Javascript are all (more or less) equally first-class languages. C# was the preferred language in Windows Phone 7, and there was no native-code dev support.

 

The best ways to target all of these devices is either to use something like Unity, Monogame, or using C and C++ for the core simulation of your game, with a thin layer in the platform's default language to interact with the platform APIs (though some platform APIs might be made available directly to native code, such as OpenGL). The latter approach is really the only viable one if you want to really push the envelope across platforms and even on lower-end devices. For games that don't push quite so hard, Unity or Monogame will be the options that require the least platform-specific code.


Edited by Ravyne, 27 August 2013 - 11:13 AM.

throw table_exception("(ノ ゜Д゜)ノ ︵ ┻━┻");


#8   Members   -  Reputation: 194

Like
0Likes
Like

Posted 27 August 2013 - 06:40 PM

Coming from a C developer(ok, wannabe developer) I am attempting to make my 2nd game with C, the problems I've encountered is the lack of engines and only one or two here and there. C++ has more engines both for 2D and 3D and is generally the industry standard for PC games. It offers OOP, STL and many other features at the cost of complexity.

 

But you need to figure out which platform you are targeting, PC or mobile. Once you've figured that out, find the common ground between the mobile competitors so that your code is as portable as it can be so you can run it on say both Android and iOS with less hassle. 


Edited by farmdve, 27 August 2013 - 06:43 PM.


#9   Members   -  Reputation: 2389

Like
2Likes
Like

Posted 27 August 2013 - 10:44 PM

Of those, I'd suggest C# as a first language. As a managed language there's less you need to be aware of than C++, and it's higher level than C.

There's no reason to program in C when you can use C++, IMO. C's main use is where C++ compilers don't exist, i.e. embedded platforms.

#10   Crossbones+   -  Reputation: 6627

Like
3Likes
Like

Posted 28 August 2013 - 09:28 AM

Dont start with a mobile game.  You are just adding a layer of complexity for very little gain.  When learning, simplify as much as humanly possible.

 

Otherwise, flip a coin.


Edited by Serapth, 28 August 2013 - 09:29 AM.


#11   Crossbones+   -  Reputation: 4196

Like
2Likes
Like

Posted 28 August 2013 - 10:55 AM

As a beginner you're a long way off from creating cross-platform apps. Perhaps even mobile apps in general. I suggest targeting desktops initially, pick a platform you're comfortable with and focus on that.

 

I wouldn't recommend C/C++ to a beginner. They are well worth learning but not good beginner languages.

 

C# is a good language in general (perhaps my personal favorite) and cross-platform thanks to Mono, at the cost of a license fee. Java is similar in style to C# and happens to be the language of choice for Android apps.

 

Python is often touted as a good beginner language and I agree, it's a pleasant language. Somewhat tricky to make mobile apps with though. But definitely a good choice for learning the skills of programming (hint: programming is a transferable skill between languages - the one you learn initially isn't the be and end all. Any developer worth his salt knows dozens of languages, frameworks, etc to varying degrees of proficiency).

 

Then there's HTML+Javascript which is arguably the most portable solution; lots of apps are really just HTML5 and Javascript; you don't even have to make an app as such, just stick it on a webserver and then any device with internet access can get to it.


Edited by dmatter, 28 August 2013 - 11:00 AM.





Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.




PARTNERS