Udostępnij przez


Implementowanie interfejsu użytkownika

W tej sekcji opisano niektóre zadania związane z implementacją interfejsu użytkownika dla aplikacji systemu Windows.

Prototyp

Interfejsy użytkownika powinny być projektowane z listy scenariuszy i wymagań użytkownika, które zostały zidentyfikowane w kroku analizy użytkownika.

Prototypy mogą być tak proste, jak szkice ołówka lub tak złożone, jak interaktywne makiety ekranu. Zachowaj wszystkie poprzednie prace, ponieważ może to być przydatne podczas pokazywania interesariuszom alternatyw, które zostały rozważane, oraz wyjaśniania, dlaczego zostały odrzucone.

Spróbuj ograniczyć ten krok do co najmniej dwóch prototypów. Prototypy nie muszą być wyczerpujące; muszą po prostu skutecznie symulować środowisko korzystania z rzeczywistej aplikacji.

Pokazuj prototypy i śledź opinie użytkowników, aby ułatwić identyfikowanie ogólnych trendów użyteczności. Jeśli jest to możliwe, odrzuć najmniej udane prototypy i uwzględnij jak najwięcej przydatnych opinii w co najmniej jednym z pozostałych prototypów. Powtórz ten proces, gdy pozwala czas i zasoby.

Dostępne są różne narzędzia do tworzenia prototypów, w tym SketchFlow w programie Microsoft Expression Studio 3, edytor układu w programie Microsoft Visual Studio, a nawet Microsoft Paint.

Konstruować

Podczas implementowania interfejsu użytkownika dla aplikacji należy wziąć pod uwagę następujące kwestie:

  • Struktura poleceń

    Ustal, czy zaimplementować tradycyjną strukturę poleceń na podstawie menu i pasków narzędzi, czy też alternatywną strukturę poleceń opartą na strukturze wstążki systemu Windows. Aby uzyskać więcej informacji, zobacz Menu, Paski narzędzi, i Windows Ribbon Framework.

  • Okna i okna dialogowe

    Na podstawie projektu interfejsu użytkownika i tworzenia prototypów zaimplementuj okna aplikacji, w tym główne okno, okna podrzędne, okna dialogowe i pola komunikatów. Postępuj zgodnie z wytycznymi dotyczącymi środowiska użytkownika, aby określić, które style i kontrolki mają być używane w oknach i oknach dialogowych. Aby uzyskać więcej informacji, zobacz Windows, okna dialogowe i kontrolki systemu Windows.

  • Kontrolki niestandardowe

    Utwórz nowe kontrolki niestandardowe tylko wtedy, gdy nie możesz uzyskać żądanych funkcji z jednej ze standardowych kontrolek systemu Windows. Nowe kontrolki niestandardowe są bardzo kosztowne do opracowania i wymagają dodatkowej pracy, aby były dostępne. Jeśli aplikacja wymaga kontrolek niestandardowych, upewnij się, że są one odpowiednio narażone na technologie pomocnicze. Aby uzyskać więcej informacji, zobacz kontrolki niestandardowe i Windows Automation API.

  • Obsługa standardowych urządzeń wejściowych użytkownika

    Większość aplikacji systemu Windows musi obsługiwać dane wejściowe użytkownika za pomocą klawiatury i myszy. Możliwość nawigowania i uzyskiwania dostępu do wszystkich funkcji aplikacji za pośrednictwem samej klawiatury jest szczególnie ważna dla użytkowników z upośledzeniem wzroku lub problemy z mobilnością. Aby uzyskać więcej informacji, zobacz dane wejściowe użytkownika oraz eBook Inżynieria Oprogramowania Dla Dostępności.

  • Style wizualizacji, animacje i efekty wizualne

    System Windows zawiera kilka technologii, których można użyć do dodawania atrakcyjnych efektów wizualnych i wyróżnienia interfejsu użytkownika na tle innych aplikacji. Obejmują one określanie stylów wizualnych kontrolek, dodawanie animacji do elementów interfejsu użytkownika i implementowanie różnych efektów wizualnych w interfejsie użytkownika. Aby uzyskać więcej informacji, zobacz Visual Styles, Windows Animation Manageri Desktop Window Manager.

Uprościć

Pomyślne doświadczenie użytkownika zależy od podejścia, perspektywy i założeń projektanta podczas procesu projektowania. Uzyskanie podstawowego zrozumienia, w jaki sposób aplikacja może być używana przez odbiorców docelowych, wymaga możliwości myślenia szeroko, poza ograniczeniami tego, co odpowiada potrzebom dewelopera. Inwestowanie czasu, wysiłku i badań na początku projektu przyniesie korzyści na końcu.

Redukcja, ponowne używanie, czyszczenie

Funkcje ulepszają produkt tylko wtedy, gdy są one rzeczywiście używane. W wielu przypadkach rozprzestrzenianie funkcji może powodować złożoność wraz z dodawaniem większej liczby ikon, elementów menu, pasków narzędzi i okien dialogowych zakłócających wydajność i produktywność, a nie dodawanie wartości.

