Hlavní navigace

Vlákno názorů k článku Novinky v Javě aneb Tygří spáry od lamer - Java je jazyk pro neschopne programatory. Kdyz si...

Článek je starý, nové názory již nelze přidávat.

  • 7. 11. 2003 13:21

    lamer (neregistrovaný)

    Java je jazyk pro neschopne programatory. Kdyz si programator neumi udelat logickou analyzu kodu takovou, ze odalokuje vse, co naalokoval, potrebuje garbage-collection, ktery zere spoustu pameti a casu. Kdyz je nekdo tak blby, ze neumi udelat praci s retezci tak, aby nesahl za konec alokovaneho mista (skutecne jsem videl pripad, kdy clovek na nekolikaty pokus nebyl schopen napsat v C parsovani retezce obsahujiciho datum tak, aby se pri jakemkoli vstupu nesahlo za konec toho retezce), potrebuje na retezce preddefinovane objekty, kvuli kterym se to cele zpomaluje ... a tak dale.

    Vzhledem k tomu, ze informacni systemy zpravidla programuji blbci (kdo je v tehle branzi inteligentni, dela analyzu projektu a kod nepise; programovani se skutecne prenechava tem nejmene schopnym), je pouziti javy nekdy vhodne.

    Mimochodem --- na tom serveru, co dela 2000 hitu za hodinu a ma zatez 93.5%, jak tady nekdo psal, vam jeden request trva 0.11 sekund --- coz je asi 175 milionu tiku procesoru --- to teda je DOST POMALY!!!

  • 7. 11. 2003 13:25

    Sickboy (neregistrovaný)

    No trochu ti unika jedna z hlavnich vyhod. Zkus vzit zkompilovanej kod ve svem oblibenem jazyce a pustit ho na jinem systemu, nez kde jsi ho programoval...

  • 9. 11. 2003 7:53

    Quaak (neregistrovaný)

    Ano, treba na PDA, ze? To se pak nestacite divit, co konkretni implementace Javy na PDA neumi. A jak je to kraaasne pomaleeee...

  • 7. 11. 2003 13:29

    Ondra Nekola (neregistrovaný)

    Ano, castecne mate pravdu. Java byla vyvijena tak, aby vystrel do vlastni nohy pozadoval explicitni potvrzeni.
    To, ze existuje velke mnozstvi predpripravenych obejktu ve slusne (nikoliv oslnujici), kvalite muzeme povazovat za nevyhodu jen pokud chceme predcasne optimalisovat kazdy detail. Pokud chcete muzete si vytvorit vlastni implementace temer cehokoli.

  • 7. 11. 2003 13:37

    Ondra Nekola (neregistrovaný)

    Myslim ze ta "pomalost" je zpusobena ne jazykem, ale tim ze autori pouzili nekolik na sobe lezicich vrstev abstrakce. Pro vetsi aplikace je to imho velmi rozumne.

  • 7. 11. 2003 13:50

    Dirigent (neregistrovaný)

    Vy jset fakt dost mimo - mam pocit ze navrhujete systemy jeste metodou waterfall - prisne oddeleni analyzy a kodovani. To se dnes uz dela opravdu jen ve vyjimecnych dobre oduvodnenych pripadech nebo to prosazuji starsi generace manageru ktere nic jineho nepoznaly.

    Lidi chyby delaji a delaji je i ti absolutne nejlepsi - vase bozskost je samozrejme vyjimkou. A protoze jsou na svete apliakce, u kterych je velmi nezadouci aby se ladily metodou pokusu a omylu, vznikaji jazyky a systemy, ktere maji alespon nektere chyby eliminovat.

    Ad alokace pameti a garbage collector: teoreticky vi kazdy, ze co naalokuje musi vratit ale krome bohu kazdy z nas obcas zapomene. Taky je bez GC tezsi pouzit nektere standardni design patterns jako treba Object Factory. Musite tak sledovat cely zivotni cyklus objektu nebo si pocitat reference coz muze byt dalsim zdrojem chyb.

    A pokud jde o ten zminovany server - tak tech 93,5% casu je IDLE. Ale i kdyby trval jeden request tech 0.11 sekundy jak muzete proboha rict, ze je to pomale kdyz nevite co za tu dobu udela? Ale ja vlastne zapominam, ze komunikuju s Bohem takze vy to jiste vite dokonale :-/.

  • 7. 11. 2003 14:00

    karel (neregistrovaný)

    hm pan programator promluvil... to jsi opravdu uz velky kluk kdyz jsi videl nekoho kdo neumi programovat v cecku, myslis ale ze to tady nekoho zajima? u koho se lecis?

  • 7. 11. 2003 14:10

    Mat (neregistrovaný)

    Je pro zacatek 93,5% nebyla uvadena zatez, ale idle. Nez budete pokracovat v urazeni programatoru. Tak si uvedomte ze napriklad Linux delaji lide, kteri o nem premysli analyzuji a vetsinou si analyzovane veci i programuji. Vetsina doktorantu si programuji svoje vedecke vysledky a sami a nemaji na to ty debily, jak jim rikate. Znam lidi, kteri jen analyzuji a absolutne nechapou programovani, smysl algoritmu. Postaveni cloveka ve firme nerika nic o jeho inteligenci nebo demenci. Ja napriklad nekdy analyzuji problem. A nekdy si ho i schuti simplementuju a nikdy neurazim lidi, kteri jen programuji. Jejich pracovni vykon mnohdy nekolikanasobne prekonava vykon lidi kteri jen sedi, premysleji a sem tam neco nakresli do diagramu. Vasi poucku nam rikali i na vysoke skole: Programovani je pro stredoskolaky. Nekdy to vsak vypada opravdu tak jak to vypada.

    Programuji jak v C++ (grafiku, nikoliv vsak nejake kresleni, ale geometricke algoritmy), tak Jave. Vase absolutni pocitani casu me utvrzuje ze nechapete k cemu informacni systemy jsou. Tech 0.11 sekundy je merena rychlost i s transportem (to jsem se z vaseho prispevku nedozvedel)? Je to vysledek jednoduche operace nebo i cteni z databaze? Spracovaval system Vas pozadavek samostatne nebo obsluhoval vice pozadavku? Nedelam zavery z neceho co jsem si jednou zmeril a jeste k tomu nevim co to ve vnitr dela. Nas firemni system bezici na Jave obsluhuje desitky pozadavku za minutu. Odezva je na webu nekolik sekund. Musite si vsak uvedomit, ze jsou tam:
    - kontrola prav na aplikaci podle stukturovanych roli
    - dotazy do databaze
    - vygenerovani vysledku do XML
    - pres XSL je vysledek v XLS, PDF, HTML

    server je 'jen' jednoprocesorovej Sun a nebyl s nim vetsi problem (dostupnost nekolik mesicu bez preruseni).

    Programovat tak rozsahly system v C++ je hola sebevrazda a k tomu je Java jak delana: v odvetvych s kritickou spolehlivosti.

  • 7. 11. 2003 15:52

    ondrej (neregistrovaný)

    Psal jsi uz nekdy neco nad 20 radku ? Programovani je neustaly boj s chybami a pokud to nekdo nevidi, tak jde bud o genia jakeho jsem nepotkal a ani nepotkam, nebo o kecalka ktery je mimo. A tvuj zpusob vnimani veci jako souboje mezi "debily" a "inteligenty" ..... precti si tohle http://alexandr.ritual.cz/via/energie/1001/

  • 7. 11. 2003 16:11

    Michal Kašpar (neregistrovaný)

    Schopný programátor by možná mohl umět číst. Pak by věděl, že těch 93.5% bylo Idle :-).

  • 8. 11. 2003 1:54

    Jirka Hradil (neregistrovaný)

    Muzu se zeptat, kolik toho mate za sebou, jaka je vase pozice a jakou mate praxi?

  • 8. 11. 2003 12:29

    lamer (neregistrovaný)

    Pro Sickyboye:

    Prenositelnost binarniho kodu mezi systemy nema u serverovych aplikaci zadny vyznam --- tam se to da vzdycky prekompilovat.

    Pro Dirigenta:

    Jak to navrhujete vy? Tak, ze analytik navrhne dialogove okno, pak ho zacne programovat, nekolik hodin ho ladi, az ho ma odladene, tak zapomene k cemu vlastne bylo a jaka jina okna kolem neho chtel udelat? Eventualne az udela i ta jina okna, tak zjisti, ze v tom uz naprogramovanem by melo byt neco trochu jinak. Tak to snad ani nejde.

    Pro Mata:

    spatne jsem to napsal, ale dobre spocital. Zatez 6.5%, 2000 rq za hodinu = 0.555 rq za sekundu. 0.065 / 0.555 = 0.117 sekund na request. Athlon 1800 ma frekvenci 1500. 0.117 * 1500M = 175.5M tiku.

    Ohledne argumentu, jestli je to pomale: co byste delal pred 5 lety? Na tehdejsich pocitacich se taky pouzivaly informacni systemy a nebyly pomale --- nekdo se s tim holt tenkrat piplal, aby to behalo rozumne. Dnes je levnejsi si koupit silnejsi pocitac nez programovat rychle bezici programy.

    Ohledne programovani rozsahleho systemu v C++ --- vemte si treba jadro systemu, kompilator nebo SQL server --- to jsou dost slozitejsi projekty (ne nutne vetsi) nez podnikovy system a pisi se nekdy dokonce v C bez ++. Kdybyste najali same lidi, co neco slozitejsiho v C psali, klidne by vam v C udelali cely podnikovy system. Ale najmout tym takovych lidi je znacne tezke, proto se firmy musi spokoji s programatory, kteri pisi v jave.

    Pro Jirku Hradila:

    Jak uz moje jmeno napovida, jsem lamer.

  • 12. 11. 2003 9:44

    binary__runner (neregistrovaný)

    Rel bych, ze blbec je spis ten, kdo si mysli, ze vykon aplikace jde pocitat na tiky procesoru, ja to teda nevim z vlastni hlavy, ale nekdo mi rikal, ze v pocitaci jsou i jine casti. Znam nekolik velmi chytrych lidi, kteri se programovanim v Jave zivi a uz z vaseho projevu je zrejme, ze jim nesahate po kolena.

    Nemam nic proti C, ale podobne nazory vetsinou zlysim od lidi, kteri uz invetsovali tolik usili do zvladnuti nastroje jako je C++ (proti tomu mam pro zmenu hodne), ze jim vlastni jesitnost nedovoli si priznat, jak zbytecna namaha to byla.

    Ano, pro systemove programovani je C jiste nenahraditelny nastroj, ale pokud se bavime o aplikacnim, tak jeho ukolem je problemy resit a ne porad hlidat a pocitat, kde mi tece pamet. Take zneprehlednit nejakou cast kodu za ucelem usetreni dvou instrukci procesoru je v momente, kdy ma system chvili vydrzet (cti naklady na udrzbu/dalsi vyvoj vyrazne prevysi pocatecni). je zhovadilost.

    Mimochodem oznacenim Javy za jazyk pro debily ji dela cest, protoze to znamena, ze se jedna o jednoduchy nastroj.