Programming Languages: Python, C for Games & Apps

  • Thread starter Thread starter Cake
  • Start date Start date
  • Tags Tags
    Programming
Click For Summary

Discussion Overview

The discussion revolves around the programming languages Python and C, particularly in the context of developing applications and games for PC and mobile platforms. Participants explore the suitability of these languages for projects that aim to teach mathematical and scientific concepts through interactive storytelling and game design.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant is studying Python and C to build a foundation for physics courses and is curious about their applicability in game design and mobile app development.
  • Another participant suggests that Java is the primary language for Android development, while Objective-C and Swift are recommended for iOS.
  • It is mentioned that C/C++ or Java are commonly used for Windows development, with C# also being popular in Steam titles.
  • A participant notes that once a good foundation in one or two languages is established, learning additional languages becomes easier, primarily due to differences in syntax.
  • One contributor emphasizes the importance of understanding concepts, data structures, and algorithms in C, even if one later transitions to languages like C++ or Java.
  • Another participant highlights that the choice of libraries often poses more challenges than the programming language itself, as libraries can have platform-specific quirks and documentation issues.
  • Discussion includes considerations of programming styles (e.g., object-oriented vs. structured) and development methodologies (e.g., rapid prototyping vs. waterfall).
  • There is mention of the abundance of literature on coding practices, project management, and related subjects, suggesting that selecting the right resources can be overwhelming.

Areas of Agreement / Disagreement

Participants express a range of views on the best languages for specific platforms, with no consensus on a single approach or language. The discussion remains open-ended regarding the best practices and resources for learning programming in the context of game and app development.

Contextual Notes

Participants acknowledge the variability in project requirements and personal learning styles, which may influence language choice and development practices. There is an implicit recognition that the discussion does not cover all possible languages or frameworks available for game and app development.

Cake
Messages
100
Reaction score
16
I'm studying Python and C right now to build a good base for my physics courses as an undergrad. However, I'm also interested in languages involved with PC game design and Android/iOS devices. Was wondering if python and C will meld well with the programming required to undertake projects like those and what languages those projects entail. Projects I've thought about are games designed to acquaint people with mathematical and scientific concepts, and just outright storytelling. Thanks ahead of time for any assistance.
 
Physics news on Phys.org
For Android then Java is the language of choice athough other Java based languages like Scala or Clojure can be used.

For iOS then Objective-C or more recently Swift.

For Windows then C/C++ or Java and others...

For MacOSX then Objective-C, Swift, C/C++ or Java and others...
 
jedishrfu said:
For Windows then C/C++ or Java and others...
I've heard C Sharp is used a lot in Steam titles. I guess that falls into other. Does the "other" category typically depend on what the person is trying to do with their product?
 
I found that once I had a good basis in a language or 2 you can pick up on another one really quickly.
Just comes down to the nitty gritty syntax and what not which is easy enough to handle :)
Most of my google searches end up <some function> in <some language> :
 
OP, the combination of Python and C is an excellent choice for starting out (one high-level flexible language and one middle-level high-performance language). Later you probably want to replace C by something else (e.g., C++ or Java), but it is still very helpful to obtain a deep understanding of the concepts, data structures, and algorithms which can be expressed already in the C language. This information is not wasted when going to more powerful languages.
 
jedishrfu said:
For Windows then C/C++ or Java and others...
C# is used a lot in Microsoft products.
 
Often the language isn't the big part of the pain on a project. Often it's the speciality libraries that will consume your time. For example, in Windows, you will get some kind of library with window features and functions. Whatever library you use will be where you spend a lot of your time. And that will be specialized to that library on that platform, because it will have quirks and weirdness. And may be documented less well than ideal. And when you join somebody else's project, you may not get a choice on what libraries you are using.

As cpscdave suggests, once you learn a language or two, the next language is a lot easier. The only thing is, will you learn a given style of programming? For example, will you learn object oriented? Will you learn structured? Will you learn some other approach? And will you learn development cycles like rapid prototyping, classic waterfall, and so on? That will depend a lot on what the projects are that you may join.

There are a ton of books out there on any of these subjects. It will be tough to figure out which one to read first. One very good general book on doing a good job at the coding task is _Code Complete_ (now in the 2nd edition) by Steve McConnell. Excellent book, highly recommend. Once you get some of the basics of coding well, then go find books on the specific task or approach.

There are lots of other subjects: documentation, testing, interface design, source code control, all up and down your arm with a long shopping list. You can't learn them all at once, so you need to pick what you have time for now.
 

Similar threads

Replies
2
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 397 ·
14
Replies
397
Views
22K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 133 ·
5
Replies
133
Views
12K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 8 ·
Replies
8
Views
2K
Replies
2
Views
2K