Jacek K.

Jacek K. Software Developer,
Telecetera Ltd.

Temat: procedury statyczne

mam takie ogolne pytanie, mianowicie:
procedur (czy zmiennych) statycznych uzywam glownie w celu posiadania dostepu do nich w calej aplikacji (bez przekazywania referencji do obiektow), jakie sa jeszcze inne korzysci z uzywania pol statycznych?

konto usunięte

Temat: procedury statyczne

Na pewno oszczędność pamięci, ale to jeśli klasa w której masz pole statyczne jest często i dużo wykorzystywana. Jeśli chodzi o metody static vs. instance to wg. MSDN wywołanie metody statycznej nie jest szybsze:
"A call to a static method generates a call instruction in Microsoft intermediate language (MSIL), whereas a call to an
instance method generates a callvirt instruction, which also
checks for a null object references. However, most of the time
the performance difference between the two is not significant."

http://msdn.microsoft.com/en-us/library/79b3xss3.aspx

Choć czasem na formach możesz przeczytać, że można zyskać AŻ 10 nanosekund na wywołaniu. Ale nie wiem czy jest sens się zastanawiać nad różnicami (chyba, że czysto teoretycznie). Jeśli coś powinno być klasą/metodą/polem statycznym to niech takim będzie, bo tak wynika ze sposobu użycia.Paweł Łukasik edytował(a) ten post dnia 24.08.08 o godzinie 16:41

konto usunięte

Temat: procedury statyczne

Jacek Stanisław Kutyła:
mam takie ogolne pytanie, mianowicie:
procedur (czy zmiennych) statycznych uzywam glownie w celu posiadania dostepu do nich w calej aplikacji (bez przekazywania referencji do obiektow), jakie sa jeszcze inne korzysci z uzywania pol statycznych?

A ja dodam, że lepiej użyć pól i metod statycznych do implementacji singletona i z niego uzyskiwać dostęp wspólny dla aplikacji.
Wojciech Gomoła

Wojciech Gomoła Now is my Time

Temat: procedury statyczne

10 nano sekund to nawet przy częstym wykorzystywaniu nie jest dużo.

IMHO rób tak aby kod dobrze odzwierciedlał sens aplikacji, "łatwiej jest zoptymalizować pod względem wydajności poprawny kod, niż poprawić działający wydajnie ale niepoprawnie" już nie pamiętam z jakiej to książki

konto usunięte

Temat: procedury statyczne

Wojciech Gomoła:
10 nano sekund to nawet przy częstym wykorzystywaniu nie jest dużo.

IMHO rób tak aby kod dobrze odzwierciedlał sens aplikacji, "łatwiej jest zoptymalizować pod względem wydajności poprawny kod, niż poprawić działający wydajnie ale niepoprawnie" już nie pamiętam z jakiej to książki

Problem callvirt byl poruszany na MSDN (najprawdopodobniej) jako jedna z rzczy ktore powinny zostac poprawnione w nast. wersji Frameworka....

A cytatcik pochodzi z "Object-Oriented Software Construction" Bertranda Meyera.
Jacek K.

Jacek K. Software Developer,
Telecetera Ltd.

Temat: procedury statyczne

juz nieaktualne...Jacek Stanisław Kutyła edytował(a) ten post dnia 24.08.08 o godzinie 22:13

Następna dyskusja:

Entity Framework + Procedur...




Wyślij zaproszenie do