Al escribir algo que crea muchos (1000) de objetos pequeños a menudo, ¿debería tratar de minimizarlo para el rendimiento? Especialmente si no sabe en qué sistema se ejecutará, desde computadoras de escritorio de baja a alta gama o incluso móviles. Para dispositivos móviles, escuché que crear muchos objetos dificulta un poco el rendimiento, aunque no sé cuán cierto es eso.
Tengo un ejemplo que muestra bien esta idea. En un programa de gráficos, digamos que hay un método que se usa para todo el dibujo llamado idealmente drawPixel(Point). Podría haber miles de puntos creados y puede repetirse a menudo, como en un juego donde podría llamarse más de 60 veces por segundo. Alternativamente, drawPixel(int x, int y)podría usarse para minimizar la creación de muchos objetos Point.
En un diseño orientado a objetos, creo que sería preferible usar Point. Sin embargo, el uso de tipos primitivos puede aumentar el rendimiento. El aumento de rendimiento puede ser insignificante en la mayoría de los casos, pero no estoy seguro acerca de cosas como máquinas móviles o más antiguas. ¿Cuál es la ganancia de rendimiento al hacer algo como esto y es algo que debe tenerse en cuenta?
System.getProperty("java.version")(o "java.vm.version") es un punto de partida.