[ dalibor_zdravkovic @ 02.06.2010. 22:05 ] @
Pocetnik sam u ovim stvraima pa me zanima sta da korisitm za programiranje windows aplikacija u c++.
WIN API je preobiman za detaljno ucenje.
MFC je brz za rad i u roku od nekoliko minuta moze se odraditi neka prosta aplikacija koja vrsi neka izracunavanja itd.
Problem kod MFC-a je taj sto nije toliko fleksibilan uvezi interfejsa (npr. danima sam pokusavao da u toolbar-u ubacim neku pdajucu listu kao sto je na primer lista iz koje se bira font u raznim drugim aplikacijama i nisam uspeo).
Sa Qt-om jos uvek nisam imao kntakta, mada sam vidjo aplikacije sa izuzetnim interfejsima pa me zanima da li ima neceg boljeg ili da krenem da proucavam Qt.

[ Sapphire @ 02.06.2010. 22:28 ] @
Ako je C++ obavezan, moja preporuka je da barem prođeš osnovni WinAPI tutorial, pogledaš i neke malo naprednije stvarčice, pa se onda bacis na neki framework po svom izboru koji ti najviše leži. WinAPI sam naveo jer ipak radi se o C++-u, kad već radiš najkomplikovanije, red je da znaš onda i osnove, jer ćeš sa C++-om najlakše realizirati funkcionalnosti koje su ti potrebne, a koje framework biblioteke ne pružaju.

S druge strane, danas i nema mnogo stvari koje nigdje nisu realizirane, pa bi ti bolja opcija bila da pređeš na neki managed jezik (moja preporuka C# & .NET). Kad znaš C++ na nivou pointer-a, referenci, copy konstuktora, function pointer-a, klasa, ABC klasa, nasljeđivanja, polimorfizma, operator overloading-a te virtuelnih metoda, onda si spreman za apsolutno sve, samo treba vremena.
[ glorius @ 03.06.2010. 00:21 ] @
Citat:
danima sam pokusavao da u toolbar-u ubacim neku pdajucu listu kao sto je na primer lista iz koje se bira font u raznim drugim aplikacijama i nisam uspeo


I ja sam imao slican problem.

Mozes pogledati ovu temu u kojoj smo malo diskutovali MFC i Qt: http://www.elitesecurity.org/t400502-usavrsavanje-iz
[ dalibor_zdravkovic @ 03.06.2010. 21:03 ] @
MFC je za GUI nula, skoro nista u izgledu aplikacije ne mozes da se izmeni, kako su oni zamislili da izgeda interfejs to je. Samo dodajes kontrole i pises sta da rade.
Qt je dobar i jednostavan ali cisto sumnjam da ga neke firme u srbiji koriste jer je mnogo skup.
Idem ja na C# i .NET. Dosta je koriscen i rasprostranjen iako sam na faksu sve radio u C++ i Javi vidim da C++ polako odlazi, a da su C# i Java sve vise u ekspanziji, C# za WINDOWS a Java i ASP.NET sa C#-om za WEB.

Toliko godina izucavanja necega uzalud, da sam odmah krenuo na C# sad bi bio tata.
[ the_tosic @ 03.06.2010. 21:11 ] @
QT je dzabe ;)
[ BinaryRuler @ 03.06.2010. 22:39 ] @
Qt je odlican, sta god da ti pane na pamet postoji u njemu.

Qt ide pod dve licence,komercijalnu i LGPL.
Sto znaci da mozes da ga koristis besplatno cak i za izradu komercijalnog softvera ako ga dinamicki linkujes, tj. ako koristis qt ove dll ove u win slucaju.

Code:

The main difference between the GPL and the LGPL is that the latter can be linked to
(in the case of a library, 'used by') a non-(L)GPLed program, regardless of whether it is 
free software or proprietary software.

A standalone executable that dynamically links to a library is generally accepted as not being
a derivative work (in LGPL). It would be considered a "work that uses the library"
and paragraph 5 of the LGPL applies.


http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License
[ Eurora3D Team @ 07.06.2010. 00:34 ] @
Qt je besplatan ( 4free) , LGPL , multiplatformski framework ... dobar je.
A za windows GUI imas i Borland (free verzije) sa njihovim VCL framework-om.

[Ovu poruku je menjao Eurora3D Team dana 07.06.2010. u 12:20 GMT+1]
[ Nedeljko @ 08.06.2010. 19:23 ] @
Drago mi je da sve više ljudi proziva Qt - odličan je, slobodan, otvoren, besplatan i višeplatformski.

Šta se dobija uz Qt SDK?

