1.7.2011, 0:22 | #1 |
Veteran
|
Qt
Evo ljudi ako niste znali da postoji Qt.Ovo je cross platform framework od Nokia-e.
http://qt.nokia.com/ Uz njega dolazi creator(form designer), odlicna dokumentacija...Sve radi po principu signala i slotova.Dizajniranje elemenata forme se lako radi, nesto slicno css-u.A glavni programski jezik je C++.Ali mislim da postoji i python i mozda jos koji jezik. Tutorijali: http://voidrealms.com/tutorials.aspx?filter=qt |
1.7.2011, 0:52 | #2 |
Starosedelac
|
Re: Qt
Ja sam ga baš skinuo sinoć i kompajlirao za VS2010 ali ne radi mi
|
1.7.2011, 12:50 | #3 |
Član
|
Re: Qt
Znali smo da postoji.Pre par nedelja poceo sam ga koristiti ali iznervirao me je onaj njihov moc komplajer i uopste sama potreba za generisanjem tih fajlova, nikako nisam mogao da podesim sa Code::Blocks a na njihovom forumu niko mi nije odgovaro, poprilicno je velika biblioteka, dokumentacija i nije bas najbolja, sve u svemu probao sam i nesto mi se narocito i ne svidja mozda je to samo prvi utisak zato sto Qt zaista ima dosta funkcionalnosti ali sve mi je nekako prenatrpano.
Videcu neke alternative Qt fala bogu pa ih ima pa ako mi i one ne odgovaraju back to Qt. |
1.7.2011, 13:35 | #4 |
Starosedelac
Član od: 8.4.2006.
Lokacija: Beograd
Poruke: 2.590
Zahvalnice: 919
Zahvaljeno 585 puta na 364 poruka
|
Re: Qt
Fazon je i kod kompajliranja, defaul je sa -shared tj. moram neki runtime .dll da ide uz aplikaciju ako hoces na nekoj drugoj masini koja nema podeseni Qt da pokrenes Qt program.
Sa -static opcijom sa MSVC 2010 kompajlerom puca negde posle 20min kompajliranja. Jer nije mi fazon da c++ programu (neki jednostavan) trebaju neke dodatne biblioteke kao za .NET. Izguglao sam dosta upustava, evo neko pocetno: http://www.holoborodko.com/pavel/201...l-studio-2010/ mada ovde mi se cini da je greska u koraku 10. ja sam sve u jom folderu prekopirao u C:\Qt\4.x.x folder i pokrenuo sa jom.exe -j 2 posto imam dual core, za quad moze 4. I da u ovom linku gore, lik je u configure stavio sve zivo da se kompajlira, sto bas nebi preporucio jer ima par stvari koje ne rade na Win-u, a plus ovo kad se kompajlira zauzima oko ~6Gb i treba oko 5-6 sati na starijom AMD Athlone X2. Evo o configure parametrima, vredi procitati sta ima tamo jer opet kazem nije sve potrebno. http://www.qtcentre.org/wiki/index.p...Configuring_Qt Primer mojih parametara (sve u jednom redu): Spoiler za params:
Ko hoce da se zeza sa nekim optimizovanjem http://www.formortals.com/build-qt-s...-gcc-compiler/ |
2.7.2011, 1:36 | #5 |
V.I.P. Programiranje
|
Re: Qt
Probao sam malo da se bakćem sa Qt-om ali prva stvar koja me je iznervirala je bio Meta-Object System i poseban kompajler, ko su oni da menjaju programski jezik i daju neke svoje kompajlere? Bilo bi OK ako bi to bilo opciono, ali nije (AFAIK), a uz to su im i licence malo čudne. Uz to se ne koriste nativne biblioteke za iscrtavanje već Qt crta neke 'svoje' UI elemente. Sve u svemu, uopšte mi se ne sviđa. wxWidgets sa wxAUI-jem je dobitna kombinacija kad je u pitanju multiplatformnost pod C++-om.
|
2.7.2011, 2:13 | #6 |
Član
Član od: 15.12.2010.
Lokacija: Beograd
Poruke: 120
Zahvalnice: 26
Zahvaljeno 39 puta na 32 poruka
|
Re: Qt
Postoji prilično impresivna lista aplikacija koje su razvijene uz pomoć wxWidgetsa (BitTorrent, aMule, Code::Blocks...) ali mi se čini da je lista Qt aplikacija daleko impresivnija (Autodesk Maya, VLC Media Player, Skype, Google Earth ... ). Meni je to sasvim dovoljno da napravim izbor .
|
2.7.2011, 2:26 | #7 | |
V.I.P. Programiranje
|
Re: Qt
Citat:
|
|
2.7.2011, 5:57 | #8 |
Član
Član od: 15.12.2010.
Lokacija: Beograd
Poruke: 120
Zahvalnice: 26
Zahvaljeno 39 puta na 32 poruka
|
Re: Qt
Za one koji su zainteresovani za Qt na youtube-u ima gomila primera koja govori više od 1000 reči. http://youtu.be/QLT7oEt6gLE
Ovo je recimo jedan čist C++ primer, mada se (ukoliko sam ja dobro shvatio) može koristiti i Lua, Python, Java ... Ja definitivno nameravam, kad završim trenutne projekte, da počnem da radim sa Qt-om. Pročitao sam dosta pozitivnih stavova od ljudi koji ga koriste godinama. Čak i vrlo smele tvrdnje kako Qt Creator ima mnogo bolji editor od Visual Studia (dok ovaj drugi ima bolji dibager). Ono što me više zanima su zamerke (kao recimo ovaj moc) i šta tu konkretno može da smeta nekome u radu (konkretno u vezi tog generisanja fajlova)? |
2.7.2011, 12:35 | #9 |
V.I.P. Programiranje
|
Re: Qt
Ne mogu da kažem da sam mnogo proveo u radu sa Qt-om, ali mi je od svega moc zasmetao. Razlog je to što C++ fajl koji ima Q_OBJECT definicije ili definicije slotova nikako ne može da prođe kroz običan C++ kompajler već treba moc da bi sve radilo i da bi imao signale i slotove što je glavni event system. To odmah povlači da ne možeš taj program da kompajluješ ni na jednom sistemu bez moc-a, pa dalje da ne možeš da koristiš standardne IDE-ove (zato što treba custom preprocessing step a to u većini nema) nego moraš Qt Creator (ili eventualno neki addon za IDEove). To znači i da ne koristiš čist C++, već neki njihov dijalekat pa si direktno zavistan od njih. wxWidgets, sa druge strane, postiže odličan event system bez ikakvog sumnjivog kôda bez ikakvih "ekstenzija" C++-u i dodatnih kompajlera. Navode se argumenti da Qt pomoću signala i slotova izbegava kôd koji se ponavlja, ali najiskrenije ja ni sa wxWidgetsom nisam uopšte imao takav problem. Zato uvek preporučujem wxWidgets umesto Qt-a, zbog toga što postiže mnoge stvari bez ikakvih dodataka i sl. Druga stvar koju mu zameram je to što koristi nestandardne biblioteke za crtanje tj. svoj renderer. Ostali sistemi koriste OS-ove biblioteke, recimo WinAPI za Windows ili GTK+ za Linux.
|
3.7.2011, 11:54 | #10 |
Član
Član od: 26.5.2007.
Poruke: 278
Zahvalnice: 16
Zahvaljeno 102 puta na 66 poruka
|
Re: Qt
Qt rules. Radim u njemu vec 2 godine i mogu samo reci da mi je to default framework.
MOC kompajler je neizbezan kada se pravi veliki framework koji programeru treba da omoguci brzo i lagano koriscenje velikog broja klasa, a Qt zaista ima klase za sve zivo (i mrtvo ). Druga opcija je da koristite npr. Boost biblioteku koja takodje ima signale i slotove i razne druge dzidza bidze. Za one koji nisu znali QGraphicsView/QGraphicsScene ce od verzije 4.8 ili 5.0 biti napisani tako da maksimalno koriste pogodnosti OpenGL-a sto ce dovesti do velikog povecanja performansi onim aplikacijama koje koriste QGraphicsView/QGraphicsScene. @Geomaster Aj ne lupetaj leba ti. Qt je trenutno jedan od najbolje dokumentovanih frameworka, nema sta nije opisano. Za svaki metod u klasi lepo pise sta i kako radi, plus tu su i knjige u kojima je dosta dobro opisano kako odredjene stavri u Qt-u funkcionisu. Evo vam link ka raznim video prezentacijama zgodnim za ucenje raznih delova Qt-a:http://developer.qt.nokia.com/elearning Qt Creator je meni nezamenljiv, code completition radi savrseno, jedino bi debugger mogao da bude malo brzi, no to je slucaj samo kada se radi sa microsoftovim debuggerom, ca gcc debuggerom radi extra. Trenutno cuka neku zezalicu za Android u Qt-u, cisto da vidim kako sljaka na Androidu, za sada leti. Code less, create more and deploy everywhere Edit: za windblows korisnike koji ne znaju: Ako posedujete procesor sa vise jezgara, Qt mozete da kompajlirate koristeci jom.exe, nadjite ga na netu. Znaci uradite configure posle samo jom.exe -j N (N je broj jezgara) i Qt ce se umesto samo na jednom jezgru, kompajlirati na svim jezgrima vaseg procesora. Razlog za ovo je to sto microsoftov kompajler ne zna dobro da iskoristi procesore koji imaju vise jezgara, pa mora neko da malo rasporedi posaa za njega na svakom jezgru po malo. Na primer, Qt Creator koristi jom kada kompajlira vasu aplikaciju, da iskoristi pun kompajlerski potencijal vaseg procesora Poslednja ispravka: pivonroll (3.7.2011 u 12:06) |
3.7.2011, 14:55 | #11 | |
V.I.P. Programiranje
|
Re: Qt
Citat:
Što se tiče Meta Object Systema i blaćenja originalnog programskog jezika nemam reči (spomenuo sam to negde gore). Ako je MOS neizbežan, trebalo je da se jasno naznači da Qt nije framework za C++ već za izmenjeni C++ sa Q_OBJECT definicijama i drugim izmenama. To isto je uradio M$ kada je izbacio tzv. Managed C++ i tada su mi se definintivno zgadili. Druga stvar, problem Qt-a je što ima klase za sve živo (i mrtvo). Zar nije verovatnije da će neko skinuti Qt zato što služi za pravljenje GUI-ja nego zato što ima klase za pravljenje kafe? Ako hoću, recimo, bazu podataka, uzeću Qt za GUI a skinuću neki sistem za baze (bio to SQLite ili neki serverski tipa MySQL ili PostgreSQL). Ako hoću boost-ove biblioteke, skinuću boost, a ne da se oslanjam na Qt za sve. Generalizovani frameworkovi nikada ne rade posao 100% kako treba baš zato što su toliko generalizovani. Što je uža 'delatnost' neke biblioteke, to korisnik može biti sigurniji da dobro obavlja posao. Ja ovde ne kažem da Qt ne radi kako treba, već da je isuviše glomazan i nezgrapan za moj ukus. Ali opet, nekome to neće biti problem i propovedaće one true Qt way, zato što su ukusi različiti EDIT: I da, ne postoji gcc debugger. Poslednja ispravka: Geomaster (3.7.2011 u 20:21) |
|
3.7.2011, 18:37 | #12 |
Član
Član od: 26.5.2007.
Poruke: 278
Zahvalnice: 16
Zahvaljeno 102 puta na 66 poruka
|
Re: Qt
just keep writing ...
|
Bookmarks sajtovi |
Tagovi |
framework, nokia, tutorijali |
|
|