[C++] wybor wx czy qt?
-
- Piegowaty Guziec
- Posty: 15
- Rejestracja: 20 cze 2010, 17:51
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
[solved][C++] wybor wx czy qt?
Witajcie, od jakiegos czasu ucze sie C++ z mniejszymi lub wiekszymi sukcesami i w koncu chce przerzucic sie z aplikacji konsolowych na okienkowe.
W trakcie nauki odkrylem ze istnieja wxwidgets oraz qt, ktore to biblioteki (?) umozliwiaja tworzenie aplikacji dla wielu systemow operacyjnych. Macie moze jakies spostrzezenia co do wyzej wspomnianych, ktora polecacie? A moze istnieje jeszcze inna, lepsza, ktorej warto sie nauczyc zamiast nich?
A jesli ktos w tym siedzi bardzo - ktora z tych bibliotek jest "aktualniejsza", czesciej ulepszana, bo jak rozumiem zaden z projektow nie zostal definitywnie porzucony, jednakowoz zmiany na pewno zachodza w roznych projektach w roznym tempie.
No i pytanie bonus - chce stworzyc zarowno gry 2d dla graczy linuxowych jak i jeden program uzytkowy dla wszystkich systemow (stad zaintersowanie wx/qt) - rzeczone biblioteki spelnia swoja role?
W trakcie nauki odkrylem ze istnieja wxwidgets oraz qt, ktore to biblioteki (?) umozliwiaja tworzenie aplikacji dla wielu systemow operacyjnych. Macie moze jakies spostrzezenia co do wyzej wspomnianych, ktora polecacie? A moze istnieje jeszcze inna, lepsza, ktorej warto sie nauczyc zamiast nich?
A jesli ktos w tym siedzi bardzo - ktora z tych bibliotek jest "aktualniejsza", czesciej ulepszana, bo jak rozumiem zaden z projektow nie zostal definitywnie porzucony, jednakowoz zmiany na pewno zachodza w roznych projektach w roznym tempie.
No i pytanie bonus - chce stworzyc zarowno gry 2d dla graczy linuxowych jak i jeden program uzytkowy dla wszystkich systemow (stad zaintersowanie wx/qt) - rzeczone biblioteki spelnia swoja role?
-
- Serdeczny Borsuk
- Posty: 176
- Rejestracja: 09 kwie 2008, 11:40
- Płeć: Mężczyzna
- Wersja Ubuntu: 11.04
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: [C++] wybor wx czy qt?
W wx nie programowałem ale QT znam. Według mnie jest to bardzo dobra biblioteka. Jest do niej dobra dokumentacja. Bez problemu przenoszę programy z linuxa na windowsa. Rozwija ją duża firma (Nokia). Można zainstalować Qt-Creator jest to bardzo dobry edytor. Okna można tworzyć również za pomocą graficznej aplikacji.
- Hauleth
- Wytworny Kaczor
- Posty: 382
- Rejestracja: 18 sie 2008, 17:43
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
Ja osobiście jestem za GTKmm (bo tego Ci tu zabrakło) z tego powodu, że na nim jest oparte GNOME.
Do gier 2D to chyba lepiej się nadaje SDL.
Do gier 2D to chyba lepiej się nadaje SDL.
Jeśli problem rozwiązany dodaj na początku tematu [SOLVED].
Biblioteka do C++ - Bust Lib: http://code.google.com/p/bust/
Biblioteka do C++ - Bust Lib: http://code.google.com/p/bust/
-
- Piegowaty Guziec
- Posty: 15
- Rejestracja: 20 cze 2010, 17:51
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
skoczo - a miales kontakt z wx widgets, jesli tak to roznice miedzy tymi bibliotekami sa znaczne? Ponadto - czy na Qt mozna tworzyc wlasnosciowe programy, czy tylko open source?
Hauleth - wymienione przez Ciebie biblioteki tworza API wylacznie/glownie pod linuxa, prawda?
Hauleth - wymienione przez Ciebie biblioteki tworza API wylacznie/glownie pod linuxa, prawda?
-
- Serdeczny Borsuk
- Posty: 176
- Rejestracja: 09 kwie 2008, 11:40
- Płeć: Mężczyzna
- Wersja Ubuntu: 11.04
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: [C++] wybor wx czy qt?
Jeśli chodzi o licencje na QT to tutaj jest wątek o tym viewtopic.php?t=117394 Z wx widgets nie miałem kontaktu ale programowałem w GTK i to też fajna biblioteka. Jest wieloplatformowa. Najlepiej to wybierz te które cię interesują i napisz prosty program w każdej. Wtedy zobaczysz która bardziej ci pasuje. Ja tak zrobiłem i wybrałem QT ale tak jak pisze GTK też jest warta zainteresowania.
- beluosus
- Zakręcona Traszka
- Posty: 695
- Rejestracja: 01 paź 2006, 15:32
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: Xfce
- Architektura: x86
- Kontakt:
Odp: [C++] wybor wx czy qt?
Też miałem ten dylemat. Zdecydowanie polecam Qt - ma ogromny zbiór tutoriali, przykładów, świetną dokumentację, wiele narzędzi wspomagających programowanie. Projekt jest bardzo aktywny (w tym roku były już 3 wydania), wspomaga grafikę 2d jak i 3d (opengl). WxW odrzucił mnie swoją powolnością w większych projektach i sposobem pisania programów - używanie makr.
SDL i GTKmm jest również pod windowsa. Do 2d faktycznie dobrze użyć SDLa ale jeśli zaczynasz z GUI to Qt będzie dobrym wyborem na początek.
SDL i GTKmm jest również pod windowsa. Do 2d faktycznie dobrze użyć SDLa ale jeśli zaczynasz z GUI to Qt będzie dobrym wyborem na początek.
- Hauleth
- Wytworny Kaczor
- Posty: 382
- Rejestracja: 18 sie 2008, 17:43
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
Ja nie lubię Qt za to, że ma swoje dziwne makra też i nie chce czasami współpracować ze standardowymi narzędziami (musisz np używać Qmake).
Gdzie. GTK to Gimp ToolKit i działa zarówno na Windozie jak na *niksach. Nawet więcej wymagany jest port tylko 1 biblioteki (GDK) i pozostałe działają praktycznie bez zmian bo całe rysowanie okien odbywa się przez GDK.
Gdzie. GTK to Gimp ToolKit i działa zarówno na Windozie jak na *niksach. Nawet więcej wymagany jest port tylko 1 biblioteki (GDK) i pozostałe działają praktycznie bez zmian bo całe rysowanie okien odbywa się przez GDK.
Jeśli problem rozwiązany dodaj na początku tematu [SOLVED].
Biblioteka do C++ - Bust Lib: http://code.google.com/p/bust/
Biblioteka do C++ - Bust Lib: http://code.google.com/p/bust/
- pixelenter
- Serdeczny Borsuk
- Posty: 194
- Rejestracja: 31 gru 2009, 15:41
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.10
- Środowisko graficzne: GNOME
- Architektura: x86_64
Odp: [C++] wybor wx czy qt?
Ja ci polecam gtkmm, lecz jeżeli musi być z tego co napisałeś to podpisuje się pod tym co napisał kolega Hauleth.
http://uwolnijlaptopa.pl
http://counter.li.org/cgi-bin/certificate.cgi/528644
http://counter.li.org/cgi-bin/certificate.cgi/528644
-
- Wytworny Kaczor
- Posty: 352
- Rejestracja: 15 paź 2008, 18:30
- Płeć: Mężczyzna
- Wersja Ubuntu: 9.04
- Środowisko graficzne: KDE Plasma
Odp: [C++] wybor wx czy qt?
Qt jest znacznie łatwiejsza do opanowania, ma licencję LGPL pozwalającą na pisanie zamkniętego oprogramowania, jest bardzo dobrze udokumentowana. W GTKmm trzeba dobrze znać C++ więc nie polecałbym jej początkującemu, a QT jest prostsza (może właśnie z powodu tych makr) i wystarczy średnia wiedza. Pamięci alokowanej dynamicznie dla obiektów biblioteki nie trzeba zwalniać ręcznie. Biblioteka jest też lepiej przenośna na różne OS, niż chociażby wxWidget. Pamiętam problem kolegi, który rozwijając projekt z wxWidget miał spore problemy z działaniem systemu drukowania na Unixach
- Hauleth
- Wytworny Kaczor
- Posty: 382
- Rejestracja: 18 sie 2008, 17:43
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
A używając Qt nie musisz znać C++? Za karę chyba będziesz mi musiał myć monitor.
Co jest takiego "zaawansowanego" co musisz znać używając GTKmm, czego nie trzeba przy Qt? A gdzie w GTKmm musisz? Masz przecież Gliba, który ma swoje PtrRef i problem z alokacją z głowy.
Co do przenośności to nie wiem, ale coś musiało spowodować, że Maemo używa GTK+, a nie Qt...
Gtk ja wolę z tego powodu, że nie wciskają ci wszystkiego "na siłę" tylko dają samo wyświetlanie i parę potrzebnych narzędzi (jak wątki), reszta jest poprzez pluginy rozszerzana.
Mnie jakoś szybko Qt odstraszyło. Nawet w GTK+ (jak się korzysta z 'czystego' C) ma możliwość autoamtycznego podpięcia funkcji do kontrolek Glade.
W Qt i wxWidgets brakuje mi też kontenerów, które z początku chyba każdemu wydawały się dość dziwne, ale po zaznajomieniu nie da się bez tego tworzyć porządnego interfaceu. Bo jak prościej zadbać o to by kontrolki nie 'rozjeżdżały' się po zmianie rozmiaru okna?
Co jest takiego "zaawansowanego" co musisz znać używając GTKmm, czego nie trzeba przy Qt? A gdzie w GTKmm musisz? Masz przecież Gliba, który ma swoje PtrRef i problem z alokacją z głowy.
Co do przenośności to nie wiem, ale coś musiało spowodować, że Maemo używa GTK+, a nie Qt...
Gtk ja wolę z tego powodu, że nie wciskają ci wszystkiego "na siłę" tylko dają samo wyświetlanie i parę potrzebnych narzędzi (jak wątki), reszta jest poprzez pluginy rozszerzana.
Mnie jakoś szybko Qt odstraszyło. Nawet w GTK+ (jak się korzysta z 'czystego' C) ma możliwość autoamtycznego podpięcia funkcji do kontrolek Glade.
W Qt i wxWidgets brakuje mi też kontenerów, które z początku chyba każdemu wydawały się dość dziwne, ale po zaznajomieniu nie da się bez tego tworzyć porządnego interfaceu. Bo jak prościej zadbać o to by kontrolki nie 'rozjeżdżały' się po zmianie rozmiaru okna?
Jeśli problem rozwiązany dodaj na początku tematu [SOLVED].
Biblioteka do C++ - Bust Lib: http://code.google.com/p/bust/
Biblioteka do C++ - Bust Lib: http://code.google.com/p/bust/
-
- Piegowaty Guziec
- Posty: 12
- Rejestracja: 08 cze 2010, 10:20
- Płeć: Mężczyzna
- Wersja Ubuntu: 8.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
W tym celu stosuje się layouty oraz ustawia się właściwość sizePolicy.Bo jak prościej zadbać o to by kontrolki nie 'rozjeżdżały' się po zmianie rozmiaru okna?
-
- Wytworny Kaczor
- Posty: 352
- Rejestracja: 15 paź 2008, 18:30
- Płeć: Mężczyzna
- Wersja Ubuntu: 9.04
- Środowisko graficzne: KDE Plasma
Odp: [C++] wybor wx czy qt?
No właśnie między innymi chodzi o używanie bardziej intensywnie STL. Nie znam dobrze GTKmm. Na początku ucząc się C++ i szukając biblioteki GUI próbowałem, GTKmm, ale QT wydała mi się znacznie prostsza. Nieznając STL nie mogłem zrozumieć tutoriali. Pewnie obecnie nie byłoby to dla mnie już tak męczące, ale dopycha mnie duża ilość funkcji statycznych i słabsza dokumentacja niż QT.A używając Qt nie musisz znać C++? Za karę chyba będziesz mi musiał myć monitor.
Co jest takiego "zaawansowanego" co musisz znać używając GTKmm, czego nie trzeba przy Qt? A gdzie w GTKmm musisz? Masz przecież Gliba, który ma swoje PtrRef i problem z alokacją z głowy.
- kabanek
- Zakręcona Traszka
- Posty: 592
- Rejestracja: 23 cze 2009, 20:34
- Płeć: Mężczyzna
- Wersja Ubuntu: 13.10
- Środowisko graficzne: Xfce
- Architektura: x86_64
- Kontakt:
Odp: [C++] wybor wx czy qt?
ja również bym polecał Qt
-
- Piegowaty Guziec
- Posty: 11
- Rejestracja: 31 sty 2010, 11:15
- Płeć: Kobieta
- Wersja Ubuntu: inny OS
- Środowisko graficzne: Inne
- Architektura: x86
- Kontakt:
Odp: [C++] wybor wx czy qt?
a ja polecam wxWidgets i np. wxFormBuilder. Całkiem przyjemna biblioteka, niezła dokumentacja, lżejsza od QT, dużo portów np. do perla, pythona, sztandarowe wdrożenia to audacity, code::blocks, FileZilla i Dropbox chyba. Faktem jest, że swego czasu mocno nadużywali makr i preprocessora ale idą w dobrym kierunku.
-
- Piegowaty Guziec
- Posty: 15
- Rejestracja: 20 cze 2010, 17:51
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
Na wstepie przepraszam za nieco razace brakiem glebokiej fachowej wiedzy informatycznej pytania, jednakowoz informatyka nie jest moim pierwszym fachem 
Wybaczcie brak mojej aktywnosci w tym watku - staralem sie (na miare mojego ograniczonego przez sadownictwo czasu) zglebic w temat
Tyle tytulem wstepu.
Drecze temat licencji, bo za duzo akt sie naczytalem dotyczacych naruszenia praw autorskich i pokrewnych, zas nie moge pojac niektorych uzywanych terminow (jak dynamiczne czy statyczne linkowanie
) bedacych w zasadzie essentialia negotii.
1) Zainstalowalem sobie QT Creator, ktory ku mojemu zdziwieniu jest na licencji GPL ( http://en.wikipedia.org/wiki/Qt_Creator ). Mimo braku konkretnej wykladni sadowej istnieje potencjalna mozliwosc naruszenia praw autorskich(w zaleznosci od wykladni - http://en.wikipedia.org/wiki/GPL#Linkin ... ived_works ), czego chce uniknac jak ognia.
Moglibyscie wyjasnic mi rozbieznosci miedzy tym co napisalem, a czesto powtarzanym tu na forum stanowisku, iz QT oparte jest na licencji LGPL (ktora to jest duzo bardziej liberalna w tym zakresie, umozliwia korzystna wykladnie)?
2) Wspomniane GTKmm to biblioteka(?) dzialajaca tak jak qt, na ktorej stworze programy dzialajace na wielu platformach? Dobiegam konca w nauce surowego c++, liznalem lekko QT (gdyby nie te niejasnosci licencyjne, to chetnie bym przy nim pozostal
) i zamierzam poznac dobrze jedna biblioteke, przy ktorej pozostane (niestety nie moge sobie pozwolic na zapoznawanie sie z wieloma systemami kodowania). Stad moje pytanie do Was- ekspertow - o pomoc w znalezieniu milosci na cale zycie, ze tak powiem 
3)Jesli ostatecznie przyjmiemy, ze QT jest zbyt watpliwe, zas inne biblioteki moga spelnic cele zawarte w punkcie drugim - ktora z bibliotek zalecanych do nauki bylaby oparta na jakiejs swobodnej licencji, najlepiej LGPL, badz innej, nienazwanej (liberalnej odnosnie komplilowanych z niej programow)?
http://qt.nokia.com/products/licensing/licensing nadmieniam, ze samo QT przewiduje jak widac licencje gpl oraz lgpl, co musze zrobic, aby oprzec sie na lgplu?

