Re: Would it be possible that gtk implementation in C++

Thank you for point out predecessors' question!

I read the question and get some points, but I thinks the situtations change a lot and I am not ask the same 

1. I am not ask for why GTK choose to implement in C, I know it have some historical reason. I want to make a 
proposal that gtk could be re-written with c++ just as GCC does. I want to discuss with you whether it is a 
good idea.

2. Situations change a lot. Back to the time GTK was born, C++ is also very primitive so the developers would 
rather implement an object-system by hand. But nowadays C++ is stable and have many cool features especially 
in C++11 and the in-coming C++14. C++'s object-system is becoming more and more complete and add many useful 
features in GUI development such as exception, multi-threads and so on. I think due to the same reason did 
GCC turn to C++.

3. Now, from the view of app developers, who are very likely learned C/C++/Java in classes, and learn 
Python/JS/PHP/Nodejs after class. And very probably have experiences coding with QT, HTML5, Android. They 
can't be more familiar with OOP and C++. But when they turn to GTK, they have to expand one line in C++ into 
three or more lines in C. This will threaten many developers. Although there are gtkmm available, but gtkmm 
didn't gain enough official support and recommend as GTK, and much fewer reference, help, support available. 
The official recommand is gtk in c rather than gtkmm in c++, so many devlopers read some tutorials and feel 
threatened and leave. What's worse, gtkmm didn't wrapper all of the gtk featurese. In some complex cases, 
developers have to use the low level gobj pointer to get things done.

Now is in 2014, It can't be more normal to develop GUI application with OOP style. I think it's time to 

GTK could be rewritten in C++, and what's more important, GTK should officially recommend to develop apps in 
C++, which can't be more familiar to GUI developers.

Sent from MEIZU MX

-------- Original Message --------
From:Florian Pelz <pelzflorian googlemail com>
Time:Fri 8/8 05:23
To:gtk-list gnome org
Subject:Re: Would it be possible that gtk implementation in C++


Someone asked this question on Stackoverflow:
I think they answer it pretty well. Also, C is much closer to the 
hardware and GCC's error messages for C++ are not that great.

On 08/07/2014 10:49 PM, Dub wrote:
tbh, the only reason I use GTK is because it is C.

While C++ is probably a better choice. C allows you to easier 
integrate it with pretty much any language of your choosing easily 
(Vala, Ruby, PHP (lol), Python, Rust, Go, Perl, Lua, Javascript, etc) 
that in itself is a really good reason.

On Thu, Aug 7, 2014 at 12:22 PM, 黄羽众 <ihyzi 163 com 
<mailto:ihyzi 163 com>> wrote:

    For the past few time, I am using gtkmm to development GUI
    application, and I am really enjoy it.

    I know that choose C as its implementation language makes gtk gain
    a wonderful performance,
    but recently GCC turn to C++.

    I think that as a complier which have to think a lot about
    performance, it turn to C++ for code elegance and development speed,
    a GUI application have no reason to continue using C stuff.

    Actually gtk implement a object system as its essential part, that
    did prove that GUI application need a object-oriented design.
    And C++ could provide this as a language level feaure, needless to
    implement it in application code.

    So I suggest that it is possible to develop gtk in c++ as
    main-line support?

    Unlike gtkmm, which is just a wrapper from c++ to c, turn to c++
    in main-line means a lot.

    GCC choose this and get good result, I think gtk could have a try.

    gtk-list mailing list
    gtk-list gnome org <mailto:gtk-list gnome org>

gtk-list mailing list
gtk-list gnome org

gtk-list mailing list
gtk-list gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]