[C] Programování GUI - zdarma vývojářské nástroje?

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod jech 19. 8. 2006 12:13

Ahoj,

potřeboval bych poradit pár věcí:

Chci naprogramovat malej prográmek s GUI, nejlépe pomocí C. Umim ale programovat jenom v Pascalu a PHP (průměrně) a v Javě (velmi málo).

Potřeboval bych poradit nějaké zdarma dostupné vývojářské nástroje: IDE (jaký je Eclipse?), kompilátor (funguje GCC ve Windows, jaký jiný), nějakou grafickou knihovnu (QT4?). No ale hlavně bych potřeboval nějaké informace, jak vůbec začít. Nějakou učebnici pro progrmování v C, jde mi o syntaxi. Programovací techniky obecně zvládám. A potom hlavně jak udělat GUI. Z toho co jsem napsal snad vyplývá, že jsem GUI nikdy neprogramoval.

Pokud máte tip na nějakou dobrou knížku, také bych to uvítal. Díky.

// Howard - upraven titulek
jech
Pokročilý
Uživatelský avatar

Odeslat příspěvekod viva 19. 8. 2006 12:54

Dobré free IDE pro C a C++ je Dev-Cpp ( http://www.bloodshed.net/dev/ )
jako default kompilátor používá portovaný gcc. Lze doinstalovat spoustu dalších knihoven.
Učebnice - je jich spousta, každá je jinak orientovaná, právě tak je spousta online tutoriálů na netu. Z českých mohu doporučit seriály na Builderu - ty jsou orientované na Windows.
Učíme se C - http://www.builder.cz/art/cpp/clanek1666892044.html
Objektově orientované programování v C++ - http://www.builder.cz/art/cpp/cpp_oop.html
Učíme se Win API - http://www.builder.cz/art/cpp/winapi1.html
Dobrá serie článků o Dev-Cpp a programování v C++ pod Windows (včetně GUI) vyšla na PCSvětě - autor Jan Ringoš http://www.pcsvet.cz/art/author.php?id=112&page=1
viva
Kolemjdoucí

Odeslat příspěvekod Benjamin 19. 8. 2006 17:46

Pokud chces programovat pro Windows, musi to byt zasadne C++?
Proc nezkusit treba C#, nebo Delphi, kdyz umis Pascal?
Jde o to, ze s obama temito jazyky jdou ruku v ruce snadno pouzitelne GUI knihovny a kvalitni navrhare GUI.
Naposledy upravil Benjamin dne 19. 8. 2006 18:23, celkově upraveno 1
Umělá inteligence není soupeř pro přirozenou hloupost.
Benjamin
Junior
Uživatelský avatar

Odeslat příspěvekod par 19. 8. 2006 17:48

U toho qt si dej pozor na licenci. Myslím, že jsou tam rozdílný pravidla pro linux a windows. Ted přesně nevím jak to je, ale licence qt byl pro mě před časem důvod k použití knihovny GTK+.
(Navíc mám dojem že v qt se programuje v C++.)
par
Junior

Odeslat příspěvekod jech 19. 8. 2006 18:56

par> QT podle mě můžu získat s GPL licencí, takže pokud je můj program šířený pod GPL, nemám problém. Pokud bych ho chtěl šířit pod jinou licencí, musel bych zakoupit komerční verzi QT. GTK+ je šířený s licencí LGPL, která umožňuje používat knihovny GTK+ i v closed source programech.

Benjamin> Nemusí to být zrovna C/C++. Ale zaprvé jsem se chtěl ten jazyk trochu naučit a taky jsem se trochu bál rychlosti Javy. Nemáte někdo srovnání jaké jsou rychlosti Javy a C programů? Většina programů v Javě s GUI se mi zdála dost nemotorná. Ale je pravda, že třeba takový přehrávač Jajuk je poměrně svižný.
jech
Pokročilý
Uživatelský avatar

Odeslat příspěvekod PaLaDiN 20. 8. 2006 13:12

zatial sa mi na internete nepodarilo najst ziaden manual k prgramovaniu v QT po slovensky alebo cesky (je aj pre M$ win ako opensource myslim verzia 3.1)
nemohli by ste mi poradit?
PaLaDiN
Junior
Uživatelský avatar

Odeslat příspěvekod kremso 20. 8. 2006 15:49

jech píše: Nemáte někdo srovnání jaké jsou rychlosti Javy a C programů? a/quote]


Nechci porovnavat rychlost Javy a C. Aj tak ti je jasne, ze C je rychlejsie. Aj tak tvoj program bude 90% casu len cakat a ci ta chvila, co bude nieco robit, bude trvat 15ms alebo 20ms je ulpne jedno.
Loepold Kronecker : Boh vytvoril celé čísla, všetko ostatné je výtvorom človeka.
kremso
Junior
Uživatelský avatar

Odeslat příspěvekod čávo 20. 8. 2006 21:02

jech píše:par> QT podle mě můžu získat s GPL licencí, takže pokud je můj program šířený pod GPL, nemám problém. Pokud bych ho chtěl šířit pod jinou licencí, musel bych zakoupit komerční verzi QT. GTK+ je šířený s licencí LGPL, která umožňuje používat knihovny GTK+ i v closed source programech.

