View Full Version : learning on how to develop graphical apps

16th December 2004, 09:56 AM
Hey everyone,

So far ive been successful at setting up my own linux machine to do a number of things. But i just get tired of being a "user". I want to learn how to make my own applications. The applications i want to make would be something similar to webmin, a graphical tool to configure server services. Maybe something similar. But all my programs would be graphically based to help out linux begineers...

I do know a little programming. Pascal if youre wondering... Im also decent with scripting like html and shell scripts... But im confused on where to start... So if someone could tell me a good book to buy on linux development, that would be VERY nice. Or maybe a good language to learn. Im assuming most people use C++ or whatever.

-thanks a bunch!

16th December 2004, 04:50 PM
Yes, C++ is a good choice. Java is a tad easier but also a bit slicker IMHO. Graphical apps can be easily made with Glade2. It's a very nice rapid GUI builder, so check that out! That way, you don't have to code the GUI by hand. Using C++ or Java (using JavaGnome and GCJ) you can use these Glade templates to create the whole app.

Depending on experience, one thing you'll have to learn is Object Oriented programming. Using this paradigm, you will write better and cleaner code than just learning scripting.

Also a good choice is Python. It's a high level scripting language, a lot of the Red Hat tools are written with it. They don't look too bad. Though I think it's not a good choice for very large apps.

Don't forget there are already a lot of applications that probably do the same thing. So check sourceforge.net for collaboration work.

16th December 2004, 05:33 PM
hmmm i think i will check that out myra, thanks!!

16th December 2004, 10:50 PM
Also check out the Fedora Project config tools site (http://fedora.redhat.com/projects/config-tools/). Server control tools like the Apache config tool are written in python (http://python.org). You can also use Glade2 interfaces for python applications.

For examples check out the /etc/system-config-* directories. The source is there.

I'm trying to learn a little python to at least understand how some of these tools work.

18th December 2004, 10:20 PM
If you want to take programming serious (as a beginner), I would suggest Java. You can create OS-independent applications, so you don't need to port anything. You should at least have some decent programming experience before you're even going to develop OS-dependent stuff.
Java is really hard to understand and to learn, when you're not devoted to it. It really takes a lot of time learn this language. Anyway, good luck! And have fun ;)

19th December 2004, 11:29 AM
If you want to undersand GUI development learn at least the basics of GTK.

C++ language combined with gtkmm(http://www.gtkmm.org) gives a great GUI app development.
You can find good tutorial and documentation there.
If you will start with Glade you'll have no idea what you are doing.
(for plain gtk you need to use C)
You can check some of my projects to see what I'm talking about -> http://ghaefb.r8.org/projects.html

Python and Perl are also good start.

As for tool for development I recommend Anjuta or any other good text editor :)
nothing else..