Proč je Java pořád tak populární?

balki

Re:Proč je Java pořád tak populární?
« Odpověď #75 kdy: 25. 04. 2017, 12:33:39 »
Ja napriklad som javista a monady neriesim, ani neviem, co to je. A tom mam ako hobby lisp.  Je to nejaky zivocich, alebo co to zerie? Bude vdaka tomu chlieb lacnejsi? Vylieci to vsetky choroby na svete?

Stream API v Java 8 je monada, taktiez Optional a CompletableFuture. Odpourcam video z prednasky Rona Presllera (ktore som linkoval vyssie v mojom nudnom prispevku), kde sa k tymto API vyjadruje z pohladu imperativneho programatora.
Problem, ktory vypichuje je, ze akonahle zacnes pouzivat monadicke API v imperativnom jazyku, musis ho pouzivat "az do konca" (Stream logicky nemozes v polovici chainovania prehodit na klasicku imperativnu for each slucku, t.j. push vs pull).
Prichadzas o vsetky "features" ako exception handling (defaultny sposob osefovania sideeffectov v Jave), ktory je fundamentalnou sucastou jazyka od jeho vzniku a vynimky musis preklapat na hodnoty (dalej miesto deklaracie monady a jej vykonanie je uplne ine, StackTraces prestanu byt tak jednoznacne atd.)

Samozrejme, ze monady v Jave nie su nove. Davno pred JDK 8 poskytovala monadicke API na pracu s kolekciami pre Javu Guava od Google. Avsak tieto API neboli sucastou core JDK. Ale po novom je monadicke Streamove API sucastou JDK a implementacia novej funkcionality v JDK8 na niektorych triedach je na nom priamo zavisla (t.j. infekcia prerasta). Kolekcie boli retrofittovane metodami stream a parallelStream takze jedny z najstarsich rozhrani prestali byt spatne kompatibilne so starymi JDK (co je v Java svete taky maly jadrovy vybuch).

Navyse forEach cez Streamove API nie je tak rychle ako klasicka imperativna slucka for each ako dokazali JMH benchmarky - takze aj ked to IntelliJ odporuca, netreba preklapat.

Ok, uz som pochopil, su to tie mrdky, co som musel vyhadzovat po jednom externistovi, lebo sa to spravalo nepredvidatelne a zle sa to debugovalo. (Klasika, prijde naprasi, odide a internisti to potom fixuju) Osobne som streamom  v jave este stale neprisiel na chut. Dufam ze to inzinieri z oracle dotiahnu do pouzitelnej podoby, teraz je do do javy nacpane strasne nasilu.
Prostě to jen nechápeš a dodrbals práci toho externisty.

Nj, bolo to lepsie cez streamy, aj ked chybove, horsie citatelne, horsie debugovatelne a nerobilo to celkom to, co malo. Rozumiem.  Radsej napisat nieco "cool", nez to napisat dobre.


streamer

Re:Proč je Java pořád tak populární?
« Odpověď #76 kdy: 25. 04. 2017, 12:57:36 »
Ok, uz som pochopil, su to tie mrdky, co som musel vyhadzovat po jednom externistovi, lebo sa to spravalo nepredvidatelne a zle sa to debugovalo. (Klasika, prijde naprasi, odide a internisti to potom fixuju) Osobne som streamom  v jave este stale neprisiel na chut. Dufam ze to inzinieri z oracle dotiahnu do pouzitelnej podoby, teraz je do do javy nacpane strasne nasilu.

jak by měla ta použitelná podoba vypadat? Co konkrétně je na tom dnes špatně?


kimec

Re:Proč je Java pořád tak populární?
« Odpověď #77 kdy: 25. 04. 2017, 15:41:53 »
Ok, uz som pochopil, su to tie mrdky, co som musel vyhadzovat po jednom externistovi

jak by měla ta použitelná podoba vypadat? Co konkrétně je na tom dnes špatně?
Externista, si to ty?

senior

Re:Proč je Java pořád tak populární?
« Odpověď #78 kdy: 01. 05. 2017, 13:07:51 »
Možná protože je tak mocná? Možná protože má knihovny, které jinde nejsou? Možná protože má IDE, které nemá konkurenci? Možná má celkově nástroje, které libovolný jazyk může jen závidět? 8)

