@Saly: nie wiem o LLVM, ale pewnie będzie bardzo zbliżona, ogólnie wydajnośc java 8 - 10 jest 15%-20% różnicy na korzyść java10, gdzie masz dostęp do JIT i AoT, więc VM ma kilka tricków które pozwolą zoptymalizować kod lepiej niz programista, ale nadal odpalasz kod w VM wiec kilka procent też tracisz. nie widziałem żadnych benchmarków do LLVM, za to widziałem do pythona i ruby gdzie graal działał 30%-55% szybciej
interface - @Saly: nie wiem o LLVM, ale pewnie będzie bardzo zbliżona, ogólnie wydajn...
  • Odpowiedz
na dobre wsparcie od IntelliJ


@Saly: chyba nie szybko Graal to VM dla języka, kompilator i narzędzia to osobna sprawa, prędzej dobre wsparcie dostaniesz z netbeansa czy eclipse niż z IDEA, to kompletnie nie ich model biznesowy, za to mysle ze gradle sobie z tym poradzi szybko i sprawnie, juz od dawna gradle dziala dobrze z node, ecmascript i java
  • Odpowiedz
Właśnie zakończyłem migrację kodu java7-8 do Java10, było więcej przeszkód niż się spodziewałem ( ͡° ʖ̯ ͡°)

Inputstreamreader został przepisany od nowa, więc jak ktoś go extendował albo ma swojego Readera to pewnie będzie miał problemy. @PostConstruct zostało przeniesione do innego moduły który trzeba importować podczas kompilacji. JPA Metamodel jest mało stabilne w Java10 i wymaga dodania nowych zależności (tak samo jak jackson), kompiluje się w Java9.
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@interface: niby tak, ale nawet po tym jak wejdzie 11 to dalej mozesz etapami migrować, a problem będzie jak z jakiegoś powodu zblokuje Ci sie migracja z 10 na 11 i w jakiś wiekszych komercyjnych projektach może być problem
  • Odpowiedz
Nie bijcie mnie, ja tylko kodzę w firmie, nie rządze :P


@asdasdce2w: że niby ludzie którzy nie znają się na technologii decydują czego używają ludzie? wyobraź sobie że manager firmy budowlanej każe używać patyków z sosny zamiast łopaty bo tak robiono 3000lat temu i pracownicy muszą kopać patykami bo management uważa to za słuszne.
  • Odpowiedz
Jaki jest wynik próby kompilacji i uruchomienia tego kodu?
Zakładamy, że są obecne wymagane importy i klasa:

```

  static BigDecimal first = BigDecimal.ONE;

Jaki jest wynik próby kompilacji i uruchomienia tego kodu?

  • 1:5 1.6% (1)
  • 2:4 0% (0)
  • 3:4 3.3% (2)
  • 4:3 19.7% (12)
  • 1:3 3.3% (2)
  • 1:4 0% (0)
  • 2:5 3.3% (2)
  • Nie znam się bo piszę w C# 59.0% (36)
  • Błąd kompulacji 4.9% (3)
  • Bład uruchomienia 4.9% (3)

Oddanych głosów: 61

  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@interface: czepiam się tego, że zamiast dać ludziom na rekrutacji konkretne zadanie do zrobienia i ocenić kandydata na jego podstawie, to rekruterzy tworzą sobie jakieś g---o-zagadki nie mające odbicia w rzeczywistości i się onanizują, bo ktoś nie potrafi użyć z pamięci struktury która wystepuję w projekcie raz na rok. Sam napisałeś, że to zadanie rekrutacyjne i do tego się odnoszę.
  • Odpowiedz
Performance Monitoring: 5 Open Source Tools You Should Know
https://dzone.com/articles/java-performance-monitoring-5-open-source-tools-you-should-know

The Science of The Job Search, Part III: 61% of “Entry-Level” Jobs Require 3+ Years of Experience
https://talent.works/blog/2018/03/28/the-science-of-the-job-search-part-iii-61-of-entry-level-jobs-require-3-years-of-experience/

#interfacesmieci
interface - Performance Monitoring: 5 Open Source Tools You Should Know
https://dzone...

źródło: comment_eac8xbjwwCuX7NKTYMAZhCNZnO4JKzup.jpg

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Javy bo za 6 miesięcy itak by był deprecated xD


@asdasdce2w: LTS java wychodzi co 3 wydania, więc co ok. 1.5roku-2lata ;) na stronie oracla oficjalną wersją javy do pobrania jest 8 nadal, następne będzie 11.
  • Odpowiedz
@GotoFinal: to nie w runtime, tylko podczas kompilacji lombok dorzuca swoj bytecode - metody, pola itp - i w wyniku tego powstaje normalny plik class ktory dziala wszedzie. Problem polega na tym ze to co widzisz kodzie jest inne niz wygenerowany bytecode w class. Immutables tworzy subclass danej klasy i tam dorzuca swoje rzeczy.

Mi sie wydaje ze to dziala na wszystkich kompilatorach bo jest to oficjalne api - https://docs.oracle.com/javase/8/docs/api/javax/annotation/processing/Processor.html

no chyba ze o czyms nie wiem
  • Odpowiedz
@afe1:

to nie w runtime, tylko podczas kompilacji l

No chodzi o runtime kompilacji, przecież cały czas piszę o API kompilatora :P

No i niestety pomijasz ważną rzecz: te api pozwala tylko wygenerować nowe klasy itd - ale nie możesz edytować AST obecnej klasy tak że dodajesz sobie getter i możesz go bezpośrednio używać z tej samej klasy. Jak dodasz metodę do istniejącej klasy to nie możesz jej użyć w tej samej klasie itd, a lombok ma masę tricków jak też val itd - a to wszystko znacząco wychodzi za API. Lombok polega a com.sun.tools.javac a to już nie jest API, tylko wewnętrzna implementacja - i leci tam często po refleksjach. Dla eclipse podobnie. Nawet ma agenty od edytowania bytecode kompilatora w runtime (w runtime kompilacji
  • Odpowiedz