Return to “Suggestions”

Post

Re: high performance programming

#2
jonathanredden wrote:What is the best programming language(s) for fast running software? (video games, websites, etc.)
... I don't understand why websites is in there.

But for pure performance it's either ASM or C.
However, pure speed doesn't make the entire picture.

You also need to note the ease of programming, speed of testing, available toolsets.

Each language has a use case. Knowing these use cases allows you to select the correct language for the job.

For instance:


Webpage front end, allowing sites to do complex user interactions? Javascript. (This is really the only valid use case for Javascript)
Enterprise level programming to get you a job? Java (even though I hate this, it's true)
Server side page generation? PHP. (PHP is designed to create HTML from user input and server content, such as databases)
Low intensity gaming, or anything to do with Unity? C Sharp (C#)
Complex server with threading and file manipulation? C (C is incredibly fast and good for dealing with low level programming)
Quick script to run on a linux server to get a task done? Bash, or Perl (Perl and Bash are great and available basically anywhere on linux/unix)
Complex science or math, that doesn't need to be run often? Python (Python has some of the best libraries for this work)
°˖◝(ಠ‸ಠ)◜˖°
WebGL Spaceships and Trails
<Cuisinart8> apparently without the demon driving him around Silver has the intelligence of a botched lobotomy patient ~ Mar 04 2020
console.log(`What's all ${this} ${Date.now()}`);
Post

Re: high performance programming

#3
The best language is the one you can actually get the things done that you need...

And depending on experience there are multiple answers (as name by Silverware).

Professional engine developers (like Crytek) use C++ with ASM for certain performance critical parts.
Basic suggestion to the eager but yet inexperienced gamedev: get Unity and its numerous tutorials.

Often I hear the suggestion to get into C++ to learn "real" game programming (wich is actually revolving around desktop games and not mobile gaming).
But if you dont get more then a simple pong clone implemented after a week, it might discourage the developer.
Better is to get a into higher level language revolving around a readymade game engine, to have more fun with the progress.
C++ etc are things you can get into still later.
Post

Re: high performance programming

#4
Yeah, for general learning i'd use some engine with a c derivate programming language for scripting unity with c# and unreal alsp uses some c# iirc and go to "unassisted" c# (with visualstudio, because that includes a lot of interface building blocks from the getgo) or just straight up c/c++ with some IDE or if you are brave just a text editor and gcc/g++.

A faster way would be to go to your next best university and take a base course or two (eg datenverarbeitung 1 from my uni)
gives one something concrete to do and to archieve (which i often lack to start doing something)
Post

Re: high performance programming

#5
For the most part, the performance will be based on your code, not on the language, especially with modern compilers changing a few things behind the scenes for more efficient compiled code.

I use C# because it's the one that most fits the way I work things through in my head, and lets me prototype quickly. This typically makes it the best language for me.

I'd recommend finding a language that fits the way you work, and then learn how to work well in it.
Games I like, in order of how much I like them. (Now permanent and updated regularly!)
Post

Re: high performance programming

#7
DigitalDuck wrote:For the most part, the performance will be based on your code, not on the language, especially with modern compilers changing a few things behind the scenes for more efficient compiled code.
Up to some point yes.
But with, for example, java you run into the capabilities of the virtual machine in the more perf hungry regimes where you are limited by the characteristics of the oracle made code and not your own.
Of course, you run into that border faster when your own code is bad.
Post

Re: high performance programming

#9
Cornflakes_91 wrote:Up to some point yes.
But with, for example, java you run into the capabilities of the virtual machine in the more perf hungry regimes where you are limited by the characteristics of the oracle made code and not your own.
Of course, you run into that border faster when your own code is bad.
What I'm saying is that well-written LOGO code will run faster than poorly-written ASM. :mrgreen:
Games I like, in order of how much I like them. (Now permanent and updated regularly!)
Post

Re: high performance programming

#11
DigitalDuck wrote:
Cornflakes_91 wrote:Up to some point yes.
But with, for example, java you run into the capabilities of the virtual machine in the more perf hungry regimes where you are limited by the characteristics of the oracle made code and not your own.
Of course, you run into that border faster when your own code is bad.
What I'm saying is that well-written LOGO code will run faster than poorly-written ASM. :mrgreen:
Well written JS is faster than poorly written ASM.

But taking the same code, ASM will be faster than C, C will be faster than C++ (if you use the C++ libs, those are horrid), C++ will be about the same as C# from what I can tell. All of these will be faster than Perl, Perl and Java are likely to be about neck and neck on speed, but perl will take FAR less resources.
Then comes JS, and finally uncompiled Python.
Compiled python depends too much on what it is and how it's compiled.

But all of these languages can be fast enough, depending upon what you are doing.
And in inverse order of speed is typically order of ease of use/learning.
°˖◝(ಠ‸ಠ)◜˖°
WebGL Spaceships and Trails
<Cuisinart8> apparently without the demon driving him around Silver has the intelligence of a botched lobotomy patient ~ Mar 04 2020
console.log(`What's all ${this} ${Date.now()}`);

Online Now

Users browsing this forum: No registered users and 9 guests

cron