1. Na Windows platformi MinGW C++ kompajler sa pratećim linkerom i dibagerom (mada se može koristiti i drugi, npr borland-ov ili MS-ov),
2. Izuzetno moćna i sveobuhvatna biblioteka,
3. Qt Designer dizajner formi,
4. QMake alat za automatizaciju prevođenja,
5. Qt Linguist za pravljenje višejezičkih programa,
6. Vrlo dobra dokumentacija,
7. Qt Assistant program za pretragu dokumentacije, koji se može kao modul isporučivati uz tvoje programe za help,
8. Qt Test za pravljenje test jedinica.
9. Qt Creator IDE u koga je sve to (osim Qt Linguist-a) integrisano,
10. Valjda sam nešto zaboravio da navedem.
[ bkaradzic @ 10.06.2010. 06:01 ] @
Qt je zakon!
[ Nedeljko @ 10.06.2010. 13:14 ] @
Milo mi je.

No, zanima me da li ovakva poplava pohvala na račun Qt-a potiče od odluke o LGPL liceniranju?
[ mmix @ 10.06.2010. 13:23 ] @
Vrlo moguce. Mene je zaintrigirala zbog toga :) Definitivno nesto sto cu razmotriti ako dodje pure multiplatform C++ projekat. Sa GPLom bi to vec bilo neprakticno.

[ Aragorn2004 @ 10.06.2010. 13:52 ] @
Qt je stvarno genijalan. Moderan, dobro dokumentiran i jednostavan za koristenje. Imas nize moju temu u koju sam postavio dva programa napisana u Qt-u pa ih pogledaj ako hoces. Da sam to radio s npr. MFC-om, ni danas ne bih bio gotov. Ili mozda i bih, ali bih se puno vise namucio.
[ Nedeljko @ 10.06.2010. 14:06 ] @
MFC je toliko rudimentaran da nema ni najobičniji spinbox!

Zapravo, ima kontrolu koja se tako zove, ali ona predstavlja samo strelice gore-dole, pa ih onda lepi pored edit kontrole i obrađuj događaje, ne bi li napravio onop što u svakom normalnom frejmvorku postoji gotovo.

Citat:
mmix: Definitivno nesto sto cu razmotriti ako dodje pure multiplatform C++ projekat.


Uopšte ne treba projekat da bude višeplatformski da bi Qt bio jedan od najozbiljnijih kandidata.
[ mmix @ 10.06.2010. 14:28 ] @
Pa ne mora, ali ako je samo windows target onda ce pre ispasti neki .NET projekat od toga nego c++ (da ne pocinjemo cpp vs clr, nije tema).
[ Nedeljko @ 10.06.2010. 14:38 ] @
OK, ali ako iz bilo kog razloga bude C++ projekat, Qt je jedan od najozbiljnijih kandidata, a za više targeta postoji i Java.
[ bkaradzic @ 10.06.2010. 21:08 ] @
Citat:
Nedeljko: No, zanima me da li ovakva poplava pohvala na račun Qt-a potiče od odluke o LGPL liceniranju?

Ne, ali bitno je da je open source. Tj. da postoji opcija za korišćenje ako se ne distribuira executable. Ja ga koristim još od verzije 3 (2004). Kada sam to odlučio razmotrio sam i ostale opcije tipa WTL, wxWidgets, itd. čak i druge jezike npr. C#, Borland C++, Delphi, pošto imaju bolju GUI podršku od C++ opcija. Ali sa Qt sve te druge opcije su zamajavanje. Inače Autodesk je prebacio njihove 3D alate (znam pouzdano za 3DSMax i Maya-u, a možda to rade i za CAD) na Qt.

Jedina zamerka koju imam na Qt je njihova podrška za docking prozora i QDockWidget. Napravili su ga kao da nikada nisu videli nijedan moderan docking prozora.
[ mmix @ 10.06.2010. 21:17 ] @
Cek bre, ja koliko znam Qt je vec neko vreme bio open source ali uz GPL licencu? Open source deo nije nikad bio problem (bar meni), GPL je bio problem.
[ Eurora3D Team @ 10.06.2010. 21:41 ] @
Citat:
mmix: Cek bre, ja koliko znam Qt je vec neko vreme bio open source ali uz GPL licencu? Open source deo nije nikad bio problem (bar meni), GPL je bio problem.

Jeste. Qt je od pocetka bio open source, pa ga je kupila Nokia, malo sredili i promenili licencu na LGPL. Sad ga uvode i na mobilne telefone.
Radim u timu koji koristi Qt i mogu da kazem da je ok. Najbolja stvar je sto je multiplatformski pa onda idu one klasicne stvari o framework-u ...
[ Nedeljko @ 10.06.2010. 23:16 ] @
Citat:
bkaradzic: Kada sam to odlučio razmotrio sam i ostale opcije tipa WTL, wxWidgets, itd. čak i druge jezike npr. C#, Borland C++, Delphi, pošto imaju bolju GUI podršku od C++ opcija.


Napravio si mali lapsus. Borland C++ nije drugi jezik, već je i dalje C++.

Citat:
Eurora3D Team: Jeste. Qt je od pocetka bio open source, pa ga je kupila Nokia, malo sredili i promenili licencu na LGPL.