b]Benjamin[/b]> Nemusí to být zrovna C/C++. Ale zaprvé jsem se chtěl ten jazyk trochu naučit a taky jsem se trochu bál rychlosti Javy. Nemáte někdo srovnání jaké jsou rychlosti Javy a C programů? Většina programů v Javě s GUI se mi zdála dost nemotorná. Ale je pravda, že třeba takový přehrávač Jajuk je poměrně svižný.J/quote]


Učiť sa v dnešnej dobe C je zbytočné plytvanie energiou. Minimálne by som začal s C++ veď na programovanie GUI aplikácií je OOP nevyhnutné. Inak jazyky C/C++ veľkú perspektívu nemajú, písal si že máš skúsenosti s pascalom takže radšej prejdi na Delphi, VCL knižnica je veľmi zrozumiteľná a vhodná pre začiatočníkov. Platforma .NET je ešte jednoduchšia ale má o dosť viac ukecanú syntax. Ak sa chceš programovaniu venovať profesionálne tak najlepšou voľbou je Java. Okrem toho že je najpopulárnejšia a najžiadanejšia je aj multiplatformná: môžeš v nej vyvíjať webové aplikácie(servlety, JSP), GUI aplikácie, aplikácie pre mobilné zariadenia, setopboxy atd. Rýchlosť čiastočne rieši SWT ktoré je o dosť rýchlejšie ako Swing (stačí porovnať prostredia Eclipse (SWT) s NetBeans (Swing)).
čávo
Junior

Odeslat příspěvekod jech 20. 8. 2006 21:19

čávo> Tak já se asi spíš vrhnu na tu Javu. Už jsem přečetl asi 3 učebnice a jakž-takž zvládam programování bez GUI. Jenže potom na to vždycky zase nemam čas a půlku toho zapomenu.

Neměl bys nějaký tipy na seriál o SWT nebo případně knížku?

Díky
jech
Pokročilý
Uživatelský avatar

Odeslat příspěvekod Ripper-CZ 20. 8. 2006 21:42

Zaprve, pokud umis aspon trochu v NetBeans, tak i C++ se da psat pod NetBeans, staci si stahnout za stranek prislusnej "expansion pack".

Co se tyka ale programovani, tak bych ti taky doporucil zahodit c/c++ a zacit se ucit javu, mnoho veci je tam daleko snazsich. na gui je tam swing, netbeans ma i klikaci editor gui. dotnet bych se neucil, multiplatformnost bude mit cim dal vetsi vahu, takze jednoznacne java.

kdyz budes umet JEE (java enterprise edition) na slusne urovni, tak budes mit i hodne slusnej plat.

co se tyka srovnani rychlost c++/java, tak rozdil je akorat ve spousteni, coz je samozrejme, protoze krome samotneho programu se u javy musi jeste spustit virtualni masina. v samotnem behu programu jsou rozdily minimalni. hry se v jave moc nepisi (i kdyz nektere jo), ale na obycejne aplikace je to pohodlnejsi vyvoj za neznatelne vykonove rozdily. pomalost javy je fama pochazejici z prvnich verzi javy, od javy 5.0 (a blizici se 6.0) uz dokonce je obcas rychlejsi nez kompilovany kod (c++). samozrejme zalezi na tom, jestli pises poradne, nebo prasacky. to ale zalezi v kazdym jazyku.

co se tyka Swing vs SWT, tak je to neco podobneho. swing se za poslednich par verzi javy mnohonasobne zrychlil, a ted je v rychlosti minimalni rozdil. zato ma mnoho svych vyhod. swt trpi spatnou portabilitou a prilisnou integraci, mimo jine. kdyz uz psat v jave, tak aspon poradne multiplatformne. swing je budoucnost. od javy 6 ktera ted prijde uz bude mit i nativni vzhled prvku pro jednotlive platformy, takze tato asi nejvetsi vyhoda swt odpadne taktez. swing je primo v java api, takze nemusis pridavat zadne knihovny, nic, staci zacit psat. naucil bych se aspon zaklady nez se rozhodnes odchylit se od standardnich knihoven javy...

poradil bych ti nejprve pustit si netbeans a zkusit si naklikat naky gui v jeho grafickym navrhari, at mas nakou predstavu. a potom se o to muzes zacit hloubeji zajimat. o swingu (a nejen o swingu, o cele jave) ma sun naprosto skvele tutorialy s mnozstvim ukazkovych prikladu a zdrojaku:
http://java.sun.com/docs/books/tutorial/
swing je konkretne tady:
http://java.sun.com/docs/books/tutorial/ui/index.html
Chtěl bych poděkovat firmě Microsoft, která mi úrovní svých produktů umožnila seznámení s krásou Linuxu.
OS nemá být pro peníze, ale pro lidi...
Ripper-CZ
Junior
Uživatelský avatar

Odeslat příspěvekod par 21. 8. 2006 16:10

jech píše:par> QT podle mě můžu získat s GPL licencí, takže pokud je můj program šířený pod GPL, nemám problém. Pokud bych ho chtěl šířit pod jinou licencí, musel bych zakoupit komerční verzi QT. GTK+ je šířený s licencí LGPL, která umožňuje používat knihovny GTK+ i v closed source programech.
i/quote]


Máš pravdu, ted jsem se na to díval, od verze 4 je QT jako GPL i pod windows.
par
Junior

Odeslat příspěvekod PaLaDiN 21. 8. 2006 20:41

ako je to v jave s generikou ??
ja implementovana ? pretoze zatial som sa docital len, ze generika je na velmi slabej urovni
PaLaDiN
Junior
Uživatelský avatar


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků