• Guest, before posting your code please take these rules into consideration:
    • It is required to use our BBCode feature to display your code. While within the editor click < / > or >_ and place your code within the BB Code prompt. This helps others with finding a solution by making it easier to read and easier to copy.
    • Don't share a wall of code. All we want is the problem area, the code related to your issue.


    To learn more about how to use our BBCode feature, please click here.

    Thank you, Code Forum.

What is the best way to create desktop applications?

Rondy

New Coder
So I am looking to make a math application that would help me with my Math assignments for school. I have seen a lot of people use c++ on performance heavy applications which I do not think mine necessarily will be. And since I do not know how to code in c++ and I know that the language has a big learning curve I do not think that is the way to go. I know you also can create windows applications with c# and dotnet but I would also like to share the application with my friends so I would like for it to be multi platformed. Then there are thinks such as electron and haxe but I have heard they do take quite a bit from your computer. I would like to hear your input since I have tried to do some research but have not been able to come up with a clear cut answer.
 

Johna

Frontend developer
Staff Team
Guardian
You could also make it online with JavaScript. It should work on every device has internet and a not-so-old browser.

Idk if you specifically want is as an app? I'm just into web development, so that's why I suggested it.
 

BorkedSystem32

King Coder
Since this is a desktop application, I would keep Python out just now because applications written in that can be slow.

Based on what you've said, I think your four best choices are: C, C++, C#, or Java. They're all powerful languages with a plethora of libraries, frameworks, and APIs to help get your application up and running - especially for mathematics. The reason I recommend them all too, is because they're all portable languages(even C#).

There is a software framework called Mono that allows for C# implementations on Mac and Linux systems as well as Windows. There is also Monodevelop which allows you to work with C# and export these projects to non-Windows systems.

C and C++, to my knowledge, you will need to build and compile them for each system individually. An executable for Windows, one for Mac, one for Linux, you get the idea. But if used well, they're both really great and fast languages, capable of doing a lot of calculations.

C++ can be performance heavy but that is only if: the code is unoptimised or there is a lot going on in the application(you'll find this is the language of choice for video games because of the multitude of things it's capable of, hence the performance). When you're starting with C++, the language retains most features from C and has many similarities to Java; it's when you start going deeper into its more complex features like templates and when your program begins to get bigger, that's when the problems start showing. C++ looks complex because of its syntax, but don't be afraid to face it.

Java is guaranteed to be installed on most systems and the language is designed to be compiled into one executable that can be ran on any system. I would say it's good for math too, as it has standard libraries for math(just like C and C++) and considering many banks/accounting firms use it in their systems, I would say it's a good choice too.

Hope this helps!
 

wesleyhindley

New Coder
I develop applications for Windows, OSX/MacOS, and Linux.

I prefer Lazarus/FreePascal

because it gives me the ability to create native cross platform applications that actually work and look like they should.

Most of the time I develop on my MacBook, cross compile, test on the target to make sure everything works, and off it goes.
 
Top