- (с) перефразировка со stackoverflow насчет автоматической garbage-сборки
Я, конечно, люблю и пользуюсь библиотеками, ценю фреймворки и благодарно учу Java. Но не могу не отметить, что все они вкупе хорошо разгоняют инфляцию памяти и процессоров.
В итоге в 2015 гигабайты и гигагерцы - это не те гигабайты и гигагерцы, о которых мечтали лет 10 назад. Кое-какая оптимизация сохраняется в игровой индустрии, о чем говорят даже уважаемые люди в книге "Кодеры за работой". В остальном - ну емаё.
Доходит до того, что авторы мануалов по игровому движку на Java честно предупреждают:
- Нахер все стандартные коллекции Java. Нахер даже ArrayList. Используйте встроенные в движок специально оптимизированные массивы.
Я когда увидел эти рекомендации, даже перехотел с Haxe на Java переходить в разработке мини-игр. А ведь уже в голове крутились планы, как я пишу игру за день, а потом пишу статью, как я пишу игру за день на Java, и все мне рукоплещут, а я кланяюсь, кланяюсь... Не, пока на Haxe посижу - хотя там тоже есть над чем плакать.
Что поделать - обратная сторона АКП, то есть удобных современных языков программирования.
PS: есть слабая надежда на такой виток спирали, что когда дойдем до реально разумных средств разработки - они сами, как программисты древности, будут составлять высоко оптимизированные программы из тех чанов спагетти-кода, что будут генерировать программисты-люди. В конце концов, у Java когда-то не было даже JIT-компиляции, а потом они даже переписали свою машину на ассемблере...