I'm a little bit confused about these two terms, can somebody explain what is the difference, for example Eclipse is an example of IDE, there I can edit, debug, compile my program, but the same things I can do with SDK, am I wrong? thanks in advance
An SDK usually only includes the necessary building blocks for developing applications. This includes frameworks, libraries, header files, whatever as well as compilers, debuggers, and various other tools, such as profilers, etc.
An IDE simply makes access to those more user-friendly (or integrated, hence the name), if you will. However, Eclipse for example comes with its own compiler as well.
In any case, an IDE allows you to develop applications from a single environment, be that Emacs, Visual Studio or Eclipse. If you only have an SDK you'd write programs with a text editor, compile them with the compiler (instead of hitting F\d+), debug with the debugger which often has an awkward text interface, &c.
SDK = Software Development Kit... the tools that do the tasks you mentioned above. IDE = Integrated Development Environment... A GUI for accessing the SDK tools and then some (features differ).
Software Developer Kit and Integrated Development Environment?
It's like DirectX libraries with example code and Eclipse.
Dude, read wikipedia before asking such questions..
Links:
A SDK has DLL libraries, compilers, and other tools to compile source code into an executable program (or intermediate byte code to run on JVM or .NET). You can write the source code in any text editor and build your program from all your text files using an SDK.
An IDE integrates all those SDK features, including the compiler, into GUI menus to make it easier to access all those features and easier to develop software. It creates build scripts for you to make managing your project easier and much more. My favorite, it allows you to debug by stepping through code line by line.
Visual Studio, Eclipse, NetBeans are examples of IDEs. .NET Framework 4.0 and Swing Application Framework are examples of SDKs.