ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
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.
I'm not entirely clear on what you are asking. However let me explain a little about Qt, since I use it a little.
Qt is an application framework that supports GUI development
The underlying language of Qt is C++
So Qt provides you with the core classes to help you develop your application
However, Qt does not provide you with the code editor, debugger, version control etc., but these can be easily obtained by selected an IDE, for example KDevelop, (or even QDevelop a cross platform IDE developed using Qt specifically for Qt development).
The combination of these tools will give you a powerful development environment, the beauty of it is that you are not tied into any specific tool, so if (for example) you decide that KDevelop is not the IDE for you then try Eclipse, the rest of your tool chain will still work.
Development under the Windows tools is not so very different (although I can't specifically talk about .Net having never used it), you have an editor, you save the code, you use help files to understand which classes and methods you need to use, you compile it, you link it, you run it, you debug it, you profile the code for areas to optimise. The process is essentially the same.
But what I meant is when one learns on Windows. Generally one is learning one IDE. How to use the code within that IDE. Say VB.NET is VB.NET and C#.NET is C#.NET with GUI and all. I understand the shortcomings. In having a single IDE / technologyto work with. But not what i meant. Meant that VB.NET generally does not have two things to learn. Maybe just seems that way but here one learns say C / C++ / Python / "insert language here", and has to learn again to use the toolkit. More confused how would one apply say A hello world from no GUI C++, next to a hello world in C++ / GTK or C++ / QT or C++ / toolkit of choice. One now has to learn the toolkit to be used with the given language.
For a starter it is like "Should i learn C++" ? Or C++ + toolkit? I know a toolkit is just that visual GUI objects not any language it wraps around a language and so. What was able to understand at least in the MS windows land. One can write a console app but it is still within the one thing approach. In Linux land one has a strictly say a C++ no Gui. If one needs a "GUI" they can use for respective desktop QT/ Gnome / "insert here." So confused of learning now the language. Next learning how to say speak with C++ and the objects. Can someone write a few line "Hello world" in C++ (Console) next C++ / GTK and last C++ / QT. To see how it differs. The sytax that remains when going from toolkit to toolkit. I have some experience with VB on the basic interpreter. My head has become dilluted because of early exposure to the Basic interpreter within the vb-3-.NET IDE.
Quote:
Originally Posted by graemef
I'm not entirely clear on what you are asking. However let me explain a little about Qt, since I use it a little.
Qt is an application framework that supports GUI development
The underlying language of Qt is C++
So Qt provides you with the core classes to help you develop your application
However, Qt does not provide you with the code editor, debugger, version control etc., but these can be easily obtained by selected an IDE, for example KDevelop, (or even QDevelop a cross platform IDE developed using Qt specifically for Qt development).
The combination of these tools will give you a powerful development environment, the beauty of it is that you are not tied into any specific tool, so if (for example) you decide that KDevelop is not the IDE for you then try Eclipse, the rest of your tool chain will still work.
Development under the Windows tools is not so very different (although I can't specifically talk about .Net having never used it), you have an editor, you save the code, you use help files to understand which classes and methods you need to use, you compile it, you link it, you run it, you debug it, you profile the code for areas to optimise. The process is essentially the same.
Last edited by MystikMitch; 05-17-2008 at 11:31 PM.
Maybe just seems that way but here one learns say C / C++ / Python / "insert language here", and has to learn again to use the toolkit.
Well yes, because those languages are designed as general purpose programming languages. If you want to write more "advanced" applications, then you're going to need to use (and hence learn the details of) external libraries. Edit: this is not specific to Linux.
Quote:
More confused how would one apply say A hello world from no GUI C++, next to a hello world in C++ / GTK or C++ / QT or C++ / toolkit of choice.
I don't understand what you mean by "next to" in this context.
Quote:
For a starter it is like "Should i learn C++" ? Or C++ + toolkit?
Well, you'd need to learn the language first.
Quote:
So confused of learning now the language.
I don't really understand why. Once you learn the concepts (usually though, the concepts are generic - I mean they are applicable to many languages) and syntax of a given language, you should be able to learn how to make use of libraries and so on.
I was able to think through and make sense of some of this. Concept similiar the only difference is how it is presented. Nevermind I got it from sample the style is similar.
Codes:
Code:
{
g_print ("Hello World\n");
}
Code:
/* Hello World program */
#include<stdio.h>
main()
{
printf("Hello World");
}
Quote:
Originally Posted by Nylex
Well yes, because those languages are designed as general purpose programming languages. If you want to write more "advanced" applications, then you're going to need to use (and hence learn the details of) external libraries. Edit: this is not specific to Linux.
I don't understand what you mean by "next to" in this context.
Well, you'd need to learn the language first.
I don't really understand why. Once you learn the concepts (usually though, the concepts are generic - I mean they are applicable to many languages) and syntax of a given language, you should be able to learn how to make use of libraries and so on.
Last edited by MystikMitch; 05-19-2008 at 10:39 AM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.