javaman ((

Re:Proč je Java pořád tak populární?
« Odpověď #79 kdy: 06. 05. 2017, 18:16:56 »
Možná protože je tak mocná? Možná protože má knihovny, které jinde nejsou? Možná protože má IDE, které nemá konkurenci? Možná má celkově nástroje, které libovolný jazyk může jen závidět? 8)

+1


Jerry

Re:Proč je Java pořád tak populární?
« Odpověď #80 kdy: 06. 05. 2017, 18:32:10 »
java není tak populární  ;D  to jenom swift se zatím ještě nerozšířil tak moc  ;D

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Proč je Java pořád tak populární?
« Odpověď #81 kdy: 06. 05. 2017, 19:02:30 »
java není tak populární  ;D  to jenom swift se zatím ještě nerozšířil tak moc  ;D
Dokud bude zabugovaný, tak se ani nerozšíří. Ale syntax má super, teď jen dotáhnout tu implementaci.

gll

Re:Proč je Java pořád tak populární?
« Odpověď #82 kdy: 06. 05. 2017, 19:26:48 »
java není tak populární  ;D  to jenom swift se zatím ještě nerozšířil tak moc  ;D
Dokud bude zabugovaný, tak se ani nerozšíří. Ale syntax má super, teď jen dotáhnout tu implementaci.

Nesáhl bych na nic za čím stojí Apple nebo Google. Je to hype vytvořený masivní PR kampaní s pomocí důvěřivých ovcí. Stejně jako Go.

.

Re:Proč je Java pořád tak populární?
« Odpověď #83 kdy: 07. 05. 2017, 14:42:23 »
Nesáhl bych na nic za čím stojí Apple nebo Google. Je to hype vytvořený masivní PR kampaní s pomocí důvěřivých ovcí. Stejně jako Go.
Dokážu pochopit, že někdo nemá rád chrome, protože ho Google masivně propaguje. Dokážu i pochopit, že někdo nemá rád Swift, protože Apple nedává moc možností vybrat si, v čem budete pro macOS programovat. Ale napsat takovou hovadinu, že Go je hype vytvořená masivní PR kampaní, to už chce opravdu oslí hlavu.
Go vzniklo pro interní potřebu Google, nikdy jsem na něj neviděl jakoukoliv propagaci a jedinej projekt od Google (kromě knihoven), který je hojně používaný a napsaný v Go je K8s. Přičemž 99% programátorů netuší, co to je.
Ostatní rozšířené projekty (Docker, Grafana, Prometheus, Indexdb, Etcd, Consul, Syncthing, Gogs/Gitea, ...) jsou všechny mimo Google.

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Proč je Java pořád tak populární?
« Odpověď #84 kdy: 07. 05. 2017, 14:46:29 »
Nesáhl bych na nic za čím stojí Apple nebo Google. Je to hype vytvořený masivní PR kampaní s pomocí důvěřivých ovcí. Stejně jako Go.
Dokážu pochopit, že někdo nemá rád chrome, protože ho Google masivně propaguje. Dokážu i pochopit, že někdo nemá rád Swift, protože Apple nedává moc možností vybrat si, v čem budete pro macOS programovat. Ale napsat takovou hovadinu, že Go je hype vytvořená masivní PR kampaní, to už chce opravdu oslí hlavu.
Go vzniklo pro interní potřebu Google, nikdy jsem na něj neviděl jakoukoliv propagaci a jedinej projekt od Google (kromě knihoven), který je hojně používaný a napsaný v Go je K8s. Přičemž 99% programátorů netuší, co to je.
Ostatní rozšířené projekty (Docker, Grafana, Prometheus, Indexdb, Etcd, Consul, Syncthing, Gogs/Gitea, ...) jsou všechny mimo Google.
No jo, gll je místní duševní polotovar. On i ten Swift by mohl být fajn (na Linuxu), ale ještě nedozrál a je otázka, jestli komunita něco takového přijme, když už je tolik jiných relativně rozšířených jazyků.

Kit

Re:Proč je Java pořád tak populární?
« Odpověď #85 kdy: 07. 05. 2017, 15:39:58 »
Nesáhl bych na nic za čím stojí Apple nebo Google. Je to hype vytvořený masivní PR kampaní s pomocí důvěřivých ovcí. Stejně jako Go.

Pokud chci postavit miniaturní rychlý server, tak moc jiných možností, než je Go, nemám.

Zatím se mi jako nejjednodušší webserver osvědčilo samotné PHP.

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Proč je Java pořád tak populární?
« Odpověď #86 kdy: 20. 05. 2017, 20:58:39 »
Ok, uz som pochopil, su to tie mrdky, co som musel vyhadzovat po jednom externistovi, lebo sa to spravalo nepredvidatelne a zle sa to debugovalo. (Klasika, prijde naprasi, odide a internisti to potom fixuju) Osobne som streamom  v jave este stale neprisiel na chut. Dufam ze to inzinieri z oracle dotiahnu do pouzitelnej podoby, teraz je do do javy nacpane strasne nasilu.

jak by měla ta použitelná podoba vypadat? Co konkrétně je na tom dnes špatně?
Není na tom špatně nic, jen někteří prostě zakrněli a modernější přístupy už nejsou schopni pobrat. Člověk pak musí kód po nich v podstatě přepisovat z gruntu.

Re:Proč je Java pořád tak populární?
« Odpověď #87 kdy: 20. 05. 2017, 21:42:16 »
Java komunita řeší "monády".

o'rly?

Stream API v Java 8 je monada
Mno, takže koukám, že je opět čas na mé oblíbené intermezzo, čili neustále opakovaný kolovrátek:

To, že se na něco můžu dívat jako na monádu NEZNAMENÁ automaticky, že pracuji s monádami.

Pošťouchnutí 1: "Javascriptaři pracují s grupami", protože Javascript umí sčítat celá čísla?! Ne, nepracují s grupami, dost z nich asi ani neví, co to grupa je, a JS nemá žádné pořádné nástroje na práci s (obecnou) grupou. Javascriptaří pracují se sčítáním.

Pošťouchnutí 2: Jestliže je něco jistým způsobem řetězitelné, pak když si cosi správně nadefinuju, můžu o té řetězitelné věci říct, že je to monáda. Ale - propánakrále - řetězení funkcí/callbacků/libobovolnýho shitu je starý jak lidstvo samo. Dělá to každej a vždycky dělal.

Pošťouchnutí 3: jak jsme si zde již mnohokráte uvedli, i seznam "je monáda". Takže všechny jazyky, které obsahují seznam a základní operace nad ním, jsou asi hipsterská krávovina a nebýt současné (údajné) módnosti FP, seznam by neobsahovaly.

Stojí to za pohled, ale jen pro poučení. V kontextu Javy je to prakticky k ničemu.
Monády jsou zajímavé v striktně pure jazycích. Kdekoli jinde nedávají moc smysl. A tím myslím opravdu monády - tj. ten obecný koncept, ne to, že jazyk obsahuje seznam. To samozřejmě smysl má :)

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Proč je Java pořád tak populární?
« Odpověď #88 kdy: 20. 05. 2017, 22:31:02 »
Java komunita řeší "monády".

