ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Is it wise to learn two toolkits like GTK+ with gtkmm, wxWidgets, or QT? Look I am C++ fans and I do like all of them. But maybe I learn two of them? Is it wise to do so? Or should I look to another language like java, perl, python, c#? Or should I speliaze for one of them????
It depends what you want to accomplish... if it's just for learning purposes, so any language or API will do . If it's more web related, Java is neat and not so far away from C++ regarding syntax. Tell us what you are willing to do first
Here's what I want to do...... I want to be desktop developer who can make desktop applications. I use Gnome desktop so ( maybe ) QT would not be my choice. I have c++ background. So there are two GTK+ bindings that interesting, that is gtkmm and wxGTK ( wxWidgets that use GTK+ ).
What I like from gtkmm is this is the most popular bindings for GTK+. You can integrate applications written from this library easily into Gnome desktop.
Ok.... about wxWidgets...... you know, Borland release C++BuilderX that runs in Linux platform. It use wxWidgets library to make GUI stuff. Although now there is no wxWidgets preview ( GUI support ) for Linux platform now, some people in Borland C++BuilderX in newsgroups told me that there will be wxWidgets support in next release for Linux platform..... Borland has a good name in software development industry.
I am university student. Right now I am confused with this options. I don't know what I have to choose. If you choose wxWidgets, surely you will make programs easily with C++BuilderX and it is a nice IDE too. But you miss Gnome support for this things.......
If I choose gtkmm, there is no commecial support so I really depend on community with this stuff. I think this is okay as long as you make applications for small to midrange business. But for enterprise......?????? I believe Borland has support for enterprise much more better that GTK+ community. But I can make Gnome program easily...... with this library........
I think about this solution........ Learn both of them....... So you can make softwares for Gnome and don't miss enterprise oppurtinity...... with C++BuilderX.
That is my problem number one. What I scare from this solution ( learn both of them ) is that I miss chance to learn another programming language, like Java, python, perl, and C# ( via Mono ). Well, I want to learn MySql, postgresql, COBRA, xml and a lot more stuff too. Imagine how many stuff I want to learn.
Ideally I want to learn ALL THIS STUFF. But that is impossible because you only got 24 hours per day.
What I want to accomplish????? I love LInux desktop but I have to realistic that in my lifetime Linux will never beat Microsoft in desktop market so I decided to focus on programming or developing for server stuff. ( Yeah, I know in beginning of this post, I write I want to make desktop applications but this is I want to focus ). This is where I believe Linux will beat M$.
If everybody is going to develop server applications due to your reasoning how should the GNOME desktop ever get more apps?
You shouldn't care about the toolkits; background stuff is more important.
If you still care, a GTKmm application can be developed in very short time using Glade and Bakery.
Some tricks are not very well documented in GTKmm but by using the examples in the book, a basic GUI can be copy'n'pasted within a few days. There's also an IRC channel and a mailing list for questions.
wxWidgets is also nice - I like the event table makro, for example. However, developing GUIs in wxWidget wasn't as nice as in GTKmm but I admit I didn't look very deep into their layout mechanism. Using a GUIDesigner might be necessary. But its similarity to Microsoft stuff might be useful for you.
The ability to develop native looking apps in wxWidgets is also nice but this is also a little bit confusing in the beginning.
In fact, your concerns are completely void. I was able to get an idea about each toolkit in a rather short time, IMHO, so you will too.
Thus you should learn both. I also find it easier to learn new stuff when I can compare two or more options. Maybe you will feel the same?