Komplexní studijní materiál pro knihovnu Qt (C++)

noname

Komplexní studijní materiál pro knihovnu Qt (C++)
« kdy: 05. 09. 2013, 02:06:03 »
Zdravím všechny.
Umím nějakým způsobem základy C++ (po standartní knihovny, dědičnost, virtuální třídy, využití šablon apod.) a chci se naučit programovat složitější programy, přičemž mi bylo doporučeno QT, jelikož má využití i ve firemním sektoru (prý). Chci se Vás jako zkušenějších tedy zeptat, jestli je tato knihovna dobrá volba, ale také mě zajímá jiná věc - pro QT verze 5.1 nemůžu najít žádný pořádný manuál, vždy najdu jen nějaké základní návody. Mrzí mě, že sem dávám UTFG otázku, ale bohužel se mi skutečně nedaří najít nic komplexního, z čeho by se dalo studovat (mimo různých, podle všeho základních, tutoriálů).
Děkuji Vám za odpovědi.


Tomáš Marný

Re:Komplexní studijní materiál pro knihovnu Qt (C++)
« Odpověď #1 kdy: 05. 09. 2013, 09:06:56 »
http://qt-project.org/doc/qt-5.1/qtdoc/index.html

Jestli ti tohle nestačí, tak jdi radši od toho.
Ohledně učení se takovýchle věcí jsem skeptický. Je to jenom knihovna. To je jako by se začínající zedník ptal, jestli se má učit stavět rodinné domy takového a takového typu nebo radši kancelářské budovy. Odpovědí je, že by se měl především dobře naučit svému řemeslu a pak už by mu mělo být šumafuk, dostane-li plány k rodinnému domku nebo k elektrárně.
Takže cvičně si v tom klidně něco udělej, ale nakonec to bude jedno, protože dnes, v době online dokumentace a dostupnosti různých zdrojáků, se normální vývojář takovou věc učit nepotřebuje - šéf, klient, atp. mu prostě řekne chci, aby to bylo v Qt, tak sedne, otevře příslušnou dokumentaci, a udělá to v Qt. Jestli bude potřebovat tak den na to, aby pochopil logiku té knihovny, tak tvá přidaná hodnota spočívající v její znalosti bude celkem mizivá. Tím tě od toho nechci odrazovat, určitě by sis to zkusit měl, ale podle mě je celkem jedno, co konkrétně to bude. Např. sám pro sebe jsem si mastil v Gtk, v práci jsem makal na woknech ve Visual C++ a jednou přišlo zadání, že aplikace má být dělaná v Qt a s výhledem její budoucí portace na Linux. Použití GCC bylo zamítnuto. Nejvíc času zabralo nakonfigurování VC. Vyhledávání věcí v dokumentaci bylo otázkou pár vteřin.


noname

Re:Komplexní studijní materiál pro knihovnu Qt (C++)
« Odpověď #3 kdy: 07. 09. 2013, 11:58:13 »
Diky za odovědi a rady. Nejvíce mě inspiroval příspěvek od Ivana, díky kterému jsem našel následující odkaz: http://blog.hartwork.org/?p=156
Snad mi to do začítku bude stačit. Rovněž pro mě byly poučné některé postřehy od Tomáše.

Petr Bravenec

Re:Komplexní studijní materiál pro knihovnu Qt (C++)
« Odpověď #4 kdy: 07. 09. 2013, 13:02:53 »
>> Tomáš Marný
S názory tohoto typu se nemůžu ztotožnit. To je jak tvrdit "naučit se s databázemi je na jedno odpoledne, má to jen čtyři základní příkazy: select, update, insert a delete". Díla podobných umělců pak podle toho vypadají - joiny ve smyčkách v aplikaci, návrh datových struktur typu "(osobní_číslo, dítě1, dítě2, dítě3, dítě4)". Je to jak tvrdit "hrát na klavír je jednoduché, je to jen pár kláves ve dvou řadách". Zvládnout určitou část lidské činnosti uspokojivě není snadné, stát se mistrem stojí spoustu času.

Qt je obrovský balík různých udělátek s poměrně širokým záběrem a nastudovat, pochopit, vyzkoušet a naučit se efektivně používat třeba i jen některé dílčí celky stojí týdny experimentování. A i potom se člověk dostane často do úzkých: "s tisícovkou vět to fungovalo, to je deset tisíc tak moc?"

Je pravda, že internet mnohé usnadňuje. Spoustu věcí dnes už vůbec neřeším - prostě hledám, jestli už někdo podobný problém vyřešil, a co se dá, to opíšu. Opisování je v praxi často nejefektivnější způsob řešení problémů. Ale základní dovednosti a zkušenosti se opsat nedají. Vidím to na mladých nadšených klucích - vynalézají kolo, každou věc řeší třemi různými cestami, než objeví tu nejschůdnější. Zkušenější sáhne po kódu, který si osahal ve svých učednických letech a od té doby desekrát použil. Jak chcete proces učení nahradit referenční příručkou?

S učením neporadím - najděte si nějaký "úkol" sám a zrealizujte jej. Jakmile budete mít před sebou konkrétnější cíl, je cesta mnohem přímočařejší a překážky snadněji identifikovatelné. Já bych vám cíl v Qt klidně přidělil, ale trochu se bojím zaměstnat zcela nezkušeného člověka.