Sign in to follow this  
Ntvu

C++ & Other Languages

Recommended Posts

At the moment I'm still learning about server scripting, like I've mentioned in my previous posts, but soon I'll be moving back to programming desktop applications. I have previously written some desktop applications before in C++ and Visual Basic. So far my largest project is a simple 2D shooter written in C++ and SDL. Anyway, I'm not here to discuss about server scripting, but instead about programming desktop applications. I've worked with C++ before, and it is NOT an easy language to use. I really do like the flexibility (meaning not many limits) and speed that C++ offers me, but it's an incredibly hard language to use for desktop applications. It often seems like I'm fighting with the language rather than using it to program. I've had problems in C++ before with strings and pointers. Therefore I'm considering on using another language to write desktop applications in. The problem is, I'm not sure which. Is Python a good choice? (Be right back, I have to eat dinner)

Share this post


Link to post
Share on other sites
Anything that is managed is usually easier, ie Perl, Python, Java or C# if you're into that "stuff".

Not to mention they're mostly portable, depending on how you use them.

Share this post


Link to post
Share on other sites
If you're on Windows, C# and .Net.
For portable GUI, I prefer Java or web frontend, YMMV.

I've only used Python for console applications. While it likely has GUI bindings, I personally haven't heard as Python being recommended for that purpose.

Share this post


Link to post
Share on other sites
C/C++, best language out there IMO, except assembly that is. Huge community, wide ranging support, highly portable to most OS's. check out cboard.cprogramming.com if you need a community to get started with.

Share this post


Link to post
Share on other sites
Quote:
Original post by abachler
C/C++, best language out there IMO, except assembly that is. Huge community, wide ranging support, highly portable to most OS's. check out cboard.cprogramming.com if you need a community to get started with.


There is no best language. If you really believe that then you don't know what you are talking about.

There are better languages to start with, and in my opinion C++ is not one of them.

Share this post


Link to post
Share on other sites
Quote:
Original post by abachler
C/C++, best language out there IMO, except assembly that is.

How is assembly the best language out there? Pure assembly code is a maintanance nightmare.

Share this post


Link to post
Share on other sites
Quote:
Original post by Ntvu
(Be right back, I have to eat dinner)


For future reference, only extremely busy message boards (nothing on GDNet qualifies) should be treated as real-time communication. Threads here are often meaningful for several days, and users are spread across the whole globe (i.e. most if not all possible time zones), so noone really cares if you go to have a meal :)

Share this post


Link to post
Share on other sites
Quote:
Original post by pcwaddell
If you want to make applications i would try Java. its so easy a caveman could do it.


This is not actually true. Unfortunately, the belief that it is is so prevalent that the industry suffers greatly as a result. :(

Share this post


Link to post
Share on other sites
Quote:
Original post by Antheus
Quote:
Original post by abachler
C/C++, best language out there IMO, except assembly that is.

Assembly is not a language.

It's not? Does that mean all the hours I spent reading "The Art Of Assembly Language" have been in vain? :(

Share this post


Link to post
Share on other sites
Quote:
Original post by pcwaddell
If you want to make applications i would try Java. its so easy a caveman could do it.

Yeah there are some people that claim Java makes programming so easy it shouldn't even be considered "serious" programming-LOL!
Anyways I recommend you stick with VB.Net for desktop apps since you mentioned you already used that in the past.

Share this post


Link to post
Share on other sites
I would prefer C# over VB.Net; VB5 had sense to exist, but VB.Net is only a bad copy of C#.

After learning how to use some stl components (google for std::string, std::vector, std::map) you should not have too many throubles sticking with C++, if you already have some experience with pointers and references.

PS/Quote: There is no language called "C/C++".

Share this post


Link to post
Share on other sites
Quote:
Original post by Ntvu
(...) but instead about programming desktop applications.

(...)

The problem is, I'm not sure which. Is Python a good choice?

What kind of desktop applications do you intend to create?

Personally, I frequently use Python for small file conversion and parsing tools and for prototyping algorithms, game ideas or image processing. It's easy to learn and use and yields results pretty fast in terms of development time. For GUI applications however, I haven't really found a good click-and-go approach to create interfaces with such as Microsoft Visual Studio offers, so that's where I often use C# instead.

Share this post


Link to post
Share on other sites
If you've tried to get into C++ and found you didn't like it or had difficulty working with it (and don't worry, you're NOT alone), and you want to write Window apps?...

Then may I recommend C#.

I'm a C/C++ nutter and it took me a while to even try C#, but I'm glad I did. It's a nice language. Easy to learn. Almost as powerful as C++. And you can write highly sophisticated Window apps in no time.

It's a beginner’s language, so you will be "forced" to wear a safety harness so as not to get yourself into too much difficulty. I.e. accessing memory directly, although possible, is frowned upon by the language.

Also... Since C# is well... Based on C++…You may well improve upon some of the C++ skills you currently possess.

If its high performance apps you’re after, C# does support DirectX. Personally, I intend to use C# to write tools and C/C++ for the core code, but, so I hear, DirectX apps written in C# are still pretty damn fast and efficient.

And finally, even if you do decide to go back to C++, you can hook C++ code to C# in various ways, giving you the power of C++ and the ease of use of C# to write Windows driven software on the fly.

Good Luck anyway... Whatever you decide to do!

Share this post


Link to post
Share on other sites
Quote:
Original post by DevFred
Quote:
Original post by Antheus
Quote:
Original post by abachler
C/C++, best language out there IMO, except assembly that is.

Assembly is not a language.

It's not? Does that mean all the hours I spent reading "The Art Of Assembly Language" have been in vain? :(


yes, its definitely not a language. different "assembly" languages for different platforms, and yes reading a book like that is largely a waste of time, especially if it targets x86 assembly language, which is the worst i have ever seen. programming in assembly say for arm processors is much nicer. Then again, i dont get excited about programming in some inelegant way. I do "program" turing machines and post machines for fun, but they are just mathematical abstractions.

when i was younger i thought programming in assembly was kind of an elite hacker thing until i realized its a lot cooler to get work done and write interesting programs that are beautiful from a design and algorithmic standpoint, rather than worry about 1% performance increases by switching a variable to a certain register in one function.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this