Hallo,
Da ich mir unsicher bin, ob die Verwendung von short / byte sinnvoll ist würde ich gerne das Thema etwas näher betrachten bzw "Daumen-Regeln" bekommen. Grundsätzlich finde ich es besser wenn ein Programm / Objekt weniger Resourcen benötigt. Da ich mir dadurch vom Grundsatz mehr "Performance"
verspreche. Aber zu welchen Preis bekomme ich das als Entwickler ?
Man könnte ja auch mit dem Gedanken ins Rennen gehen: "Megabyte" -> "das war gestern", "Arbeitspeicher kostet nix", "die Prozessoren werden schneller" etc ..... aber das finde ich keine gute Einstellung.
Beispiell: Objekt hat eine Variable: Speicherverbrauch bei 1.000.000 Objekten
Jedoch muß teilweise ein Cast programmiert werden. (was per se vermieden werden soll (Daumenregel?). bzw bei Overloading von Methoden gibts Fallstricke ( was ich so im Netz gefunden habe).
folgende Grundregeln hab ich mir mal überlegt:
Falls Anwendung / Objekt folgende Fällen entspricht sollte man sich Gedanken über primitive Datentypen machen:
a) Massdatenverarbeitung ( k.a. vielleicht 1.000.000 Objekte als Grundgröße)
b) Netzwerk-Anbindung
c) Verwendung einer Datenbank
wie seht Ihr das ???
Fallstricke
da fällt mir nur das mit dem "cast" ein ....
auch hier, wie seht Ihr das ?
Da ich mir unsicher bin, ob die Verwendung von short / byte sinnvoll ist würde ich gerne das Thema etwas näher betrachten bzw "Daumen-Regeln" bekommen. Grundsätzlich finde ich es besser wenn ein Programm / Objekt weniger Resourcen benötigt. Da ich mir dadurch vom Grundsatz mehr "Performance"
verspreche. Aber zu welchen Preis bekomme ich das als Entwickler ?
Man könnte ja auch mit dem Gedanken ins Rennen gehen: "Megabyte" -> "das war gestern", "Arbeitspeicher kostet nix", "die Prozessoren werden schneller" etc ..... aber das finde ich keine gute Einstellung.
Beispiell: Objekt hat eine Variable: Speicherverbrauch bei 1.000.000 Objekten
Java:
Byte KiloByte Megabyte
byte 1 1.000.000,00 976,56 0,95
short 2 2.000.000,00 1953,13 1,91
int 4 4.000.000,00 3906,25 3,81
Jedoch muß teilweise ein Cast programmiert werden. (was per se vermieden werden soll (Daumenregel?). bzw bei Overloading von Methoden gibts Fallstricke ( was ich so im Netz gefunden habe).
Java:
public static void test()
{
short a = 1;
short b = 2;
short ergebniss;
ergebniss = a + b; //geht nicht
ergebniss = (short)(a + b); //geht
}
folgende Grundregeln hab ich mir mal überlegt:
Falls Anwendung / Objekt folgende Fällen entspricht sollte man sich Gedanken über primitive Datentypen machen:
a) Massdatenverarbeitung ( k.a. vielleicht 1.000.000 Objekte als Grundgröße)
b) Netzwerk-Anbindung
c) Verwendung einer Datenbank
wie seht Ihr das ???
Fallstricke
da fällt mir nur das mit dem "cast" ein ....
auch hier, wie seht Ihr das ?