I have a question:
What programming language is better to use for game development? C# or Python?
I recently asked a similar question, but here will point more concrete.
1. I want to develop audio games, more paying attention to the game logic, and to think less about low level.
2. My games will only work on Microsoft Windows.
C# only works in net framework, but Python has difficulties with compilation and performance.
What would you recommend?
Thanks in advance!
2 (edited by magurp244 2017-02-23 05:17:12)
Its understandable that you may be feeling a bit indecisive between the two, but all languages have their own strengths and weaknesses. Ultimately it doesn't really matter which you pick, as most languages share certain similarities like loops, variables, arrays, etc. which makes it easier to move from one language to another. Many programmers inevitably pick up other languages as they go, so worrying about feature sets at this point isn't all that relevant. Whats really important right now is for you to pick the language your most comfortable with and to get started on something, anything really. The more you learn the easier it gets.
For what its worth I recommend Python, full disclosure though I'm a long time Python developer. Everyone always recommends the language of their choice, which is why such "which one" questions tend to fly sideways all the time. So again, go with what your comfortable with.
In Python, poor performance, I am afraid that I can not realize their objectives. For example develop shuters
All languages are prone to poor performance, it really depends on how you write and structure the program and often developers will work through and optimize the code to clean up to improve efficiency and fix bugs. Python itself doesn't inherently have poor performance, its built on top of the C language, and like many other languages has certain strengths and weaknesses. Its quite possible to build 3D or 2D engines with it, for example the engine I picked up for my own [Audiocraft Prototype]. How its implementated effects what results you get with some methods giving better results than others, knowing where to cut corners and write things more efficiently is all part of the job.
As I said, all that really matters right now is to pick a language your comfortable with to get started, it doesn't have to be Python.
HI will add my 2 cents.
Forget completely about performance. It is not important.
At this point, what is most important is that you pick a language that you will enjoy spending a lot of time working on. After you go through tutorials for the language, the best thing you can do to learn the language is spend a lot of time writing or reading code.
In reality, most performance problems end up being due to poor software design or poor coding. However, the best way to learn good design and good coding is by writing and reading a lot of code. Compiler and Interpreter errors and warnings are part of the dues that every developer pays to become proficient at their skill.