@bigown „Dlaczego ludzie nadal twierdzą, że Java działa wolno?”
Ponieważ są głupi. Ponieważ nie mają doświadczenia zawodowego, ale myślą, że są żywą inkarnacją Dikjstry lub powtórnym przyjściem Linusa Torvalda, och, nie wiem. Powodów, dla których mówimy o tak upośledzonej rzeczy, jest tak wiele, ale zwykle stoją za nimi głupota, bezmyślny subiektywny fanboyizm i emocjonalne wyzyskiwanie uwagi.
Odłączmy to, abyś mógł zobaczyć prawdę o tym, co właśnie powiedziałem powyżej:
Po pierwsze, co jest wolne, w jakim kontekście, do czego, w jakich warunkach, z jakim celem inżynieryjnym / naukowym / biznesowym (mówiąc, że jest do bani, nie jest jednym z nich). Każda osoba, która mówi „X jest wolny” dla dowolnej technologii X lub po prostu „X to Y”, gdzie Y jest pewnego rodzaju negatywnym stwierdzeniem, bez odpowiedzi na którekolwiek z powyższych pytań należy odrzucić jako głupca. Takie stwierdzenia nie mają miejsca w inżynierii. Może w polityce i nieletnich czatach, ale nie w inżynierii.
Po drugie, większość tych błędnych głupców płacze, że Java jest powolna, ponieważ ZOMG, ich zaćmienie trwa wiecznie, aby odpalić (rany, załaduj to z wszystkimi wtyczkami i zgadnij, co się stanie). Większość z tych głupców nawet nie wie, jak to zrobić aby dostroić Jvm, aby Eclipse działało szybko (lub dla dowolnej aplikacji Java w tym zakresie). Oznacza to, że nie mają pojęcia o dostrajaniu wydajności, co jest rzeczywistością nie tylko dla Javy, ale dla każdego niebanalnego systemu, czy to sprzętu, czy oprogramowania. Więc właśnie tam rozbroją się za jakąkolwiek techniczną ważność, czyniąc takie bezmyślne stwierdzenia.
Po trzecie, zastanówmy się, na czym polega większość rozwoju Java: przede wszystkim back-end OLTP; drugie miejsce zajmują systemy monitorowania. Każdy typ systemu ma działać w klastrach i działać nieprzerwanie przez tygodnie, jeśli nie miesiące. Czy to naprawdę ma znaczenie, że ładowanie twojej małej zaćmienia lub zabawki zajmuje minutę lub dwie, gdy celem PRAWDZIWYCH aplikacji Java jest uruchamianie przez dłuższy czas? Kontekst, ludzie, kontekst.
Wreszcie szkielet OLTP w Google i Ebay działają w Javie. Uznałem to za dowód sprzeczności, że Java nie jest powolna (przynajmniej w przypadku warunków, które mają znaczenie, nie w przypadku małych eksperymentów z zabawkami, testów porównawczych i nie dających się zweryfikować nieoficjalnych dowodów wykonanych specjalnie w celu powiedzenia: „X jest wolny, jest do kitu”.
Jest inżynieria i fanboyizm. Zgadnij, do jakich kategorii należą takie?