Nije baš od početka, bar ne na Windows i MacOS X platformama. Na njima je open source tek od verzije 4.

Citat:
Eurora3D Team: Radim u timu koji koristi Qt i mogu da kazem da je ok.


Sme li se znati ime firme?
[ bkaradzic @ 11.06.2010. 00:50 ] @
@mmix
Zavisi šta radiš, GPL je problem ako distribuiraš executable (onda moraš da distribuiraš i source), ali ne ako ga interno koristiš. Mada GPL jeste bio problem za dosta ljudi. I sada povremeno čujem i LGPL im je problem, mada mislim da je to više ono iz neznanja. Što se tiče linkovanja statičkih biblioteka probao sam jednom da ih kreiram za Qt i mogu reći da to nije bila pametna ideja. :)
Citat:
Nedeljko: Napravio si mali lapsus. Borland C++ nije drugi jezik, već je i dalje C++.

Da. Mislio sam na Borland biblioteke (Builder C++ ili kako se već zvao) koje su bile dostupne samo ako koristiš njihov kompajler.

Inače od drugih primedbi na Qt, uglavnom čujem da je .moc-ing problem za neke, ali uglavnom ti što se žale ne koriste qmake da im generiše VS projekte, nego to rade ručno.
[ mmix @ 11.06.2010. 08:05 ] @
Ima tu i drugih stvari koje zivot unosi u pricu van sarene teorije. Po GPL licenci tvoj program (ceo) mora biti GPL i kao sto kazes to nije problem u inhouse primeni. Tj nije problem dok neko ne iznese sors iz firme, firma nece prekrsiti GPL ali je posle veoma tesko to blokirati u daljoj distribuciji. Drugo, pod GPLom termin "distribucija" je veoma rigidan i ogranicavajuci. Ako npr firma unajmi mene kao eksternog konsultanta/kontraktora/itd i da mi GPL sors da bi radio na njemu to se racuna kao distribucija, ja onda mogu da uzmem CEO njihov sors i da ga distribuiram dalje, trade-secrets and all. Itd, itd.
[ deerbeer @ 11.06.2010. 08:45 ] @
QT bolje da se naplacuje po nekoj pristojnoj ceni. Kao visual studio i slicni alati.
Cela prica oko tog os licenciranja mi nikad nije bila do kraja jasna .
Te mozes ovo , ne mozes ono , te u ovim slucajevima ovako ili nesto trece itd ..
Bolje je da platis za odlican proizvod , pa onda i imas i bolju tehnicku podrsku od ove koja je sada
za eventualne bug-ove i nove funkcionalnosti frejmvorka .



[ Nedeljko @ 11.06.2010. 09:45 ] @
Citat:
bkaradzic: Što se tiče linkovanja statičkih biblioteka probao sam jednom da ih kreiram za Qt i mogu reći da to nije bila pametna ideja. :)


Bez problema se mogu napraviti pomoću configure alata uz ponovno kompajliranje Qt-a. Kome to treba, druga je stvar.

Citat:
deerbeer: QT bolje da se naplacuje po nekoj pristojnoj ceni. Kao visual studio i slicni alati.
Cela prica oko tog os licenciranja mi nikad nije bila do kraja jasna .
Te mozes ovo , ne mozes ono , te u ovim slucajevima ovako ili nesto trece itd ..
Bolje je da platis za odlican proizvod , pa onda i imas i bolju tehnicku podrsku od ove koja je sada
za eventualne bug-ove i nove funkcionalnosti frejmvorka .


Ne razumem u čemu je problem. Možeš više nego sa komercijalnim licencama npr. u slučaju wxWidgets-a, boost-a i FLTK-a. U slučaju Qt-a, jedino ti je statičko linkovanje sa vlasničkim kodom zabranjeno, a po svim ostalim pitanjima su komercijalne licence više ograničavajuće.

Citat:
bkaradzic: Inače od drugih primedbi na Qt, uglavnom čujem da je .moc-ing problem za neke, ali uglavnom ti što se žale ne koriste qmake da im generiše VS projekte, nego to rade ručno.


Ma, da. Kad naučiš da koristiš (pročitaš neku njigicu), onda nema problema.
[ Nedeljko @ 11.06.2010. 10:36 ] @
Citat:
deerbeer: QT bolje da se naplacuje po nekoj pristojnoj ceni. Kao visual studio i slicni alati.
Cela prica oko tog os licenciranja mi nikad nije bila do kraja jasna .
Te mozes ovo , ne mozes ono , te u ovim slucajevima ovako ili nesto trece itd ..
Bolje je da platis za odlican proizvod , pa onda i imas i bolju tehnicku podrsku od ove koja je sada
za eventualne bug-ove i nove funkcionalnosti frejmvorka .


Pa, Qt jeste na raspolaganju pod komercijalnim uslovima. Klijenti tvrde da je podrška do jaja.