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í
×
    včera 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ářů: 4
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

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

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 12
    24.4. 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    24.4. 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 764 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Java na "pomalém stroji" aneb Asi budu sprostý

    11.11.2006 14:52 | Přečteno: 1911× | IT

    Když jsem si volil předměty na tento semestr, rozhodl jsem se, že samotné C++ není dostačující a že by bylo vhodné naučit se i Javu. Předminulý semestr jsem na áčko ukončil C++ (ze kterého tento semestr cvičím jednu skupinu) a celou dobu jsem si bez problémů vystačil se svým Celeronem 366MHz a 128 MB RAM. Ale koukám, že časy se mění.

    Abych "ušetřil čas", rozhodl jsem se psát úkoly do Javy v BlueJ (které je napsané v Javě) místo ve vimu, kde bych si musel nastavit nějaké šablony, klávesové zkratky pro kompilátor. Nicméně se ukázalo, že jsem místo toho už u prvních dvou úloh ztratil vírazně víc času, než kdybych to psal ve vimu. Proč? Protože JRE (a tedy i BlueJ) a kompilátor jsou tak nehorázně nenažrané aplikace, že když jsem k nim spustil ještě prohlížeč, málem mi shořel disk při swapování ;-). Z čistě osobního zájmu jsem si schválně zkusil, jak je na tom Java v porovnání s C++ s náročností na paměť. Očekával jsem, že C++ vyhraje (proto jsem to taky zkoušel :-D), ale posuďte sami. Napsal jsem rekurzivně se v konstruktoru volající třídu (s jedním stringem), která zároveň počítá počet vytvořených instancí před Segmentation fault nebo StackOverFlowError.

    Kód v C++:

    /***********************************
     *          StackTest.cc           *
     ***********************************/
    
    #include <string>
    #include <iostream>
    
    using namespace std;
    
    /// Door -- testing class
    class Door {
       private:
          string number;     //door number
          bool opened;       //"state" open
          static int count;
    
       public:
          Door(string num) {
             number = num;
             cout<<"Number of classes: "<< getCountPP() <<endl;
             new Door("HAHA"); //let's go to cycling :-)
          }
       
          static void setCountZero() {count=0;};
          static int getCountPP() {return count++;};
    };
    
    int Door::count;
    
    // MAIN FUNCTION
    int main() {
       Door::setCountZero();
       new Door("FIRST");
       return 0;             //realy not necessary ;-)
    }
    

    Kód v Javě:

    /**
     * Testing class Door
     * 
     * @author Lukas Rydlo 
     * @version 1.0
     */
    public class Door {
       private String number;
       private boolean open;
       private static int count;
    
       /**
        * Constructor
        * 
        * @param number string "number" of the door
        */
       public Door(String number) {
           this.number=number;
           System.out.println("Object count: "+(count++));
           new Door("HAHA"); //let's go cycling :-)
       }
    
       /**
        * Main function.
        */
       public static void main(String args[]) {
           new Door("FIRST");
       }
    }
    

    Po zkompilování a spuštění dokázal program v C++ (zkompilovaný g++ bez optimalizací) vytvořit 104818 instancí. Program v javě, spuštěný "java -jar Door.jar" (tedy ne z BlueJ) spadl už po alokování 29057 instancí. Imho je to dost výrazný rozdíl a překvapuje mě, že tento aspekt nemá vliv na nasazení Javy ve webových aplikacích, kde by paměťová náročnost měla hrát nemalou roli. Nicmnéně chápu, že psát webovou aplikaci v C++ je tak trochu divné ;-).

    Každopádně jsem rád, že si vystačím z větší části s aplikacemi v C/C++, protože se nechystám kupovat další paměť a swapování na disk v takové míře, jakou si vynucuje spuštěné JRE jen na pouhé domácí úkoly (zdaleka ne tak výpočetně náročné jako ty z C++) na mém "stroji" je zdraví disku škodlivé ;-).

    Update: Teď mě napadá, že javovská virtuální mašina může mít nastavený menší zásobník a že by bylo asi objektivnější použít příkazy z shellu, abych zjistil opravdu obsazený prostor, ale to by nebylo tak zábavné ;-).

           

    Hodnocení: 71 %

            špatnédobré        

    Anketa

    Losnu nebo Mažňáka?
     (28 %)
     (32 %)
     (28 %)
     (12 %)
     (30 %)
     (11 %)
     (26 %)
     (10 %)
     (20 %)
    Celkem 116 hlasů

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

    Komentáře

    Vložit další komentář

    11.11.2006 14:59 abr | skóre: 24 | blog: ab
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    V dnesni dvoujaddrove a 64 bitove dobe delas na 366ce? Nechces si koupit nejake bazarove p4 za 1/4 prumerneho platu?
    11.11.2006 15:09 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nene, já jsem si ke své "bedně" vytvořil citový vztah a dokud neshoří, tak na ní budu dělat :-D. Navíc mám s koupí IT v bazaru velmi špatné zkušenosti (viz mé zápisky o ThinPadu T23).

    Btw. Je to ten stroj vlevo a ten monitor a klávesnice k němu nepatří, ty patří ke "karkulce", která je vpravo a jakožto AMD K6 200MHz se 128 MB RAM nahradí dosavadní router -- "rumcajse", který má jen 64 MB RAM a je ještě větší stařík, takže z něj udělám tenkého klienta. :-D
    θηριον ειμι
    11.11.2006 17:01 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Pokud ta bedna je ATX, nevidím důvod, proč byste si ji nemohl nechat. Já svůj case taky používám podstatně déle než cokoli z toho, co je v něm (nepočítám-li data), jen jsem do něj musel dát výkonnější zdroj.
    11.11.2006 18:35 tomm | skóre: 7 | blog: tomm's software | Sokolov
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Jeee, ja chci taky takovy pekny samolepky "Powered by Tucnak" :-)
    GUI existuje jen proto, aby se veslo vice terminalu na jednu obrazovku ...
    Luk avatar 11.11.2006 18:36 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    A co si je vytisknout? ;-)
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 20:22 tomm | skóre: 7 | blog: tomm's software | Sokolov
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    No tez mam z ceho ;-)
    GUI existuje jen proto, aby se veslo vice terminalu na jednu obrazovku ...
    11.11.2006 18:56 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Snad to z tohohle pdfka nějak vykucháš. Nemůžu najít originál :-(
    θηριον ειμι
    11.11.2006 19:48 tomm | skóre: 7 | blog: tomm's software | Sokolov
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Super, diky moc :-)
    GUI existuje jen proto, aby se veslo vice terminalu na jednu obrazovku ...
    11.11.2006 15:05 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    A co má takto debilní (smím-li to tak říct, jakože smím) příklad za cíl dokázat? :-)
    11.11.2006 15:13 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nesmíš :-). A má to dokázat, že C++ je lepší, protože dokáže vytvořit víc instancí zvolené třídy než Java :-D. A neptej se mě, proč tam nemám ošetřené chyby při alokaci paměti a vyvolání výjimek ;-)
    θηριον ειμι
    Heron avatar 11.11.2006 15:17 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý

    protože dokáže vytvořit víc instancí zvolené třídy než Java

    Ovšem za jiných podmínek, takže nedokazuje vlastně nic.

    11.11.2006 15:17 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Tak jsem si to právě povolil. Docela by mě zajímalo, proč ta rekurze.
    11.11.2006 15:22 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Protože jsem to psal na cvikách z Javy a byl jsem zvědavý, jestli to hodí výjimku, spadne jen ta aplikace nebo spadne celé BlueJ :-D. Jinak to bylo v tu chvíli nejsnažší rozšíření kódu, které způsobí vyčerpání paměti ;-)
    θηριον ειμι
    11.11.2006 15:25 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Teď už ti předpokládám ke štěstí chybí jenom výstup z programu (a hlavně jeho stacktrace) na děrných štítcích :-)
    Luk avatar 11.11.2006 15:36 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Tak aby bylo jasno, mám naopak důkaz, že Java je rychlejší než C (tedy jen v některých případech ;-)).
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 19:05 Dunric | skóre: 21
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Podle těchto benchmarků Java 1.5 vs GCC 4.1.1 to jasně projela ve všech testech. A jsou tam k dispozici i zdrojové kódy ;-)
    In the garden sleeps a messenger ·
    Luk avatar 11.11.2006 21:44 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Jen tak cvičně jsem zkusil ty binární stromy (binary-trees, hned na začátku) a vychází mi to takto:
    time java -server binarytrees 16 > /dev/null
    real    0m3.490s
    user    0m3.148s
    sys     0m0.184s
    
    time java binarytrees 16 > /dev/null
    real    0m4.519s
    user    0m4.384s
    sys     0m0.092s
    
    time ./binarytrees 16 > /dev/null
    real    0m2.962s
    user    0m2.948s
    sys     0m0.008s
    
    Rozdíl je mezi Javou a C je sice docela značný, ale tady už to tak významné není:
    time java -server binarytrees 18 > /dev/null
    real    0m14.188s
    user    0m13.977s
    sys     0m0.188s
    
    time java binarytrees 18 > /dev/null
    real    0m16.140s
    user    0m15.745s
    sys     0m0.156s
    
    time ./binarytrees 18 > /dev/null
    real    0m13.936s
    user    0m13.545s
    sys     0m0.088s
    
    Každopádně je zajímavý hlavně ten podstatný rozdíl mezi verzí JVM client (default) a server.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 21:48 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Rozdíl mezi 3 a 3.5 sekundama je směšně málo.
    11.11.2006 15:34 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Patrně debilitu Javy. ;-) Ale binární Java dává srovnatelné výsledky s C++. ;-)
    Luk avatar 11.11.2006 15:38 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Snažit se dokázat debilitu Javy je asi stejně smysluplné, jako se snažit dokázat debilitu Windows. Není to smysluplné, je to nesmyslné. Windows nejsou debilní, a Java už rozhodně není debilní.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 15:46 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Java s JVM má jiné vlastnosti než běžný binární program a v tomto testu je to pěkně vidět. Jen je docela škoda, že s GCJ nejdou snadno přeložit všechny javové programy.
    Luk avatar 11.11.2006 15:50 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Mně se s GCJ nepodařilo přeložit ještě ani jeden. Párkrát jsem to zkoušel a vždycky to na mě vysypalo tunu podivných errorů. Takže raději zůstávám u sunovské JVM ;-)
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 15:58 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Tak jde tím přeložit třeba tento zkušební prográmeček. Jediný větší projekt, který jsem kdy překládal s GCJ, je PDFTK. Ještě že s tím tvůrci rovnou počítali. :-)
    11.11.2006 16:04 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Jaké? Java je nakonec taky jenom binární program.
    11.11.2006 16:19 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Běžný bnární program vykonává procesor, JVM je vrstva navíc, která přinejmenším zabírá kus paměti. Pokud není tato vrstva přítomna v paměti, pořád, musí se před prováděním programu pro tento virtuální stroj do paměti zavést, což působí určité prodloužení doby startu.

    Další zvlástností je, že programy s grafickým uživatelským rozhraním napsané v Javě bývají pomalejší než běžné programy. (To platí třeba pro Maple, jEdit, nebo javová náhrada WinAMPu jlGUI.)
    11.11.2006 16:21 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    A programy v Javě vykonává zvuková karta nebo disketová mechanika? Bez standardní knihovny C++ v paměti jste taky v háji (a taky je potřeba ji namapovat do paměti a nahrát, pokud tam není).

    To druhé je nicneříkající blbost.
    11.11.2006 16:28 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    I velikost C++ knihovny činí programy na ní závisející nevhodnými pro některá použití.

    To druhé je prostý fakt. Jeho význam dokládá předchozí věta.
    Luk avatar 11.11.2006 18:12 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    JVM buď interpretuje bytecode, nebo ho při startu zkompiluje, anebo kombinuje obojí. První je pomalé stále, druhé zdržuje start, třetí je kompromis. Současná HotSpot implementace JVM používá třetí způsob s tím, že se navíc provádí adaptivní optimalizace.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 16:35 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Maple není v Javě :-)
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    11.11.2006 17:13 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Ale je. Přesněji řečeno, jeho novější rozhraní je napsáno v Javě. (Třeba u verze 9.0.) To starší vypadá jak Motif a pracuje mi podstatně rychleji.
    Heron avatar 11.11.2006 15:15 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý

    To UPDATE: ano je to tak. JRE je defaultně omezeno a nemá k disposici celou paměť.

    Předminulý semestr jsem na áčko ukončil C++ (ze kterého tento semestr cvičím jednu skupinu)

    Můžu se zeptat co je to za školu, kde člověk po vystudování jednoho kursu tento kurs může učit? Každopádně doufám, že neučíš podobná zvěrstva jako tento ukázkový kód.

    11.11.2006 15:19 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    ano je to tak

    Já jsem to tušil, ale to by bylo hnedka po pěkném falme ;-)

    Můžu se zeptat co je to za školu

    Rád udělám reklamu svému ústavu :-). Vítej na FI MUNI. A taková zvěrstva se opravdu snažím neučit, ale tady nejsme ve škole ;-).
    θηριον ειμι
    Heron avatar 11.11.2006 15:24 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý

    Rád udělám reklamu svému ústavu :-). Vítej na FI MUNI. A taková zvěrstva se opravdu snažím neučit, ale tady nejsme ve škole ;-).

    Já se ptal proto, abych se té škole mohl vyhnout...

    Když tak nad tím kódem přemýšlím, tak se vlastně nevytvoří ani jeden objekt, protože žádný konstruktor se vlastně nedokončí. Tomu říkám test :-).

    11.11.2006 15:41 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Já se ptal proto, abych se té škole mohl vyhnout...
    Patrně nutná podmínka pro vedení cvičení z C/C++ je dosažení 80 bodů u zkoušky, na jedničku stačí, tuším, šedesát. Jde o součet bodů za domácí úlohy do cvičení, zkouškový program řešený doma a za připitomělý test nimrající se v normách ANSI/ISO C/C++ a chytácích, které při běžném programování zcela jistě nepotkáte. :) Ani jednou jsem se bohužel nepřehoupl přes tuto hranici, takže jsem přišel o snadný a bezpracný příjem peněz. Škoda. :(

    Na druhou stranu C/C++ prý není na FI zase tak moc rozšířené, takže je lepší tuto školu hodnotit na základě jiných věcí. :-)
    11.11.2006 18:04 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    No tak teď jsem se urazil ;-). Zaprvé to není snadný, za druhé to není bezpracný a za třetí to není příjem peněz :-D. Abych se dostal mezi cvičící, musel jsem v C++ odevzdávat snad všechny programy v předtermínu (tj. trávil jsem nad nimi celou neděli až do půlnoci a někdy už i sobotu) a nadstandardně je zpracovat. Cvika vedu od 8 hodin ráno (což je pro mne vražedný čas uprostřed noci ;-)) a když chci zmínit vše podstatné, tak většinou končím chvíli po 9 a ne v 8.50... Víkendy sice netrávím psaním domácích úkolů, ale jejich opravování je v některých případech srovnatelně náročné, když chci studentovi sdělit, v čem udělal chybu.

    Naprosto příšerné je hlavně bodování. S pravidly pro bodování mnohdy nesouhlasím (-3 body za špatná přístupová práva k souboru...), ale musím se jimi řídit, což ve mně vyvolává značný stres hlavně při rozhodování sporných situací (které naštěstí většinou nakonec rozhoduje vyučující).

    A co se týká "příjmu peněz", tak stovka na hodinu (hrubého) mi za ten stres opravdu nestojí. Ale aspoň mě to trochu baví (když vidím u studentů zájem a pochopení látky, což bohužel nebývá až tak často) a taky si říkám, že "praxe" s výukou na vysoké se může pěkně vyjímat v životopise...
    θηριον ειμι
    Luk avatar 11.11.2006 18:35 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    S pravidly pro bodování mnohdy nesouhlasím
    Nahlédl jsem do těch pravidel, a je to tedy síla. Když si vzpomenu na zlaté časy na FEL ČVUT (ne, že by to nebylo přísné, ale co je moc, to je moc)... ;-)
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    11.11.2006 18:44 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Já se jen dobře bavím. :-D Odevzdávat programy v přetermínu se mi dařilo prakticky vždycky, v případě C nebylo na překážku ani to, že jsem si vybral pokročilejší cvičení. Sice jinak skoro neprogramuju, ale aspoň jsem od něj odpočatý, takže jsem ty úlohy zpracovával pěkně rychle. Leč přístupová práva a banální jednořádkové neshody se zadáním spolu s mně nevyhovující zkouškou udělaly své. :-)

    Taky jsem si připomněl, jak vypadá poznámkový bloček na známky a body, od toho Cčka jsem jej víckrát neviděl. :-)
    absence: 
    cvic1: 
    cvic2: 9.3. ok, *2
    cvic3: 13.3. nefunguji locale, jinak ok *3
    cvic4: 20.3. spatna prava k souborum, *-3
           22.3. ok, autodetekce *1
    cvic5: 25.3. ok, vcasne odevzdani, kratke, *4
    cvic6: 2.4. ok, vcas, nepovine, *3
    cvic7: 10.4. vyzaduje IP adresu, ne nazev, nepouzite promenne,
                 jinak dobre, *-3, opravit do 2.5.
           25.4. ok, udp *1, dynamicka rychlost *1
    cvic8: 17.4. ok, *3
    cvic9: 24.4. ok, vcas *2
    cvic10: 27.4. ok, vcas *2
    cvic11: 9.5. ok
    zapocet: ANO 11.5.2005 M.Šárfy
    zaver: 16/5 Zpracuje MI
    28/5 OK, obě rozšíření *35 
    test: 3/6 80% *24
    
    Pokud bych já bodoval cvičení, asi bych se na pravidla, která se nám oběma nelíbí, jednoduše vysral. :-)

    Co nadělám, když se budu snažit, můžu se zkusit protlačit do nějakých cvik na fyzice, aspoň bych se musel doučit to, co jsem v minulosti zanedbal. :-)
    11.11.2006 19:05 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    No však já nad tím do půlnoci nesedával kvůli programování, ale kvůli testování a hledání možných a především nemožných chyb :-D... Například ošetření všech změn v programu "oxidy", který přepisoval vzorec na název, bylo docela hardcore. Místo stroncnatý strnTnatý apod. To pak člověk objevil chemické prvky o kterých nevěděl, že existují a ošetřil správný název oxidů, které podle kolegů chemiků ani nemohou vzniknout :-D
    θηριον ειμι
    11.11.2006 19:25 #Tom
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    No jo, to jsem tehdy jednomu spolužákovi říkal, že si měl dát pokročilý cvika a nemusel dělat takovýhle blbosti. :-D I když psát jednoduchý tupý program schopný tvořit správné tvary slov se někdy docela hodí. :-)
    12.11.2006 11:18 L2Addict
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nahodou takový systém, kdy nejlepší studenti můžou cvičit, není až tak strašný. Podmínka titulu pro cvičení a ještě většího titulu pro přednášení je sice bezva, ale kvalitu nezaručí. Protože se teď pořad nabírá relativně hodně prváků, tak kapacita nedostačuje. A někdo to učit musí. Např. u nás se na to naženou doktorandi, kteří kolikrát danému tématu vůbec nerozumí. A to je realita. Neříkám, že je to ve stěžejních předmětech. Ale kdyby do těch cvik obecné počítačové gramotnosti nenahnali na objasnění javy a základů unixových systémů lidi, kteří neví jaký je rozdíl mezi javou a javascriptem a myslí si, že u Telnetu je napsáno "zastaralé", protože se dnes používá Skype (reálný příklad), tak to nemá kdo učit.
    12.11.2006 11:47 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    K čemu takový předmět potřebuje vůbec nějaká cvičení?
    12.11.2006 12:25 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Aby se studenti měli kde ptát na nejasnosti?
    12.11.2006 20:12 thingie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nejasnosti? No toto. Co je to za pojem? Neznám.
    12.11.2006 23:02 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nejasnosti jsou prostě nejasné věci. Myslím, že je to celkem jasný pojem, není-liž pravda? :-D Co je na tom nejasného? :-D
    11.11.2006 17:42 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nic ve zlém, já si do Javy taky občas zaryju (Heron by mohl vykládat), ale tohle je moc už i na mě :-)
    překvapuje mě, že tento aspekt nemá vliv na nasazení Javy ve webových aplikacích, kde by paměťová náročnost měla hrát nemalou roli.
    Spočítej si cenu programátorů v C++, připočti k tomu fakt, že nemáš za zadkem nic jako jboss, nebo Apache, Sun případně Eclipse a potom to porovnej s cenou jednoho serveru, který má dost výkonu, aby deficit Javy utáhl. Z ekonomického hlediska by se takové nasazení C++ rovnalo sebevraždě ... předpokládaný nárůst efektivity aplikace by se pravděpodobně nikdy nezaplatil.
    When your hammer is C++, everything begins to look like a thumb.
    11.11.2006 18:16 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nojono, já ještě neměl žádnou přednášku z ekonomie, tak mám aspoň výmluvu ;-). A navíc jsem tam psal, že psát webové aplikace v C++ bych i já považoval za _trochu_ divné ;-).

    Btw. Aby si někdo nemyslel, že Javu odsuzuju (jen jsem naštvaný, že mi v ní napsané aplikace jedou tak pomalu), tak má hluboká poklona patří kvalitě dokumentace Javovského API. Ačkoliv do Javy pronikám pomalými krůčky výuky PB162 ;-) teprve od konce září...
    θηριον ειμι
    11.11.2006 18:04 ZAH | skóre: 43 | blog: ZAH
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Určitě tím netestuješ možný počet vytvořených objektů, nýbrž jen velikost implicitního nastavení zásobníku Javy (Hloubka rekurze). Ta se zase tak moc neliší takže na mém stroji to spadne asi u 4 800 rekurze. To jde nastavit (za domácí úkol).

    Počet možných objektů musí jít i na tvém stroji, dle mého odhadu, do miliónů . Schválně jestli máš dost času to zkus.
    import java.util.Hashtable;
    
    public class Door {
        private String number;
    
        private boolean open;
    
        private static int count;
    
        /**
         * Constructor
         * 
         * @param number
         *            string "number" of the door
         */
        public Door(String number) {
            this.number = number;
            System.out.println("Object count: " + number);
          //  new Door("HAHA"); // let's go cycling :-)
        }
    
        /**
         * Main function.
         */
        public static void main(String args[]) {
            int count=1;
            Door d;
            Hashtable h = new Hashtable();
          while(true){
              System.out.println("Object count: " + (count++));
             d =  new Door(Integer.toString(count)); // let's go cycling :
             h.put(new Integer(count),d);
             count++;
          }
        }
    }
    
    11.11.2006 18:15 Mr.X
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    jestli se nemylim tak se StackOverFlowError vyhodi pri hodne hluboke rekurzi, tak o cem je vybec tenhle test? s poctem instanci to nema nic spolecneho
    Josef Kufner avatar 11.11.2006 18:52 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Stejně je obyčejné Céčko lepší... nějaké objekty v implementaci nemají co dělat. Jen to znepřehledňuje program, žere strojový čas, prodlužuje hledání chyb, ...
    Hello world ! Segmentation fault (core dumped)
    11.11.2006 19:23 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Mohl byste vaše myšlenky rozvést poněkud více? Zatím nevidím jediný důvod, proč by tomu tak muselo být :-D
    When your hammer is C++, everything begins to look like a thumb.
    11.11.2006 19:23 Quactuda | blog: Muj_mily_denicku | Praha
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    ASM > C > C++ > Java

    Zalezi na tobe co si vyberes, musis si ale uvedomit, ze za vyssi komfort vetsinou zaplatis procesorovym casem a vyssimi pametovymi naroky a naopak. Pokud si to neuvedomis, tak ti nezbyde nic jineho, nez oci pro plac.
    12.11.2006 14:33 Miloslav Ponkrác | blog: miloslavponkrac
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Akorát by se slušelo dodat, že Java rozhodně není synonymum pro komfort. Se zbytkem souhlasím. Java je prostě kompromis na dolní hranici možností interpretovaného jazyka, který se ujal, protože za ní stojí velká firma a docela dobrý marketing.
    12.11.2006 00:43 lukipuki | skóre: 4 | blog: | Štokholm
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Nie som nejaký odborník na Javu, ale zdá sa mi, že Java používa 16-bitové kódovanie v stringoch (aj keď pôvodný súbor a teda aj reťazce sú v ASCII, tak sa to prevedie do utf16). Opravte ma, ak sa mýlim.

    Potom by z 29057 bolo zrazu 58114+-nejaká_konštanta a pomer by sa zmenil.
    /dev/null: Permission denied
    12.11.2006 00:59 Pavel Kysilka
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Tohle je typicky pripad toho, kdyz ze sebe programator udela blbce. Vite, ono napsat program, ktery se do nekonecna neustale vola, dokud nedojde pamet a prostredky a pak sleti, je podle me ukazka toho, ze programovani asi neni pro Vas spravny obor. Je otazka, jak to mnozstvi rekursi v __praxi__ pouzijete. Na slozite rekursivni vypocty jsou nejspise vhodnejsi jine jazyky nez C++ a Java a i predevsim jine algoritmy.

    Pouzivam -li libovolnou aplikaci, tak je dobre si precist doporucene mnozstvi pameti a systemovych prostredku. Neudelam -li to a jeste o tom napisi na net, tak ze sebe opet udelam blbce. A je jedno v cem to pisete.

    Co jineho dodat ???

    Zkuste to na irc. Je tam server lamer.cz. Mozna lepsi misto na zverejneni. Konzultovat s Vami, na co je a neni java vhodna a v cem je dobra fakt nebudu.

    Mozna by jste mohl zkusit rekurse v databasi. Tam to muze sletet uz na 32 urovni rekurse. Pak staci uz jenom rici, ze jakakoli database je fakt na nic.

    Skoda casu s Vami. Jdu upgradnout kafe.

    bye gf
    12.11.2006 17:12 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Myslím, že si nerozumíme... Smyslem nebylo napsat funkční, ale naopak nefunkční aplikaci, která nebude kontrolovat zda má dostatek paměti, ale protě ji co nejrychleji vyčerpá. Použití rekurse byl jen důsledek již hotového kódu (proto se to taky jmenuje Door a ne třeba MemoryTest). Stejně tak bych tam mohl samozřejmě nacpat while(true) a něco v něm alokovat, ale to by bylo na takovou hovadinu zbytečně moc práce navíc. Jinou otázkou samozřejmě je fakt, že mi nedošlo, že Java nekončí na vyčerpání paměti ale na limitu pro hloubku rekurse, jak jsem již byl opraven...
    θηριον ειμι
    12.11.2006 11:04 Frankie
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Anketa Losnu nebo Mažňáka? Ále, třeba Bahňáka! (31 %) Java RULEZZ! (30 %) C++ RULEZZ! (35 %) Co kecáš, Java paměť vůbec nepotřebuje! (17 %) C++ na programování a na Jávu na dovolenou. (36 %) Džáva, jedině džáva! (13 %) Lama, seš LAMA! (27 %) Já programuju v BASICu. (12 %) Všichni jste divní. Jenom já jsem Smalltalk! (18 %) Celkem 83 hlasů. 219% je na 83 hlasů celkem dost :)
    12.11.2006 11:31 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Je možné hlasovat pro víc možností, takže součet obvykle není 100% ze zjevných příčin. ;-)
    12.11.2006 12:26 Leoš Literák | skóre: 74 | blog: LL | Praha
    Rozbalit Rozbalit vše nejsi ponekud negativisticky?
    Poslední zápisky, samé negativní emoce:
    • Java na "pomalém stroji" aneb Asi budu sprostý
    • Zklamani z brnenskeho dne inovaci.
    • Zvrhlé hříčky s knihovnami pro céčko
    • Už mě ten balíčkovací systém Slackware pěkně s***
    • Přestávám mít rád IT
    Zakladatel tohoto portálu. Twitter, LinkedIn, blog, StackOverflow
    12.11.2006 12:30 thingie
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    Ta trojka negativní není. Ale jinak ano, je to sbírka nářků a nikohonezajímajících povzdechů :-)
    12.11.2006 12:32 thingie
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    A vůbec, vy jste kdo, ideopolicie? :-)
    12.11.2006 14:24 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    A máš to. :-) Teď tě Leoš zatkne za thoughtcrime pochybování o Leošově autoritě. :-D
    12.11.2006 17:22 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    Nojo, asi je to tím, že když jsem na netu, jsem většinou ve škole nebo se doma drbu s nějkými úkoly do školy. No a jelikož čím dál víc pochybuju o smyslu setrvání na vysoké škole, o tom, jestli mi to vůbec něco dává (nebo jestli se jen utvrzuju v základních znalostech a to co budu pro práci potřebovat se nedovídám) a hlavně o tom, jestli mám šanci školu dokončit, když jsem se do dnešního dne nedozvěděl oficiální požadavky/podmínky svého dvouoborového studia, tak jsem přirozeně poněkud podrážděný. Navíc je můj přístup k informatice jako "téměř humanitní vědě o získávání a zpracování informací" v praxi ničen rozšířeným názorem "informatika = počítače = divní programátoři" a školním přístupem "informatika = matematika + angličtina", což ve mně vzbuzuje obavy, zda jsem vůbec na správném oboru :-(
    θηριον ειμι
    12.11.2006 17:40 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    Přinejhorším je možné se věnovat jiným krásným oborům, např. fyzice či matematice. ;-)
    Jakub Hájek avatar 12.11.2006 19:50 Jakub Hájek | skóre: 14 | blog: zamek | Praha
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    Nebo třeba ženám, rock'n'rollu a vínu(rozuměj pivu). :-)
    Teprve tehdy, až nebudeme mít co ztratit, budeme opravdu svobodní.
    12.11.2006 22:12 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    Tak o tom už by se dalo uvažovat jako o lepší alternativě ke studiu na VŠ :-D

    (Matiku už totiž studuju jako druhý obor a zrovna šťastnej z toho taky nejsu. A fyzika mi od gymplu nikterak neschází :-))
    θηριον ειμι
    12.11.2006 23:04 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: nejsi ponekud negativisticky?
    To je taky lákavé. Ale jak z toho dostat diplom? Něco by se možná našlo. Co na JAMU? :-)
    12.11.2006 12:57 Kulifrnda
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Mám vzkaz pro pány, kteří tu propagují Džavu. Nechcete substituovat na nějakou méně škodlivou činnost? Třeba přepadávání důchodců u pošty, školní šikana, lehké drogy, nebo práce v autobazaru... Džava je FAKT ZLÁ věc.

    JAVA is good because it works on all OSes is like saying anal sex is good because it works on all genders.
    Luk avatar 12.11.2006 14:59 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Á jé, zase jeden, co používá ryze věcné argumenty :-D
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    12.11.2006 17:03 Kulifrnda
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Věcných argumentů je plná půlka internetu..
    Luk avatar 12.11.2006 17:44 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Tomuhle se říká "důkaz davem". Stejně tak bych mohl říkat, že saje i něco jiného (nebo třeba tady...) :-D
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    12.11.2006 17:48 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    To už je jak v politice, ne? :-D
    Josef Kufner avatar 12.11.2006 17:54 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Mno, tak jako tak, je Java děsnej paskvil...
    Hello world ! Segmentation fault (core dumped)
    13.11.2006 08:44 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Java na "pomalém stroji" aneb Asi budu sprostý
    Kancelář k uvádění omylů na pravou míru k tomu uvádí: program v Javě nespadl, ale ukončil se, protože došlo k programátorem neošetřené výjimce. Program nezjišťoval paměťovou náročnost aplikace, ale nastavený limit pro stack.

    Že Java potřebuje relativně víc paměti je známé, otázkou je, zda je levnější paměť nebo čas programátora… Ostatně "moderní" programy psané v C++ na tom jsou s paměťovou náročností stejně, jediný rozdíl je v tom, že v C++ můžete psát i bez spousty knihoven a tříd a udělat chudší ale paměťově méně náročnou aplikaci.

    Založit nové vláknoNahoru

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