Online IDE pro Javu s možností debugování

gl

Re:Online IDE pro Javu s možností debugování
« Odpověď #270 kdy: 07. 08. 2016, 20:28:17 »
Vidíš, jak jsi rychlý. Zítra bys mohl nastoupit jako vrchní lopata za 60 tisíc a ještě bys měl radost  8)

Podobné místo už mám. Není důvod měnit.

Vidíš, jak jsem tě odhadl. Kdybys nebyl lopata, tak bys mohl mít úplně jiný peníze  8) Ale tobě stačí tohle...

Stačí. Můžu používat svůj Emacs a patlat skriptíky v Pythonu. Co víc si přát.


dustin

Re:Online IDE pro Javu s možností debugování
« Odpověď #271 kdy: 07. 08. 2016, 20:29:51 »

Generika nejsou dokonalá, ale co mu nejde? Polovičatá je v čem? Streamy jen neumí používat.
.....
Tyhle lopaťácký věci vůbec nedělám. Na to mám lidi.

Z těchto dvou vyjádření mi vychází, že na javu máš lidi a sám v ní neděláš. Jinak bys věděl, o čem mluvím. Např operátor instanceof na generiku by se docela hodil, jenže kvůli implementaci jen na úrovni kompilátoru to z principu nejde. Implementace přímo v bytekódu by to umožnila, jenže pak už by nebyl zpětně kompatibilní.... Stream podporující checked výjimky si opravdu mohu implementovat sám, ale pak přicházím o očekávanou rychlost a mimo jiné i právě zde řešenou podporu v IDE. Jistě víš, že idea sama nabízí konverzi smyček na streamy, jenže když je kód z historických důvodů plný checked výjimek, jaksi smůla... Kdybys v javě dělal a byl takový borec, jak se děláš, tohle vše bys znal. A podstatně líp než já, protože já žádný borec v javě nejsem a používám jen běžné věci. A opravdu nepovažuji javu 1.8 za "je to dost nové." Víš o tom houby, jak vyplývá z blafu "Mouchy to asi má a nebo to používáš blbě".

javaman ()

Re:Online IDE pro Javu s možností debugování
« Odpověď #272 kdy: 07. 08. 2016, 20:32:46 »
Vidíš, jak jsi rychlý. Zítra bys mohl nastoupit jako vrchní lopata za 60 tisíc a ještě bys měl radost  8)

Podobné místo už mám. Není důvod měnit.

Vidíš, jak jsem tě odhadl. Kdybys nebyl lopata, tak bys mohl mít úplně jiný peníze  8) Ale tobě stačí tohle...

Stačí. Můžu používat svůj Emacs a patlat skriptíky v Pythonu. Co víc si přát.

Mně by scházel ten vývoj, ale chápu tě. To je jako teplé místečko v bance. Nikdo neruší a člověk má volnost a klid.

javaman ()

Re:Online IDE pro Javu s možností debugování
« Odpověď #273 kdy: 07. 08. 2016, 20:37:29 »

Generika nejsou dokonalá, ale co mu nejde? Polovičatá je v čem? Streamy jen neumí používat.
.....
Tyhle lopaťácký věci vůbec nedělám. Na to mám lidi.

Z těchto dvou vyjádření mi vychází, že na javu máš lidi a sám v ní neděláš. Jinak bys věděl, o čem mluvím. Např operátor instanceof na generiku by se docela hodil, jenže kvůli implementaci jen na úrovni kompilátoru to z principu nejde. Implementace přímo v bytekódu by to umožnila, jenže pak už by nebyl zpětně kompatibilní.... Stream podporující checked výjimky si opravdu mohu implementovat sám, ale pak přicházím o očekávanou rychlost a mimo jiné i právě zde řešenou podporu v IDE. Jistě víš, že idea sama nabízí konverzi smyček na streamy, jenže když je kód z historických důvodů plný checked výjimek, jaksi smůla... Kdybys v javě dělal a byl takový borec, jak se děláš, tohle vše bys znal. A podstatně líp než já, protože já žádný borec v javě nejsem a používám jen běžné věci. A opravdu nepovažuji javu 1.8 za "je to dost nové." Víš o tom houby, jak vyplývá z blafu "Mouchy to asi má a nebo to používáš blbě".

Akorát se ukazuje, že ji neumíš. Migrovat kód pomocí IDE, když tomu nerozumím, není nic moc. Instanceof chápu, ale nijak jsem ho nepotřeboval, když vím, co za typ to je a to vím. Celkově jsou generika skvělý krok kupředu, i když možná jinde umí více věcí.

