2011-02-06 7 views
21

Ponieważ wydajność jest bardzo ważna dla programowania aplikacji Windows Phone 7, zaczynam to pytanie, abyśmy mogli zebrać tutaj pomocne porady dotyczące wydajności.Jakie są niektóre wskazówki dotyczące wydajności podczas tworzenia aplikacji systemu Windows Phone 7?

Ogólne:

Performance Considerations in Applications for Windows Phone

Artykuły:

Performance Tips when creating WP7 apps

Performance of Windows Phone 7 Applications

Performance Considerations for Windows Phone 7 Games

Filmy:

Optimizing Performance for Silverlight Windows Phone 7 Applications

Windows Phone 7 Jump Start (Session 17 of 19): Optimizing for Performance

Silverlight Firestarter 2010 - Performance Tips for Silverlight Windows Phone 7

Próbki:

Creating High Performing Silverlight Applications for Windows Phone Samples

+0

Pisałem udaną aplikację dla iPhone i tylko dwa optymalizacji wydajności, które miałem do wdrożenia nie ładować zbyt dużo danych przez Internet jednocześnie i asynchronicznie ładować obrazy do ogromnej listy. Teraz wdrażam tę samą aplikację dla telefonu 7 i musiałem zdać sobie sprawę, że telefon 7 ma wiele wbudowanych komponentów z problemami z wydajnością (okno listy, pasek postępu, złożone układy itp.). Niestety, tutaj to pytanie ma wiele sensu. – Codo

+0

Zgodnie z FAQ "Programiści zainteresowani profesjonalnymi dyskusjami na temat tworzenia oprogramowania" to pytanie należy do programistów. Również wspomniano w FAQ: "Chciałbym wziąć udział w dyskusji na temat ______" nie powinno się tu pytać ... – WarrenFaith

+3

To powinien być post Wiki Wspólnoty. Powinieneś przynajmniej mieć kilka odpowiedzi. Na przykład, zobacz jedną z stron "Pierwsze kroki" tutaj na SO. http://stackoverflow.com/questions/3402466/getting-started-w-windows-phone-7 – ctacke

Odpowiedz

1

Ogólne

  • Jeśli aplikacja ładuje się bardzo szybko pozbyć
    z ekranu spash.
  • Generowanie kodu w kompaktowej obudowie to nie to samo, co kod systemu Windows . Jitter jest zoptymalizowany do działa szybko, nie tworząc najszybszego kodu .
  • Właściwość jest po prostu funkcją dla .Net CF.

Silverlight

  • Weź tyle, ile można z compositor wątek (dla wywołania zwrotnego animacje używać BitmapCache).
  • Użyj Canvas lub niestandardowego popup zamiast domyślnie jeden (klasa Popup) - brak przyspieszenia sprzętowego .

XNA

  • Format Zastosowanie DXT dla tekstury i pakować je w 1 pliku (szybsze ładowanie i mniejszej liczby przełączników GPU tekstury).
  • Rzeczy, takie jak statystyki gier, należy unikać używania za pomocą ciągów (niezmiennie). SpriteBatch.DrawString może pobrać tekst StringBuilder bezpośrednio do rysowania tekstu.
  • Unikaj używania/nadużywania LINQ i foreach (może to powodować śmieci). Użyj tablic Jagged (tablic tablic) zamiast tablic 2d.
+0

co to jest niestandardowe popup? i czym jest animacja wywołania zwrotnego? – onmyway133

2

Występ # 1 wzmacniacz Znalazłem dla moich aplikacji, zwłaszcza dla animacji, które korzystają z wątku UI, jest ręcznie ustawić BitmapCache dla wszystkich UIElements. To znacznie poprawia całą animację.

-1

Znalazłem kilka dni temu WP7 best practices - Performance

Jego forumforum linki do artykułów (niektóre z nich wspomniane wcześniej) i źródeł (jak Jeff Wilcox Wydajność Progress Bar).

I pamiętaj: listboxes są jak kryptonit do wykonywania WP7 =)

Powiązane problemy