how create themselves ide every great company?

how every great companies such as adobe,auto desk,siemens and .... create own beauty IDE?
are those create by c++??
Last edited on
From: http://www.stroustrup.com/applications.html

Adobe Systems: All major applications are developed in C++:
. .Photoshop & ImageReady,
. .Illustrator,
. .Acrobat,
. .InDesign,
. .GoLive,
. .Frame (mostly C, some C++)

Autodesk: A large number of major number of application in the CAD domain.

Siemens: Major medical systems (often using ACE for convenience and portability).
I think the beauty of the design has nothing to do with the programming language. Any language can display graphics. I think it's more the quality of the designers and artists
Every single one of those is a very large and complex project that has taken literally hundreds of programmers many years to make them what they are today.
can we say we can not create ide same as those ide?
it is great problem that how power of c++ about gui.
i heard about qt,gtk,wxWidget,ultimate and ..... but i don't think can create a top ide by those. but when we write a good program on c++ how can create a great ide for it?
Last edited on
Your terminology misuse has us all confused a little now. I think you mean GUI (Graphical User Interface) when you say IDE (Integrated Development Environment).


Yes, anyone with enough time and talent can create a great program of any kind. Many of the programs already mentioned started out as one person's pet project.

Trolltech makes its money by selling exactly what you are asking about -- many beautiful, functional, cross-platform GUIs were made using Qt.

GTK is the de-facto standard against which many GUI window systems are compared.

The way a program looks and behaves is definitely influenced by choice of underlying GUI toolkit, but the ultimate look and feel is often polished in a way specific to that program.


You have a very steep learning curve ahead of you. All of these systems involve complexity that you don't recognize yet. Some make it easier to get started, but you must become fluent with how it really works, how to hook and manipulate behaviors (visual and relational).

Essentially, you must learn an entire new "language" on top of C and/or C++ to handle things. How slick or polished your final product is depends on how much effort you spend developing the UX side of things.

Hope this helps.
Larger programs are normally divided into a front-end and a back-end.
For example Visual Studio (since VS 2012) front-end(GUI) is written in WPF while the compiler, linker... is written in C++.

Your terminology misuse has us all confused a little now. I think you mean GUI (Graphical User Interface) when you say IDE (Integrated Development Environment).

without any GUI controls in a language how can i create an ide?
my mean power of c++ to create a professional IDE that made by any GUI controls.
but c++ framework or libraries that i pointed such as Qt,GTK,wxWidges and .... have any simple GUI controls to making that professional IDE that we see in great applications.
""""i like to know how can i create great IDE for my projects same as those IDE(IDE contains multi GUI controls that integrate together in my knowledge)?""""

Trolltech makes its money by selling exactly what you are asking about -- many beautiful, functional, cross-platform GUIs were made using Qt.


yes i agree. i studied any about qml in qt . that is comfort and have rich ui for create any GUI.
but is it good idea for making great and pretty IDE?

All of these systems involve complexity that you don't recognize yet.

yes you are right. i want to understand these meanings and concepts too. but how?
i want you help me in this steep learning curve.
if i must to read book or see anything please tell me.
i working by c# and design my forms in a designer easily.
now i want to know how can do this really. at all how is this process in c++?

thanks for your Comprehensive answer Duthomhas.

For example Visual Studio (since VS 2012) front-end(GUI) is written in WPF while the compiler, linker... is written in C++.

can you describe me how can do this. you mean i should make back end in c++ and ide on other language?
i don't understand it or how can i do it.
Last edited on
I have not done it but think the principle works like this. You need to put you c++ code in a dll.
When the user clicks a button or the menu you call the c++ code in the dll and display the results somewhere in your c# form. Also from Java you call C++ code in a dll.

BTW. Using the designer to create winforms is not best practice unless you use the layout managers.
Have you never tried to run your app on a different PC with different screen size or different resolution. I don't understand why you are so interested in C++. Why don't you learn WPF and Blend. Much easier to create beautiful GUI if you have some artistic talent.
https://www.youtube.com/watch?v=ol1lhy-h4XE
https://www.youtube.com/watch?v=tbulRaoc7ow
C++ doesn't care about things like GUIs.

You have to pick a GUI library you wish to use and link it in with your application, like Qt. (Yes, you can use Qt to make any kind of pretty GUI you want.)

If you stick to Qt (or use something like WPF) you will have an easier time keeping the back end and front end separate -- they are designed to encourage that.

The idea is that the way your application looks and behaves is separate from how it actually does things underneath.

This is true of all UI elements. For example, you know how to operate any TV you touch: it has a power button, volume up/down, channel up/down, etc.

The way each manufacturer actually makes that happen is totally different. Old TVs used a CRT to project electrons at a phosphorus-covered piece of glass. New TVs use LCD arrays, etc. From the GUI point of view, you still see a pretty picture, even though it was generated in the back end a different way.

Same is true in software. Click a button on a web page. The button has absolutely nothing to do with how something happens in the background. The server does all that work, and generates new content that is sent back to your web browser. The browser just displays what it is given. It has no idea how that stuff was created, and doesn't care. Front-end: browser. Back-end: CGI scripts on a server somewhere in Morocco.

The browser itself, as a piece of software, has front and back ends. Front-end: buttons, html display, etc. Back-end: stuff that figures out how to take HTML and turn it into pretty pictures.

thanks friends and thanks and thanks for your help.
i certainly search for integrate rich ui maker such wpf and c++ back end code.
thomas i will check links.
i like to talk by who that does this work and use that experiences.
however very thanks for your try and attention.....
if i can understand anything i try talk about it here.
Topic archived. No new replies allowed.