o'rly?

Stream API v Java 8 je monada
Mno, takže koukám, že je opět čas na mé oblíbené intermezzo, čili neustále opakovaný kolovrátek:

To, že se na něco můžu dívat jako na monádu NEZNAMENÁ automaticky, že pracuji s monádami.

Pošťouchnutí 1: "Javascriptaři pracují s grupami", protože Javascript umí sčítat celá čísla?! Ne, nepracují s grupami, dost z nich asi ani neví, co to grupa je, a JS nemá žádné pořádné nástroje na práci s (obecnou) grupou. Javascriptaří pracují se sčítáním.

Pošťouchnutí 2: Jestliže je něco jistým způsobem řetězitelné, pak když si cosi správně nadefinuju, můžu o té řetězitelné věci říct, že je to monáda. Ale - propánakrále - řetězení funkcí/callbacků/libobovolnýho shitu je starý jak lidstvo samo. Dělá to každej a vždycky dělal.

Pošťouchnutí 3: jak jsme si zde již mnohokráte uvedli, i seznam "je monáda". Takže všechny jazyky, které obsahují seznam a základní operace nad ním, jsou asi hipsterská krávovina a nebýt současné (údajné) módnosti FP, seznam by neobsahovaly.

Stojí to za pohled, ale jen pro poučení. V kontextu Javy je to prakticky k ničemu.
Monády jsou zajímavé v striktně pure jazycích. Kdekoli jinde nedávají moc smysl. A tím myslím opravdu monády - tj. ten obecný koncept, ne to, že jazyk obsahuje seznam. To samozřejmě smysl má :)
To je furt to samé dokola  :P

Re:Proč je Java pořád tak populární?
« Odpověď #89 kdy: 20. 05. 2017, 22:32:19 »
To je furt to samé dokola  :P
Můžu já za to, že tuhle blbost pořád někdo opakuje? :)