Hello.
Who on the forum for a long time probably remembers that some time ago I chose the programming language.
At that time, I chose between C++ C# and Python.
At that time, I finally chose C++.
But the range of my tasks has expanded, and now besides C++, I'm studying Java and Python.
And now my question is:
In which of the three languages is it better to solve my problems?
Here are the tasks and my thoughts:
1. Audio games:
To work, I need tools to open the window, to work with the keyboard, 3D sound.
C++:
C++ - ideally suited to this task. At skilful writing high productivity, weight of libraries, engines. But at the same time its complexity, but I was told by those who develop sound games, that knowledge of the basics and OOP for the first time will suffice.
Java:
Java is a cool language in terms of cross-platform. I can port my application to any platform. It's much simpler than C++ and the development speed is higher. I do not know how about performance, but Minecraft works successfully, and the alpha version of Minecraft was developed in 6 days.
Python:
Python - maybe I'm wrong, but for shooters, especially large, even sound, Python is not suitable.
I saw a lot of strategies, here they work perfectly, when in real time there are few events. But starting with the shooters, according to my feelings, performance is not enough. Who knows the performance of Python correct, if I'm wrong.
2. MUD games:
MUD game is an online multiplayer text game. The bottom line is that there is a client, usually a lot of customers and they already exist, some work using the protocol telnet, and we only write the server. And these clients communicate with the server.
In MUD there is a big world from locations, mobs. The essence of the textual interaction. When events, etc., the server sends the information to the client, and the client displays it.
For example, if a character has entered our location, the server sends information about this to the client, and the client displays:
Ivan came from the south.
Moreover, this text is implemented not in the client, but on the server. Ie the server sends the client the text that the client should output.
C++:
C++ - ideally suited to this task. In C + +, there is a work with sockets necessary for this task, as well as many MUD engines.
Java:
Java - I do not know how Java with sockets and MUD engines, but there are rumors that Java has developed and quite successfully MUD games.
Python:
Python is a language that has both sockets and MUD engines. But I'm not sure if there is enough performance for this task, and whether Python is also effective and reliable for this task.
My short opinion about each of these languages:
C++ is a productive language that allows you to learn not only coding, but also programming. It briefly shows how everything works inside. Memory, for example. It is effective for solving almost any task of an applied and systemic nature. Because of its tools, it is very effective for developing large projects. Here the programmer relies not on language, but on himself, but because the programmer can control the program himself, and increases reliability and productivity.
Java is a powerful tool for developing almost any application. Performance is not sure if it's high, but as we know, Minecraft has enough. Already built-in library allows you to solve many problems.
Python is a good language for automating and solving small tasks. If not right, correct me, but my IMHO, that Python is not suitable for solving large problems.
Who can say anything, I will be happy to listen.
Thank you in advance!
Pages 1