Najlepszy interfejs użytkownika to brak interfejsu użytkownika

Interfejs użytkownika oznacza, że użytkownik musi wchodzić w interakcję z aplikacją, aby coś się stało. W idealnym przypadku żadna interakcja nie jest konieczna. Z perspektywy użytkownika działa to po prostu. Jeśli można dodać funkcję, która bezpiecznie usuwa interakcję użytkownika, znacznie usprawni środowisko użytkownika.

Mniej UI to lepsze UI

W wielu przypadkach nie można całkowicie usunąć interakcji interfejsu użytkownika ze środowiska użytkownika. Jednak tym mniejsza interakcja użytkownika wymagana przez aplikację jest lepsza.

Zidentyfikuj najbardziej typowe i niezbędne działania, które użytkownicy będą wykonywać za pomocą aplikacji, i sprawiają, że te funkcje są najbardziej widoczne w interfejsie użytkownika. Przyłóż mniejszą wagę do innych funkcji i działań, czy to wizualnie, hierarchicznie, czy poprzez opcjonalne ustawienia aplikacji i preferencje użytkownika.

  • Zamień, a nie dodaj

    Ochrona reguły interfejsu użytkownika oznacza, że dodajesz coś tylko wtedy, gdy możesz coś zabrać. Ta reguła zmusza dewelopera do krytycznego myślenia o nowej funkcji, biorąc pod uwagę wpływ funkcji na całe środowisko użytkownika.

    Nowe funkcje nie powinny być promowane, ponieważ są nowe: nie należy mylić marketingu z użytecznością. Aby ułatwić użytkownikom znajdowanie nowych funkcji w produkcie, dodaj element do menu Pomoc opisujące zmiany, które wystąpiły od ostatniej wersji aplikacji.

  • Użytkownik jest ograniczonym zasobem

    Im większa funkcjonalność, która jest uwidoczniona w dowolnym momencie, tym trudniej jest użytkownikowi znaleźć potrzebne funkcje.

  • To niegrzeczne przerywać

    Gdy aplikacja wyświetla okno dialogowe, wymusza na użytkowniku zatrzymanie tego, co robi, i zwracanie uwagi na coś innego. Jeśli jest to możliwe, usuń całkowicie konieczność korzystania z okna dialogowego, unikając przypadków błędów i innych destrukcyjnych środowisk użytkownika. Aby uzyskać więcej informacji na temat wytycznych dotyczących komunikatów, zobacz Messages.

  • Proste może być potężne

    Prosty interfejs użytkownika nie oznacza braku funkcjonalności. Zazwyczaj wynikiem prostszego interfejsu użytkownika jest skrócona krzywa uczenia się, zwiększona wydajność i większa produktywność. Dzięki temu użytkownik może zwiększyć swoją biegłość w aplikacji.

Spójny interfejs użytkownika to dobry interfejs użytkownika

Ogólnie rzecz biorąc, zaleca się dążenie do spójności w całym interfejsie użytkownika aplikacji. Zapewnienie spójnego interfejsu użytkownika umożliwia użytkownikowi uzyskanie większej biegłości w aplikacji w znacznie krótszym czasie. Mogą oni zastosować swoją istniejącą wiedzę na temat aplikacji do różnych sytuacji i używać nieznanych funkcji z ufnością.

W rzadkich przypadkach spójność nie przynosi korzyści użytkownikowi, a nawet może pogorszyć doświadczenie użytkownika. Nie należy wprowadzać spójności interfejsu użytkownika, jeśli ta spójność pogarsza zdolność do wykonania zadania. Spójność sama w sobie nie gwarantuje użyteczności. Błędem jest myślenie, że spójność w interfejsie doprowadzi do dobrego projektowania.

Na przykład interfejs użytkownika gry wideo jest zazwyczaj bardzo specyficzny dla rodzaju gry. Próba zaprojektowania ogólnego interfejsu użytkownika, który działa dobrze w przypadku dwóch wyspecjalizowanych gier, jeden, który wymaga kierownicy, a drugi, który działa najlepiej z kierownicą i przyciskami, prawdopodobnie nie będzie udany dla obu gier. W najlepszym razie prawdopodobnie zostanie osiągnięty kompromis, który nie jest dobry dla żadnej ze stron.

Posiadanie dobrych danych na temat sposobu użycia rzeczy jest kluczem do podejmowania tej decyzji. Bądź świadomy zalet i wad każdego kompromisu (szybkość versus niezawodność, łatwość uczenia się versus biegłość ekspertów, globalna spójność versus optymalizacja lokalna) i podejmij najlepsze decyzje dotyczące funkcji w odniesieniu do całego produktu.

Projektowanie to wybór, w jaki sposób ponieść porażkę: optymalizacja jednej rzeczy oznacza porażkę w innej. Kluczem do dobrego projektu interfejsu użytkownika jest możliwość podjęcia decyzji, które cechy aplikacji są najważniejsze i które mogą być wycinane.