abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 48
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 15
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 880 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Tenkrát poprvé

    19.9.2006 01:20 | Přečteno: 2370× | ostatní | Výběrový blog | poslední úprava: 19.9.2006 08:04

    Moje první C++ GUI.

    QSS

    Přesto, že o mě někteří prohlašují, že jsem programátor (lež má krátké nohy!) a některým se to i snažím předstírat, s programováním GUI aplikací, neuvažujeme-li webové aplikace, mám zkušenosti menší než malé. Kdybych použil parafrázi slavného výroku Doc. Pluháčka o jeho programech pro DOP, znělo by to asi takto: "Kdybychom spočítali všechny mé GUI programy, došli bychom asi tak k číslu 0".

    Toto je ale dneškem počínaje již historie a na mě čekají světlé zítřky pojídačů koláčků a lepičů kódu zvaných "programátoři aplikací". QSS (Qt Sudoku Solver) je tady! Jak si již bystřejší z vás všimli, jako toolkit jsem zvolil QT. Splňuje totiž několik důležitých parametrů - je pro C++, je multiplatformní a hlavně má poměrně dobrou a hlavně PŘEHLEDNOU dokumentaci. Nicméně cesta ke QT nebyla tak jednoduchá, jak by se mohlo zdát. Původně jsem chtěl pro návrh GUI použít QT Designer, nicméně praxe ukázala, že chce-li člověk něco jenom trochu nestandartního, nezbude mu stejně nic jiného, než si to napsat "ručně".

    V tenhle okamžik jsem na čas QT znechuceně opustil (jsem přece klikač, žádnej programátor!) a raději si stáhl MS Visual Studio. Jaký bylo ale moje překvapení když jsem zjistil, že v případě C++ aplikací mi pšenka nepokvete ani u MS - V MSVC jsem pro C++ totiž pro jistotu neobjevil žádnej GUI designer a "šablony" zdrojových kódů pro GUI aplikace vypadaly ještě 1000x děsivěji, než ty pro QT... Ze zkratek jako MFC mi šla hlava kolem, navíc jsem se v celém IDE naprosto ztrácel (Tak to dopadá, když si amatér stáhne verzi "Professional"...). Následoval tedy útěk zpět k QT a studování dokumentace a tutoriálů, které jsou ale jak už se zmiňuju výše, poměrně "user-driendly".

    A výsledek? Nakonec to vypadá a funguje přibližně tak jak jsem zamýšlel. I u takhle primitivní aplikace jsem ale narazil na 2 bugy v QT:

    1. QIntValidator ignoruje dolní mez (pane.cpp : 32)
    2. setFixedSize() nenastavuje minimální rozměr (gui.cpp : 62)

    sudoku.tar.bz2


    P.S: Hlavně v tom nehledejte žádnej "vymazlenej" algoritmus na řešení sudoku - to co je v programu použitý je první co mě napadlo aniž bych někde studoval jak se sudoku automaticky řeší. Za čtvrt hodinky to "chodilo" a když jsem zjistil, že zadání z lidovek to řeší "instantně", dál jsem si s tim nehrál (Existují ale i zadání, například z Minimal sudoku, kde si na výsledek počkáte až 20s).

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    19.9.2006 02:02 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Hm, jak by se ten widget s čísly v tabulce udělal v GTK?
    Josef Kufner avatar 19.9.2006 02:39 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Vyrobíš tabulku, nasypeš labely a upravíš barvy ;-)

    Nebo uděláš drawing area a nakreslíš to.
    Hello world ! Segmentation fault (core dumped)
    19.9.2006 02:57 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Aha, labely... Ještě asi nemám to správné myšlení, mě napadlo maximálně GtkEntry (v tabulce) ;-)
    wake avatar 19.9.2006 08:41 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    hm... radši bych viděl textově orientovanou utilitku s vestavěnými tančícími propoji... ;-) ... k ní pak GTK/Qt/Athena/Web frontendy ... proč mi dáváte tu ošklivou bílou košili s rukávy dozadu ?!?!?
    Tento příspěvek má hlavičku i patičku!
    19.9.2006 08:55 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé

    Textově orientovanou utilitku ti můžu nabídnout, tančící propoje si ale už budeš muset implementovat sám... ;-)

    Každý má právo na můj názor!
    wake avatar 19.9.2006 08:59 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    aaale, jen jsem si povzdechl, ze se lidi dneska misto toho, aby se naucili poradne programovat, radeji staraji o UI knihovny a to, co bezi pod tim nacancanym xiftem je tise zbastleno a zameteno pod stul.
    Tento příspěvek má hlavičku i patičku!
    19.9.2006 10:22 Ladislav Thon
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Občas tiše toužím po tom, že v češtině vyjde kniha o algoritmizaci a datových strukturách, která u AVL vyváženého stromu neskončí, ale začne :) Já bych spíš řekl, že problém je v tom, že lidi (mne včetně) o takových věcech nevědí, a jen velmi těžko se o nich dozvídají. Jasně, je to i moje chyba, o tom žádná.
    19.9.2006 10:55 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé

    Problém je spíš v tom, že tyhle "pokročilý" techniky jsou většinou poměrně složitý na pochopení a implementaci a ne všude se vyplatí se s tim babrat. Podívejte se třeba na ASM demo scénu - existují 3D FPS kvality Dooma 3, které mají 100kB, ale vývoj něčeho takovýho pro reálný použití by byl strašně neefektivní.

    Proto sem se například netrápil s nějakými "tančícímy propoji" a použil "obyčejný" backtracing. Sudoku je NP problém, takže přesto, že ten Knuthův algoritmus bude asi efektivnější, rozhodně s ním nezískám oproti mému backtracingu tolik, co bych musel vynaložit do jeho studia... Kdybych chtěl program urychlit, tak před spuštěním backtracingu provedu možné "logické" dopočítání matice, což IMHO urychlí řešení úplně nejvíc...

    Každý má právo na můj názor!
    19.9.2006 11:47 Ladislav Thon
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Problém je spíš v tom, že tyhle "pokročilý" techniky jsou většinou poměrně složitý na pochopení a implementaci a ne všude se vyplatí se s tim babrat.
    Jasně, pro takovouhle hříčku je to pochopitelně overkill, ale taky skvělá příležitost se něco naučit. Záleží, proč to píšete.
    Proto sem se například netrápil s nějakými "tančícímy propoji" a použil "obyčejný" backtracing. Sudoku je NP problém, takže přesto, že ten Knuthův algoritmus bude asi efektivnější, rozhodně s ním nezískám oproti mému backtracingu tolik, co bych musel vynaložit do jeho studia...
    Algoritmus X se taky implementuje backtrackingem (protože je nedeterministický), zfetované spoje jsou jenom způsob, jak o řád snížit jeho složitost (pokud dobře cituju). Ono by to asi mělo smysl pro řešení Sudoku ne 9x9, ale 9e9x9e9 :) A ačkoliv zrovna tohle je nesmysl, leckdy musí člověk řešit problémy netriviálních rozměrů, kde jsou tyhle pokročilé techniky potřeba. A pak dost chybí byť povědomí, že existují.
    19.9.2006 12:01 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    ...leckdy musí člověk řešit problémy netriviálních rozměrů, kde jsou tyhle pokročilé techniky potřeba. A pak dost chybí byť povědomí, že existují.

    Pokuď má někdo řešit takové úlohy, tak se snad předpokládá, že má nějaké vzdělání v oboru a minimálně ví, že existuje něco jako "The Art of Computer Programming", "Introduction to Algorithms" a podobné programátorské "bible".

    Každý má právo na můj názor!
    19.9.2006 12:46 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Tak nevím, jestli to není trochu naivní představa v době, kdy firmy běžně nechávají firewall pro sítě o několika stovkách počítačů nastavovat člověka, který nemá tušení, jaký je rozdíl mezi UDP a TCP, a pouze matně tuší, že to není totéž. Nebo jejich weby tvoří webmasteři, kteří jakživi neviděli specifikaci HTML a o CSS nezřídka netuší ani to, že existuje…
    19.9.2006 13:29 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé

    Dokuď tihle "odborníci" zůstanou u webů a firemních sítí, a nevrhnou se na řízení jaderného zbrojního arzenálu, medicínskou techniku či jiné skutečně kritické oblasti tak je to čistě problém jejich zaměstnavatelů. Pokuď jim stačí děravá síť a IE-only web tak ať si zaměstnávaj pojídače koláčků. A pak - co já bych mohl asi tak dělat, kdyby všude brali jenom "opravdové programátory" a skutečné IT odborníky?! ;-)

    Každý má právo na můj názor!
    Luk avatar 19.9.2006 16:35 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    nevrhnou se na řízení jaderného zbrojního arzenálu, medicínskou techniku či jiné skutečně kritické oblasti
    Lidé v těchto kritických oblastech nejsou v ničem jiní, než ti od webů a sítí. Zapomínají, dělají chyby, prostě nejsou dokonalí.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    19.9.2006 16:39 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Trošku jiní jsou, na rozdíl od lidí od webů a sítí nesmějí používat Javu. :-D
    Luk avatar 19.9.2006 23:43 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    To není tak docela pravda. Např. mnohé lékařské aplikace jsou napsány v Javě, kromě toho existuje i Java pro real-time použití.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    20.9.2006 07:52 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Já měl na mysli tu klauzuli v licenci Javy týkající se jaderných zařízení… ;-) (Tedy, ne, že by to vyloženě zakazovala, ale ten disclaimer je takový varující… :-D) Je pravda, že tu medicínu jsem opomněl. ;-)
    19.9.2006 16:46 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    No, pokud jste si vědom toho, že vaše znalosti a schopnosti mají své hranice, pak už tato skutečnost sama o sobě svědčí o tom, že nepatříte do kategorie lidí, které jsem měl na mysli. :-)
    19.9.2006 12:53 Ladislav Thon
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    "The Art of Computer Programming", "Introduction to Algorithms" a podobné programátorské "bible"
    Ale jistě... ovšem proč bych měl v Introduction to Algorithms hledat něco takovéhohle? A taky to tam, pokud můžu soudit podle obsahu a rejstříku, není. V TAOCP taktéž. O red-black stromech, B stromech, hashování a podobných záležitostech se dozvíte nejpozději ve druháku na vysoké škole. Ale máte snad sledovat ACM sborníky, abyste se dozvěděl o něčem vychytanějším (pochopitelně pro mnohem užší skupinu problémů, což je důvod, proč je zbytečné je hledat v běžných programátorských biblích)?

    Jasně, zveličuju a dá se říct, že vytvářím umělý problém, protože přinejmenším na webu se toho dá najít strašné množství. Mně by se holt líbila ta knížka; když si představím titul Hardcore programovací techniky a datové struktury, vyloženě se mi sbíhají sliny :)
    19.9.2006 13:14 Martin Tůma | skóre: 39 | blog: RTFM | Praha
    Rozbalit Rozbalit vše Re: Tenkrát poprvé

    A dovedete si představit, jak by ta knížka byla obsáhlá, když už zmiňované TAOCP neni zrovna žádnej rodokaps? To by byla celá knihovna... Obávám se, že google je mnohem flexibilnější řešení ;-)

    Každý má právo na můj názor!
    19.9.2006 13:51 Ladislav Thon
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    No jo, existuje spousta hardcore záležitostí užitečných jenom pro úzkou skupinu lidí... Já třeba nedělám do prohledávání řetězců DNA, ale suffixové stromy považuju za velmi zajímavé a potenciálně užitečné. A nebýt kohosi tady na Abíčku, který je tu snad mimochodem zmínil, asi bych se o nich nedozvěděl. Což je riziko, které by bylo fajn eliminovat, ale asi to pořádně nejde...
    19.9.2006 14:09 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    No vida. :-) A já jsem si je musel poctivě vymyslet sám! :-D Až pak sjem je našel ve Wikipedii… ;-)
    19.9.2006 14:06 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Pokud jde o opravdu „hardcore programovací techniky“, existuje knížka „Hacker's Delight“… ;-)

    http://www.hackersdelight.org
    Marek Bernát avatar 19.9.2006 21:45 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Nepoznám nikoho, kto by poznal tú knihu a zároveň z nej čítal inú ako druhú kapitolu. To je tak, keď je niečo zadarmo :-)
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    Marek Bernát avatar 19.9.2006 21:39 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Sudoku je NP

    No aby nie, platí predsa P ⊆ NP

    Som hnidopich, no :-D
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    19.9.2006 14:12 zde | skóre: 9 | blog: Linuch | Brno
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    frontendy nad textovou utilitkou jsou jako želvy na raketový pohon- zábavné, ale nepříliš užitečné.
    Táto, ty de byl? V práci, já debil.
    Josef Kufner avatar 20.9.2006 18:28 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Výhodou takové želvy je však to, že její raketový pohon můžeš použít i někde jinde.
    Hello world ! Segmentation fault (core dumped)
    BluX avatar 19.9.2006 19:42 BluX | skóre: 1
    Rozbalit Rozbalit vše Re: Tenkrát poprvé
    Jen skoda ze to delas v QT3. Mne osobne se vic libi QT4.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.