Začínal jsem s Javou 1.1, takže 1.8 je opravdu trochu nová. Pokud s ní děláš dva roky a nemáš ty roky před tím, tak to chápu. Ale zase to není chyba u mě.

gl

Re:Online IDE pro Javu s možností debugování
« Odpověď #274 kdy: 07. 08. 2016, 20:54:20 »
Mně by scházel ten vývoj, ale chápu tě.

Sám jsi psal, že máš na vývoj lopaty.


javaman ()

Re:Online IDE pro Javu s možností debugování
« Odpověď #275 kdy: 07. 08. 2016, 20:57:09 »
Lopaty mám na lopaťácký věci. Na vývoj je těžký sehnat lidi a dělají ho jen ti nejlepší jako já.

dustin

Re:Online IDE pro Javu s možností debugování
« Odpověď #276 kdy: 07. 08. 2016, 21:05:18 »
Akorát se ukazuje, že ji neumíš. Migrovat kód pomocí IDE, když tomu nerozumím, není nic moc. Instanceof chápu, ale nijak jsem ho nepotřeboval, když vím, co za typ to je a to vím.

Konkrétní typ samozřejmě nevíš, takže nemůžeš ani zavolat např. konstruktor. To by se hodilo třeba v servisech, takhle se musí dělat konkrétní potomek servisu pro každou koncovou třídu obsluhovaného DTO, abych v něm mohl zavolat new A() nebo new B() nebo new C(). Samozřejmě lze legacy kod úplně překopat a při požadavku na potomka dát servisní metody rovnou do DTO 'tak to děláme u nového kódu), ale někdy by stačilo servis jen generifikovat a doplnit do příslušné metody jenom pár instanceof. Překvapuje mě, že tohle neznáš...

Citace
Celkově jsou generika skvělý krok kupředu, i když možná jinde umí více věcí.

Generika jsou z mého pohledu samozřejmost, krok kupředu to byl před několika lety. Netypovaná pole a hlavně hasmapy byly stejné zvěrstvo jako asociativní pole v PHP.

[/quote]Začínal jsem s Javou 1.1, takže 1.8 je opravdu trochu nová. Pokud s ní děláš dva roky a nemáš ty roky před tím, tak to chápu. Ale zase to není chyba u mě.
[/quote]

