Gtk vs Qt | GUI tool kits | Which is Better?

Ғылым және технология

Today Vincent talks about his thoughts on QT, and Gtk. Both have there uses, pros, and cons but which one does he prefer? Watch the video to find out. Please see the pined comment thread for more on Qt.
Links:
opensourcetonight.com
feeds.opensourcetonight.com
/ vincentmaggardmedia
Discord Server:
/ discord
Google Play Music:
bit.ly/2DwMXQS
Spotify Podcasts:
spoti.fi/37TOBtB
Apple Podcasts:
apple.co/2OySLiW
hashtags: #GTK_GUI #QT_GUI#Linux

Пікірлер: 92

  • @futuza
    @futuza3 жыл бұрын

    Qt has one of my favorite programming documentations, its well written, clear and with lots of examples. That said I hate where the liscensing has been going with it lately in the hands of its current owner and its becoming less 'open' over time. GTK by comparison is a lot more open, but also more obtuse and difficult to pick up and less easy to start working.

  • @torinlandyn1228

    @torinlandyn1228

    3 жыл бұрын

    @Camilo Ariel yup, have been watching on Flixzone} for since november myself :)

  • @byronbenicio7853

    @byronbenicio7853

    3 жыл бұрын

    @Camilo Ariel definitely, I've been watching on Flixzone} for years myself :)

  • @camdenmayson3758

    @camdenmayson3758

    3 жыл бұрын

    @Camilo Ariel Definitely, have been watching on flixzone} for since november myself :D

  • @DungVu-di7dz

    @DungVu-di7dz

    3 ай бұрын

    Qt is not free, the terms in LGPL contradict each other and if you sell software written in Qt you can be sued at any time without a commercial license

  • @futuza

    @futuza

    3 ай бұрын

    @@DungVu-di7dz ? Name a court case where this occurred?

  • @Thraeke
    @Thraeke3 жыл бұрын

    u helped me a lot, i´m very new to all of this . ty bra ;)

  • @josephvelasquez2677
    @josephvelasquez26773 ай бұрын

    Thanks for the thorough explanation, exactly what I needed!

  • @OpenSourceTonight

    @OpenSourceTonight

    3 ай бұрын

    I'm happy that it was helpful to you. My aim is to be helpful but I don't always do it perfectly.

  • @DevDungeon
    @DevDungeon3 жыл бұрын

    Good stuff, keep it up

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Thanks for your support. Glad to you hear you like the videos. I sure will keep making videos. - Vincent

  • @tiantiancode
    @tiantiancode2 жыл бұрын

    谢谢你的分享,我学会了这两者的区别

  • @elhafo6925
    @elhafo69253 жыл бұрын

    Thanks for sharing!

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Your welcome! Thanks for watching. - Vincent

  • @rs4artha
    @rs4artha3 жыл бұрын

    Thank you.... This helped

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Glad it helped. - Vincent

  • @imhemish
    @imhemish2 жыл бұрын

    you got a new subsriber, i just subscribed you after you had 208 subscribers

  • @OpenSourceTonight

    @OpenSourceTonight

    2 жыл бұрын

    Welcome to the channel! Glad to hear you enjoy the videos enough to subscribe. - Vincent

  • @astroboy512
    @astroboy5122 жыл бұрын

    I love it! The video is exactly to the point, I also like GTK more than Qt.

  • @VentureTracks
    @VentureTracks3 жыл бұрын

    Oh wow you should have more of a following man good shit!

  • @dart-kotlin-dev
    @dart-kotlin-dev6 ай бұрын

    Thanks, that was a very unbiased review in my opinion. It was really helpful for me.

  • @OpenSourceTonight

    @OpenSourceTonight

    5 ай бұрын

    Your welcome!

  • @pingo2514
    @pingo25143 жыл бұрын

    Great video

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Thanks! Glad you liked it. - Vincent

  • @mohammadrezamokhtary913
    @mohammadrezamokhtary9132 жыл бұрын

    when he says QT instead of Qt ...

  • @pauz9776
    @pauz97762 жыл бұрын

    Thank you..!

  • @ziul.3124
    @ziul.31242 жыл бұрын

    Nice video,Nice hair😅IT truly helped me 😈👍

  • @VentureTracks
    @VentureTracks3 жыл бұрын

    Let me be apart of the first 100 subs!! Don't quit making videos bro you can be one of those people that retires on KZread uploads

  • @markus3803
    @markus38033 жыл бұрын

    Thanks for the video! I will try out Gtk. Learning UIs is one of the things I always delayed. Now I know where to start.

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Your welcome! I happy the video was helpful to you. Desktop app development is it's own thing. It's funny since some people don't seem to like it but I think it's one of most fun ways to build a app. - Vincent

  • @markus3803

    @markus3803

    3 жыл бұрын

    @@OpenSourceTonight Since Gtk4 is out and I want to program in C++ with gtkmm, I think I'll wait for gtkmm4 to be released on my distribution (arch). I hope it'll be soon.

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    I haven't looked into Gtk4 yet, but I did see Ubuntu 21.04 isn't planning to support it. I'm thinking it may be best to use Gtk3 in production at least until Ubuntu supports it in a LTS, or two. Good luck on your coding. - Vincent

  • @markus3803

    @markus3803

    3 жыл бұрын

    @@OpenSourceTonight You have a point, but I am not building anything for production. Anyways, I think I will do a little calculator with Gtk3 as a learning-project. Good luck to you too.

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Yea if it's not in production then I wouldn't worry about the support side as much. If it works for you, then that's all that is i needed. That sounds like a good first project. Good luck to you on building your app. Thank you for your support. - Vincent.

  • @moneyfr
    @moneyfr2 жыл бұрын

    why my GTK app are so slow on my pop os ?

  • @avimehenwal
    @avimehenwal2 жыл бұрын

    good information thankyou for sharing. I am a wannabe desktop app developer and have been looking into alternatives apart from QT and GTK, so have been meaning to ask you, 1. if you have ever considered any other GUI dev library apart from GTK and QT ? if yes, which one was it and how was it compared to GTK? 2. flutter seems to be a new kid in town for building cross platform apps? have you tried it? would love to know your experiences ? 3. And one biggest question of all, Is it even worth making dekstop apps anymore, when everyone seems to be going web and mobile ??? :D hope you wont mind answering them :) Cheers !!

  • @OpenSourceTonight

    @OpenSourceTonight

    2 жыл бұрын

    I'm happy to share what I know, and like. I've used java SWT a bit just for fun. I've also used wxpython before. I like both in someways but not in others. I tied flutter but I had issues even getting it work. I like writting my GUI apps in Python. So that's something I look at. It can't run in Python it's always a deal breaker. Thanks for watching. - Vincent

  • @nyanlauncher7350
    @nyanlauncher73502 жыл бұрын

    Just curious, but why do you use simple screen recorder instead of obs. I've never used simple screen recorder, but obs seem way more feature rich and it just works out of the box, for me anyways.

  • @OpenSourceTonight

    @OpenSourceTonight

    2 жыл бұрын

    These days I use OBS studio. At the time I just wanted something simple and simple screen recorder worked for me. - Vincent

  • @moneyfr
    @moneyfr2 жыл бұрын

    00:12 I love how you said

  • @joegoosebass3958
    @joegoosebass39582 жыл бұрын

    GTK here

  • @marcyanus1430
    @marcyanus14302 жыл бұрын

    i like your mic.

  • @user-dc9mh6hc9k
    @user-dc9mh6hc9k2 ай бұрын

    Does GTK come with drag & droppable widgets like WinForms?

  • @OpenSourceTonight

    @OpenSourceTonight

    2 ай бұрын

    Yes. There is a tool for building GUI's called Glade. With it you can do just that. Here's link for you: help.gnome.org/users/glade3/3.8/glade3.html - Vincent

  • @user-dc9mh6hc9k

    @user-dc9mh6hc9k

    2 ай бұрын

    @@OpenSourceTonight Tysm!!

  • @nijasec9644
    @nijasec96443 жыл бұрын

    I personally prefer GTK I liked it

  • @OpenSourceTonight

    @OpenSourceTonight

    2 жыл бұрын

    Glad you enjoyed the video. Thanks for your support!

  • @n1coc4cola
    @n1coc4cola3 жыл бұрын

    I think Gtk is not flex enough for the plugins and such. For example, if you want to implement a blur behind window as available on many DEs, it is really hard on Gtk with wins that are not registered, comes from nowhere and the window's type is not obvious enough, some menus will get transparency available while others not, but they could all be. And you cannot go deep as with Qt. So Gtk is really strong with rendering and such but to me Qt is better for the flexibility it has, this is one of the reasons why Qt based DEs (like Plasma) have to make their Qt theme close to the Gtk one instead of the opposite, or use tools like KVantum...

  • @OpenSourceTonight

    @OpenSourceTonight

    2 жыл бұрын

    Thanks for sharing your input. I wasn't aware of those issues. - Vincent

  • @typingcat
    @typingcat2 жыл бұрын

    If only GTK released official libraries for popular languages for popular OS's. I mean, for example, if I want to use GTK for creating Windows application, the only thing I can fin is GTK#, but that seems not official, and it is outdated, and it lacks documentation.

  • @oraz.
    @oraz. Жыл бұрын

    GTK seems to look better but people seem enthusiastic about QT. There's so FLTK, I'm leaning toward GTK though.

  • @random6033
    @random60333 жыл бұрын

    i use kde plasma and simple screen recorder matches my theme

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    Cool! I use simple screen recorder myself. It's a great app. - Vincent

  • @roembol

    @roembol

    3 жыл бұрын

    Because KDE is based on Qt :)

  • @random6033

    @random6033

    3 жыл бұрын

    @@roembol ye

  • @drymanhattan3701
    @drymanhattan37017 ай бұрын

    Gtk is open source?

  • @OpenSourceTonight

    @OpenSourceTonight

    7 ай бұрын

    Yes it is. gtk.org is the project's site if you want to learn more. - Vincent

  • @moisesgarin
    @moisesgarin Жыл бұрын

    GTK

  • @QuantenMagier
    @QuantenMagier25 күн бұрын

    Gtk-2 best toolkit ever, since then it sadly all went downwards..

  • @helios6978
    @helios69782 жыл бұрын

    GTK = WIN32 API & C, QT = MFC & C++

  • @JCMH

    @JCMH

    2 жыл бұрын

    No, X11 = WIN 32 API & C.

  • @ltxr9973
    @ltxr99733 ай бұрын

    I despise using GTK applications so using it for my own stuff would be pretty hypocritical

  • @platin2148
    @platin21488 ай бұрын

    I‘d use copperspice instead of qt.

  • @OpenSourceTonight

    @OpenSourceTonight

    3 ай бұрын

    I've never heard of copper space before. Why do you think it's better than GTK and QT?

  • @platin2148

    @platin2148

    3 ай бұрын

    @@OpenSourceTonight No qmock everything like qt. And i think different licensing?

  • @rinaldslibeks1592
    @rinaldslibeks1592 Жыл бұрын

    i think kde need to migrte to gtk from qt

  • @destiny_02

    @destiny_02

    Жыл бұрын

    Then it would just end up like gnome, a memory hag.

  • @rinaldslibeks1592

    @rinaldslibeks1592

    Жыл бұрын

    @@destiny_02 the kde is so customisable and i dont like it i love mutter windowing manager as is with minus and plus and i love nautilus gedit all gnome apps and gdm display manager but not the gnome looks

  • @Henry-sv3wv

    @Henry-sv3wv

    11 ай бұрын

    >would just end up like gnome, a memory hag Xfce is a lightweight desktop environment using gtk (Xfce4 uses gtk3)

  • @rinaldslibeks1592

    @rinaldslibeks1592

    11 ай бұрын

    @@Henry-sv3wv gtk4 is newer

  • @Henry-sv3wv

    @Henry-sv3wv

    11 ай бұрын

    @@rinaldslibeks1592 wayland is also newer but xfce depends on gtk3 and x11

  • @JakobKenda
    @JakobKenda Жыл бұрын

    pacific 😭

  • @about2mount
    @about2mount4 ай бұрын

    No Offence but QT was developed using GTK as it's base. Many do not know this. Also Wx uses GTK also but is much older. There are only three known original base machine toolkits. They are Mosaic GUI Toolkit and Widgets(Only Microsoft and Sun have licenses to use), GTK and TK. Everything else came from GTK except for the newer OpenGL or DirectX developed GUI used in gaming software.

  • @tachobrenner

    @tachobrenner

    4 ай бұрын

    Qt came before GTK, in 1992 or something. GTK came from GIMP, which only came out in 1995. GTK came in 1998. Qt came out earlier in 1995. It was beginning to be developed in 1991.

  • @davidrobertjones2097
    @davidrobertjones20973 жыл бұрын

    GTK 3 is just an over-engineered slow-ass hot dinosaur mess with catastrophic performance regressions when compared to GTK 2. To fix the 10 years old performance regressions the devs would need to revert to GTK 2.0 which was not totally messed up. Qt on the other hand is the only complete C++ toolkit with a professional set of tools and interfaces for the cross platform GUI developement, there is no competition in that matter.

  • @OpenSourceTonight

    @OpenSourceTonight

    3 жыл бұрын

    I haven't looked into to the code side of the library but I haven't had any issues with Qt, or GTK 3 when I've used both before. Thank you for your input. - Vincent

  • @arturczajkowski4255

    @arturczajkowski4255

    2 жыл бұрын

    I actually prefer gtk3/4 to Qt. To me one can do everything in gtk what it can be done in Qt, but the advantages are: Is totally free, qt is very, very pricey, uses std c/c++, none of that moc c**p, you are free to choose your own IDE where in qt you more or less force to use qtCreator and lots more...

  • @davidrobertjones2097

    @davidrobertjones2097

    2 жыл бұрын

    @@arturczajkowski4255 I really don't know where you get your information from but consider doing some research before taking up on a topic... 1st: GTK is a widget toolki, wheres Qt is an application framework, GTK features only a small fraction of Qts functionality, So to counter your argument, No, GTK can't provide the same functionality as Qt does. 2nd: Qt only costs money if you need to statically link it into one big executable and that's it, simply don't statically link it, a very small price to pay for RAD. 3rd: you can use any IDE to develop a Qt application as long as the language-centric bindings are provided. 4th: As for Qt's base types, most of them provide an interface to the std equivalent. Qt's types also force memory safety and are mainly meant for use within the Qt Framework itself, you are free to work with std types outside of the framework for performance critical appliances.

  • @arturczajkowski4255

    @arturczajkowski4255

    2 жыл бұрын

    @@davidrobertjones2097 This video is strictly about comparing qt and gtk so whatever definitions you provide for both of those frameworks is rather irrelevant. Both, gtk and qt aim to solve the same problem. My personal opinion is that Gtk does it better and more clever than Qt. I get my information from personal experience. As I for number of years worked with both, Qt and Gtk I prefer gtk to Qt for exactly the reasons I've listed in my previous comment. Now, perhaps you will do research before you post something. Let's talk about performance first. Qt uses both QML and Widgets with trend now going towards using QML in order to create user interface. As you are probably aware QML is powered by javascript. This immediately should tell you that UI made with QML is orders of magnitude less responsive/slower to those made with gtk which uses c/c++. So there your arguments about gtk being slow goes through the window. If anything Qt is "slow-ass" as you've put it, not gtk. OK, what about qt widgets vs gtk widgets and apps built with them. I personally didn't see difference in performance between those two. But the negative side of qt widgets is that if at one point you'll decide to make your application mobile, then you have to redo your entire UI in QML! Which in most business situations is simply a no-op and show stopper, potentially loosing milions to the company locked by Qt. On the other hand if you were using gtk no such action is required. You are using the same UI widgets for both desktop and mobile! No two UI bases! That's why I have said that gtk does it in much smarter way that qt. But this is not the only place where gtk does it in smart way and qt does it the hard way. Another example is, exactly what you've said about the difference between qt and gtk, the former being an application framework and the latter being a widget toolkit. Qt by trying to provide everything for every possible scenario and business model actually locks the user whilst gtk gives completely free hand to the users and it is up to the users to choose the appropriate components, most of if not all completely free and of much better quality than those provided by Qt. Famous example with QList when even people from Qt company were advising against using that component of their framework! Of course you can always provide links to sources that will back up what you're saying about performance of qt vs gtk, but unless you provide it, all you've said about gtk being slow ass is simply not true. So again, perhaps do your research first? Now let's talk about pricing. GTK is free. Completely, no strings attached. On the other hand Qt costs lots and lots of money for commercial licences. It is NOT TRUE when you're saying that: "Qt only costs money if you need to statically link it into one big executable". Please provide link to sources that will support your opinion. Otherwise, go and do proper research first. Another negative side of using qt as oppose to gtk (from developer's point of view), is that when working with qt, exactly because of the fact that qt provides all their own modules/types for everything it is a HUUUGE disadvantage for a developer using it, because that developer is only familiar with qt stuff and if he decides to change company/field he was developing up until now, all he knows is just QT stuff that is not standard c/c++! So if he wants to find a job as a c++ dev, he basically needs to learn standard stuff from scratch, whilst if he was using gtk, BECAUSE of the fact that gtk does use standard c/c++ the developer is already familiar with the language (c/c++) and doesn't need to do the switch from "QtC++" to standard c/c++. And yes, it is true that one can work with standard c++ whilst using qt but it is very, very cumbersome and unnatural in Qt world. Whilst in gtk, exactly because it is just a widget toolkit, using standard c/c++ is effortless and natural.

  • @davidrobertjones2097

    @davidrobertjones2097

    2 жыл бұрын

    @@arturczajkowski4255 I'm sorry, your opinion is endlessly biased, and you are clearly outworldly uninformed on this subject yet you are spreading disinformation left and right. QML is optional to use and is only a script language which uses Qt as a back-end and has nothing to do with how the Qt framework is generating or handling the GUI. QML is still way faster and more snappy than the broken GTK3+ in it's binary form. I'm very sorry, but given your lack of experience on this subject this conversation is a waste of my time.

  • @SB-rf2ye
    @SB-rf2ye2 жыл бұрын

    qt license sucks. screw them. not using anything from them ever.

  • @ioneocla6577

    @ioneocla6577

    Жыл бұрын

    You mean gpl/lgpl ? Having such a great product double licensed is fair. You can either use the lgpl version even for commercial use but you will need to dynamically link it, or you can pay to statically link it. Simple

  • @Anthony-cn8ll

    @Anthony-cn8ll

    3 ай бұрын

    @@ioneocla6577 You can also statically link but you'd have to release the application with the object files so that users can replace the library.

  • @theretroman3862
    @theretroman38622 жыл бұрын

    Stop using fracking Adobe man! Use DaVinci instead of Premiere!

Келесі