abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 02:11 | Nová verze

    Byla vydána nová verze 5.2.0 programu na úpravu digitálních fotografií darktable (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    dnes 00:55 | Zajímavý software

    XLibre Xserver je fork X.Org Serveru. Enrico Weigelt včera oznámil vydání verze 25.0 se slovy "tento fork je nezbytným, protože je výslovným přáním většiny současné skupiny X.Org (IBM / Red Hat) opustit projekt, nechat ho navždy shnít a blokovat jakékoli podstatné příspěvky, natož nové funkce".

    Ladislav Hagara | Komentářů: 1
    dnes 00:22 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | Bezpečnostní upozornění

    Experti na kybernetickou bezpečnost potvrdili (en) největší dosud zaznamenaný únik dat. Hackeři při něm odkryli skoro 16 miliard přihlašovacích údajů z celého světa včetně účtů společností Google, Apple, Facebook, dalších sociálních sítí nebo některých serverů státní správy.

    Ladislav Hagara | Komentářů: 2
    20.6. 19:55 | IT novinky

    Společnost Meta ve spolupráci se společností Oakley oznámila řadu chytrých brýlí Oakley. První Oakley Meta HSTN si lze předobjednat za 499 dolarů.

    Ladislav Hagara | Komentářů: 0
    20.6. 16:11 | IT novinky

    Ministerstvo průmyslu a obchodu (MPO) vyjádřilo podporu předložení projektu AI Gigafactory CZ, který do veřejné konzultace Evropské komise zaslala společnost České Radiokomunikace (CRA) v rámci iniciativy Project AIGF CZ. Jde o významný krok k rozvoji výpočetní infrastruktury pro umělou inteligenci (AI), která je prioritou resortu. Projekt je v souladu s cíli Národní strategie umělé inteligence ČR 2030 a je již součástí návrhu

    … více »
    Ladislav Hagara | Komentářů: 12
    20.6. 13:11 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 154 (pdf). S podtitulem Automatizace domácnosti.

    Ladislav Hagara | Komentářů: 0
    20.6. 12:22 | IT novinky

    Americký prezident Donald Trump podepsal exekutivní příkaz, který prodlužuje lhůtu pro prodej amerických aktiv aplikace TikTok vlastněné čínskou společností ByteDance do amerických rukou o dalších 90 dnů. Americký Kongres loni v dubnu kvůli bezpečnostním obavám přijal zákon, podle kterého měl vstoupit v platnost zákaz sítě TikTok v USA v případě, že se prodej neuskuteční do 19. ledna. Trump však v lednu lhůtu pro prodej prodloužil o 75 dnů. V dubnu pak přikročil k prodloužení o dalších 75 dnů, lhůta tak měla vypršet dnešním dnem.

    Ladislav Hagara | Komentářů: 4
    20.6. 12:11 | IT novinky

    Microsoft hodlá zrušit další tisíce pracovních míst, a to především v obchodních odděleních. Předchozí kolo propouštění se uskutečnilo v květnu a dotklo se 6000 zaměstnanců. Vedení firmy již dříve upozornilo, že vzhledem k rozsáhlým investicím do umělé inteligence (AI) se bude snažit omezovat výdaje v jiných oblastech.

    Ladislav Hagara | Komentářů: 5
    19.6. 18:44 | IT novinky

    Společnost Murena ve spolupráci se společností Qwant představila vyhledávač Murena Find. Ve výchozím nastavení bude používán v mobilním operačním systému /e/OS a v Murena Workspace.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (57%)
     (29%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 290 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    První zkušenosti s Qt jambi - I

    6.7.2008 16:14 | Přečteno: 1310× | programování

    Protože mi moc nevyhovuje systém, kterým Java vytváří GUI, tak jsem se poohlížel po něčem použitelnějším. Narazil jsem na Qt jambi.

    Svým způsobem tento framework věrně kopíruje Qt pro C++. V podstatě je to jen Java binding na nativni Qt knihovny. To má své výhody, ale i nevýhody. Mezi asi nejviditelnější výhody patří rychlost zobrazování. Druhou - méně důležitou - byl fakt, že jsem už dělal takovou minisemestralku (OpenGL pod linuxem), kde se Qt použilo jen jako framework pro implementaci GUI. Takže už jsem měl mírnou představu o tom, jak Qt vlastně funguje.
    Ovšem nevýhoda je minimálně v tom, že to nemáte šanci debugovat v Javě. Co víc. Nevidíte ani strukturu objektů, protože všechno je schováno za JNI. S tím trochu souvisí i dokumentace. Ano, javadoc existuje, ale je to na dost místech pouze přepis C++ dokumentace. Což znamená, že jsou v něm sice použité C++ konstrukty, ale zároveň si udržuje hodně vysokou úroveň (kéž by se tohle dalo říct o mých javadoc-ech :) ).

    Začátky

    Z minulosti mám trochu zkušenosti pouze s programováním J2EE aplikací. Oblast desktopu pro mne byla neznámá. V případě aplikace typu tlustý klient to s sebou přináší i odlišný způsob práce. Zatímco u J2EE máte (můžete mít) přehled o celém systému, přihlášených uživatelích, apod., v případě desktopové aplikace je to trochu omezené. Víte pouze to, co dělá jeden konkrétní uživatel. Příbývá tedy problém konzistence dat ( v dost případech toto lze řešit Ostrichovým algoritmem a bude to ve většině případů i fungovat :).

    Vynechám klasické příklady na "hello world!" a přejdu rovnou k problémům a jejich řešení. To je totiž první věc, se kterou se musí začátečník poprat.

    První problémy

    Když se píše aplikačka pracující s databází, tak je potřeba se k ní umět připojit. QT jambi k tomuto účelu nabízí vlastní systém tříd, které zastřešují práci s DB. Protože je ale Jambi jen Java binding na C++ knihovnu QT, zpočátku se využívaly i ovladače pro QT knihovnu. A tady je potíž v tom, že s opensource distribucí přichází pouze ovladač pro sqlite. Podporu ostatních je potřeba si zkompilovat vůdči vlastní verzi konkrétní databáze. Vezmu konkrétní případ, kdy jsem musel tvořit ovladač pro MySQL. Po nainstalování MySQL serveru jsou k dispozici i .lib verze dll knihovny libmysql.dll, která je potřeba pro připojení. A nastává druhý problém, kdy OS verze QT Jambi je kompilována pomocí mingw32-gcc. A kompilátor gcc používá trochu jiný formát statických knihoven, takže není možné přímo použít ty dodané s MySQL serverem. Takže je potřeba sehnat pár utilitek a provést konverzi a přípravu podle následujícího návodu. A je to celkem drbačka.

    Každopádně QT Jambi je o tom, že se program píše v Jave. A Java má vlastní rozhraní pro databázi - JDBC. Takže proč se párat s kompilováním ovladače, když je možné použít QJDBC! Ovšem to je potřeba stahovat pouze pro verze před 4.4, která QJDBC bridge již obsahuje.

    Pokračování...

    V dalších "dílech" to zkusím restartovat a napíšu něco o zprovoznění IDE Eclipse s podporou grafického návrhu widgetů. A poté - když bude čas i chuť - se vrhnu na různé dílčí trable a jejich řešení...

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    finc avatar 6.7.2008 17:00 finc | skóre: 8 | blog: Finc | Kolín
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Nebude trosku problem s multiplatformovosti? :)

    Jinak, pokud uz tlusty klient, proc proboha prime napojeni na DB?
    Kdo Vam dal pravo ty lidi urazet? A kdo ti dal pravo cumet z okna, ty kr.vo!
    6.7.2008 17:32 kapo | skóre: 16 | blog: runtime
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Proc problem s multiplatformovosti? Jedine misto je ten db driver, kterej je ale vyresenej pres JDBC -> no problem.

    Tlusty klient: ja si to predstavuju tak, ze data jsou na serveru a vykonny kod u uzivatele. Jsme zajedno? :)
    Why make things difficult, when it is possible to make them cryptic... - Aksel Peter Jorgensen
    finc avatar 6.7.2008 20:07 finc | skóre: 8 | blog: Finc | Kolín
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Mam na mysli, zda aplikace bude spustitelna a dobre fungujici i na windows, mac OS, atd. Dany framework na UI neznam, tak se ptam :)

    Jinak co se tyce architektury aplikace, tak business logika by mela byt nekde na serveru. V tomto pripade si predem uzaviras cestu psani napr. web aplikace pro dany projekt. Java je dobra na serveru. Proc toho nevyuzit? Nevim, co presne pises za aplikaci, ale nevidim zadny duvod psani 2 vrstve aplikace.
    Kdo Vam dal pravo ty lidi urazet? A kdo ti dal pravo cumet z okna, ty kr.vo!
    Rezza avatar 6.7.2008 20:15 Rezza | skóre: 25 | blog: rezza | Brno
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Tak Java je jakztakz multiplatformni, Qt 4 taky, tak nevidim duvod, proc by jejich spojeni nemelo byt taky. A kdybych mel neco psat v Jave, tak Qt Jambi je opravdu jasna volba - uz jen to, ze Qt celkem umim v C++ a do Javy je to udelane tak, ze nektere casti kodu se daji prepsat jen regularnim vyrazem :)
    6.7.2008 21:50 kapo | skóre: 16 | blog: runtime
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Prenositelnost je zavisla jen na prenositelnosti QT Jambi. Nepouzivam nic jineho OS specific, co by to melo rozhodit. Psani aplikace s business logikou na serveru by ji jen zbytecne zeslozitilo. QT Jambi neni jen prezentacni vrstva. Jak jsem psal, je to jiny koncept nez J2EE. A uzavreni cesty pro napsani J2EE GUI si klidne uzavru - uz jsem to promyslel a z hlediska pouzitelnosti jsem to zavrhl.

    Kazdopadne tento blog jsem nezamyslel jako diskuzi o architekture aplikace, ale o problemech spojenych s vyuzivanim knihovny QT Jambi a jejich resenich, pripadne o ruznych vychytavkach ;).

    Ale abych uspokojil tvou touhu po duvodech :), tak pisu aplikaci, ktera:
    1. potrebuje mit centralne data
    2. potrebuje byt celkem rychle spichnuta (tzn. pro mne vylucuje C/C++ - nemam rad mem-leaky a nejsem v nem sbehly)
    3. bude se pouzivat intenzivne narazove: zadavani dat, prepocty, generovani presnych specifickych formularu pro vystup
    4. potrebuje kratkou reakcni dobu a ovladani z klavesnice dle naucenych stereotypu
    (presny popis nemuzu zverejnit)
    Why make things difficult, when it is possible to make them cryptic... - Aksel Peter Jorgensen
    6.7.2008 23:00 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Takže děláš komerční věc pod Qt ? A platíš tu licenci nebo to vydáš jako GPL ?
    7.7.2008 00:01 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Celkem není problém udělat komerční věc pod GPL, akorát ji zákazník může dál šířit, což ovšem velmi pravděpodobně neudělá :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    7.7.2008 08:24 kapo | skóre: 16 | blog: runtime
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    Pod GPL to neni. Licenci mam koupenou a ani tolik zas nestala (diky silne korune a starter programu Trolltechu). Myslim, ze jsem se vlezl i s vydaji do 14kkc, coz vzhledem k cene programu neni zas moc. Jinak zkusenost s bankovnim prevodem z CS a.s. do banky v Norsku je asi takovej: CS si sezrala 200,- za vyplneni formulare a dalsi 200,- za zahranicni bankovni styk. Ta zahranicni banka zblajzla asi 120,- za prijem platby. Jinak kdyz mas GPL licenci, tak mas tu knihovnu kompilovanou pomoci mingw-gcc. Kdyz si koupis komercni licenci, tak to dostanes zkompilovany ve VS2005 + k tomu na rok podporu, ktera i funguje :). Uz jsem jim tam par veci nahlasil a oprava se vzdycky nasla (krom posledni drobnosti, kdy mi rekli, ze to je opraveny ve verzi 4.4).
    Why make things difficult, when it is possible to make them cryptic... - Aksel Peter Jorgensen
    8.7.2008 08:59 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    jen doplnění pro případné zájemce - poslední gpl verze jdou zkompilovat msvc taky. Je to sice voser, ale jde to.
    Kuolema Kaikille (Paitsi Meille).
    8.7.2008 14:23 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: První zkušenosti s Qt jambi - I
    KDE for Windows jsou taky zkompilovae MSVC (je tam na vyber), ani se nedivim ;-)

    Založit nové vláknoNahoru

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