První commit (z 31 tis.) máme v r. 2004 - jaká byla tehdy java? 1.8 existuje už dva roky a přechod na ni byl pro nás dost podstatný. Především kvůli lambda výrazům, které např. umožňují nahradit nebezpečné PropertyModely (tedy reflexi) ve wicketu a zároveň nezaneřádit kód spoustou balastu (např. parádní https://github.com/todvora/wicket-lambdamodel našeho exkolegy). Bohužel ostatní změny moc nevyužijeme, protože jsou dost nepoužitelné. O omezení streamu  na runtime výjimky se obecně ví a na netu se na to dost nadává. Stejně tak jako nemožnost jednoduché vlastní implementace poolu vláken v parallel - klidně by jich mohlo být víc, aby se zabránilo tomu globálnímu záseku. Raději ať jádro přepíná kontexty více vláken, než jiné obslužné vlákno servletu čeká, až jiný úplně nesouvisející kód třeba v pomocném tasku dokončí svůj několikaminutový kód v parallel. Výsledek je, že se to nedá spolehlivě použít tak, jak je to hotové. Opět známý fakt, nic nového.

Pořád víc si myslím, že o javě víš velké kulové, jenom si tu taháš triko.

gl

Re:Online IDE pro Javu s možností debugování
« Odpověď #277 kdy: 07. 08. 2016, 21:19:32 »
O Javě nic nevím. Mám dvě hloupé otázky.

Jistě víš, že idea sama nabízí konverzi smyček na streamy, jenže když je kód z historických důvodů plný checked výjimek, jaksi smůla...

Proč bych měl chtít konvertovat smyčku na Stream?

Generika jsou z mého pohledu samozřejmost, krok kupředu to byl před několika lety. Netypovaná pole a hlavně hasmapy byly stejné zvěrstvo jako asociativní pole v PHP.

Proč jsou asociativní pole zvěrstvo?

dustin

Re:Online IDE pro Javu s možností debugování
« Odpověď #278 kdy: 07. 08. 2016, 21:50:44 »
Mám dvě hloupé otázky.
Proč by měly být hloupé?

Citace
Proč bych měl chtít konvertovat smyčku na Stream?
Protože umožňuje daleko stručnější/přehlednější kód (např. http://www.oracle.com/technetwork/articles/java/ma14-java-se-8-streams-2177646.html ). Navíc lze očekávat, že streamy budou vývojáři postupně optimalizovat a mohly by běžet rychleji než ručně napsaná smyčka. Rovněž mají potenciál snadné a "levné" paralelizace, což by byl zásadní přínos, každý nový server má minimálně dvojnásobek jader, než ten předchozí.

Citace
Proč jsou asociativní pole zvěrstvo?

Protože nejsou typovaná (nebo aspoň před řadou let nebyla, když jsme psali v PHP, dnes nevím) a často se zneužívají místo objektů. To souvisí se statickým typováním, bez kterého si nedovedu větší projekt vůbec představit...

Kit

Re:Online IDE pro Javu s možností debugování
« Odpověď #279 kdy: 07. 08. 2016, 22:15:35 »
Proč jsou asociativní pole zvěrstvo?

Protože nejsou typovaná (nebo aspoň před řadou let nebyla, když jsme psali v PHP, dnes nevím) a často se zneužívají místo objektů. To souvisí se statickým typováním, bez kterého si nedovedu větší projekt vůbec představit...

To nesouvisí s asociativním polem, ale dynamickým typováním v PHP. Používají se souběžně s objekty jako univerzální kolekce. Ano, je toho možné zneužívat, ale rozumný programátor to nedělá, protože objekty jsou praktičtější.

Kromě toho lze objekt snadno konvertovat na asociativní pole a naopak. Konverze je významná, protože objekt se v PHP předává odkazem, ale pole hodnotou.

gl

Re:Online IDE pro Javu s možností debugování
« Odpověď #280 kdy: 07. 08. 2016, 22:25:28 »
Protože umožňuje daleko stručnější/přehlednější kód (např. http://www.oracle.com/technetwork/articles/java/ma14-java-se-8-streams-2177646.html ). Navíc lze očekávat, že streamy budou vývojáři postupně optimalizovat a mohly by běžet rychleji než ručně napsaná smyčka. Rovněž mají potenciál snadné a "levné" paralelizace, což by byl zásadní přínos, každý nový server má minimálně dvojnásobek jader, než ten předchozí.

Volání funkce pro každý prvek dokáže Java nějak optimalizovat? V jiných jazycích bývá smyčka rychlejší.

dustin

Re:Online IDE pro Javu s možností debugování
« Odpověď #281 kdy: 07. 08. 2016, 22:33:16 »
Volání funkce pro každý prvek dokáže Java nějak optimalizovat? V jiných jazycích bývá smyčka rychlejší.

Na to neumím odpovědět, neznám implementační detaily v JVM ani v těch jiných jazycích. Asi p. Tišnovský by znal odpověď, ale pochybuji, že čte tuhle smutnou diskusi...

Kit

Re:Online IDE pro Javu s možností debugování
« Odpověď #282 kdy: 07. 08. 2016, 22:39:43 »
Protože umožňuje daleko stručnější/přehlednější kód (např. http://www.oracle.com/technetwork/articles/java/ma14-java-se-8-streams-2177646.html ). Navíc lze očekávat, že streamy budou vývojáři postupně optimalizovat a mohly by běžet rychleji než ručně napsaná smyčka. Rovněž mají potenciál snadné a "levné" paralelizace, což by byl zásadní přínos, každý nový server má minimálně dvojnásobek jader, než ten předchozí.

Volání funkce pro každý prvek dokáže Java nějak optimalizovat? V jiných jazycích bývá smyčka rychlejší.

V PHP bývá rychlejší ten stream než smyčka. Používám ho raději, protože mi připadá elegantnější a zápis je také kratší.

atarist

Re:Online IDE pro Javu s možností debugování
« Odpověď #283 kdy: 08. 08. 2016, 00:18:06 »
Generika jsou z mého pohledu samozřejmost, krok kupředu to byl před několika lety. Netypovaná pole a hlavně hasmapy byly stejné zvěrstvo jako asociativní pole v PHP.

Souhlas se vším až na ta pole :-) Ta byla typovaná vždycky, asi myslíš seznamy/množiny/fronty/zásobníky?

Kit

Re:Online IDE pro Javu s možností debugování
« Odpověď #284 kdy: 08. 08. 2016, 00:36:14 »
Např operátor instanceof na generiku by se docela hodil, jenže kvůli implementaci jen na úrovni kompilátoru to z principu nejde.

K čemu je to dobré? Operátor instanceof nepoužívám a nějak mi nechybí.