Wybaczcie brak mojej aktywnosci w tym watku - staralem sie (na miare mojego ograniczonego przez sadownictwo czasu) zglebic w temat

Drecze temat licencji, bo za duzo akt sie naczytalem dotyczacych naruszenia praw autorskich i pokrewnych, zas nie moge pojac niektorych uzywanych terminow (jak dynamiczne czy statyczne linkowanie

1) Zainstalowalem sobie QT Creator, ktory ku mojemu zdziwieniu jest na licencji GPL ( http://en.wikipedia.org/wiki/Qt_Creator ). Mimo braku konkretnej wykladni sadowej istnieje potencjalna mozliwosc naruszenia praw autorskich(w zaleznosci od wykladni - http://en.wikipedia.org/wiki/GPL#Linkin ... ived_works ), czego chce uniknac jak ognia.
Moglibyscie wyjasnic mi rozbieznosci miedzy tym co napisalem, a czesto powtarzanym tu na forum stanowisku, iz QT oparte jest na licencji LGPL (ktora to jest duzo bardziej liberalna w tym zakresie, umozliwia korzystna wykladnie)?
2) Wspomniane GTKmm to biblioteka(?) dzialajaca tak jak qt, na ktorej stworze programy dzialajace na wielu platformach? Dobiegam konca w nauce surowego c++, liznalem lekko QT (gdyby nie te niejasnosci licencyjne, to chetnie bym przy nim pozostal


3)Jesli ostatecznie przyjmiemy, ze QT jest zbyt watpliwe, zas inne biblioteki moga spelnic cele zawarte w punkcie drugim - ktora z bibliotek zalecanych do nauki bylaby oparta na jakiejs swobodnej licencji, najlepiej LGPL, badz innej, nienazwanej (liberalnej odnosnie komplilowanych z niej programow)?
http://qt.nokia.com/products/licensing/licensing nadmieniam, ze samo QT przewiduje jak widac licencje gpl oraz lgpl, co musze zrobic, aby oprzec sie na lgplu?
- kabanek
- Zakręcona Traszka
- Posty: 592
- Rejestracja: 23 cze 2009, 20:34
- Płeć: Mężczyzna
- Wersja Ubuntu: 13.10
- Środowisko graficzne: Xfce
- Architektura: x86_64
- Kontakt:
Odp: [C++] wybor wx czy qt?
co do ostatniego pytania: nic tylko ściągnąć wersję lgpl, którą zapewne już masz
-
- Piegowaty Guziec
- Posty: 15
- Rejestracja: 20 cze 2010, 17:51
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
Odp: [C++] wybor wx czy qt?
w tym rzecz, ze ta licencja qt mnie meczy
Gdy instalowalem qt wyrzucilo mi licencje lgpl, co dobrze zwiastuje, jednak w folderze zawierajacym calosc mam juz pliki teksstowe zawierajace kilka roznych typow licencji, w tym gpl i pokrewne
Dzisiaj przysiade caly dzien i to wszystko w koncu przeczytam, zadalem powyzsze pytanie, bo myslalem ze ktos sie juz wkurzyl i zrobil to przede mna.


-
- Wytworny Kaczor
- Posty: 352
- Rejestracja: 15 paź 2008, 18:30
- Płeć: Mężczyzna
- Wersja Ubuntu: 9.04
- Środowisko graficzne: KDE Plasma
Odp: [C++] wybor wx czy qt?
@Jimbex Chcesz coś sprzedać na amerykański rynek? Bo jak nie to możesz linkować dynamicznie nawet do GPL (ale nie możesz dostarczać bibliotek ze swoim kodem)
Natomiast przy LGPL nie ma problemu nawet w Stanach (przy linkowaniu dynamicznym - zresztą jak na razie przy statycznym też chyba nie było wyroków sądowych)
QtCreator to nie biblioteka - a program. LGPL jest pomyślane dla bibliotek - pisząc w QtCreator możesz sprzedawać swoje programy.
QT4 jest dostępna również na GPLv3, ale nic nie stoi na przeszkodzie aby używać LGPL. Zresztą zawsze można użyć licencji komercyjnej jeżeli będzie Ci bardzo zależeć
Gtk+ i Gtkmm są na tej samej licencji co QT4 (ale chyba nie ma opcji komercyjnej)
wxWidget ma podobną licencję do LGPL (może troszkę bardziej liberalną), wygląda więc, że wybór zależy od tego która wydaje Ci się "lepsza" do tworzenia programów.
Natomiast przy LGPL nie ma problemu nawet w Stanach (przy linkowaniu dynamicznym - zresztą jak na razie przy statycznym też chyba nie było wyroków sądowych)
QtCreator to nie biblioteka - a program. LGPL jest pomyślane dla bibliotek - pisząc w QtCreator możesz sprzedawać swoje programy.
QT4 jest dostępna również na GPLv3, ale nic nie stoi na przeszkodzie aby używać LGPL. Zresztą zawsze można użyć licencji komercyjnej jeżeli będzie Ci bardzo zależeć

Gtk+ i Gtkmm są na tej samej licencji co QT4 (ale chyba nie ma opcji komercyjnej)
wxWidget ma podobną licencję do LGPL (może troszkę bardziej liberalną), wygląda więc, że wybór zależy od tego która wydaje Ci się "lepsza" do tworzenia programów.
- el.pescado
- Zakręcona Traszka
- Posty: 734
- Rejestracja: 26 maja 2005, 11:43
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: [C++] wybor wx czy qt?
Qt jest dostępne na kilku licencjach. Możesz sobie wybrać tę, która najbardziej Ci pasuje.mam juz pliki teksstowe zawierajace kilka roznych typow licencji, w tym gpl
-
- Serdeczny Borsuk
- Posty: 150
- Rejestracja: 20 paź 2007, 16:23
- Płeć: Mężczyzna
- Wersja Ubuntu: 11.04
- Środowisko graficzne: KDE Plasma
- Kontakt:
Odp: [C++] wybor wx czy qt?
Na początek Qt, potem przesiadka na wx, składniowo jest dość podobny, a nieco milsza licencja.
btw. qmake jest genialny, znacznie prostszy od samego makefile.
btw. qmake jest genialny, znacznie prostszy od samego makefile.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 15 gości