Udostępnij za pośrednictwem


Tworzenie aplikacji systemu Windows — najlepsze rozwiązania

Najlepsze rozwiązania w tym dokumencie pomogą Ci w tworzeniu wspaniałych aplikacji systemu Windows, które docierają do około 1,5 miliarda różnych użytkowników komputerów na całym świecie. Ten dokument jest podzielony na następujące sekcje:

  1. środowisko użytkownika: wskazówki w tej sekcji pomogą Ci poprawić wygląd, działanie i użyteczność aplikacji.
  2. wydajność i podstawy: wskazówki w tej sekcji pomogą Ci poprawić wydajność i wykorzystanie zasobów aplikacji.
  3. System operacyjny/optymalizacja sprzętowa: wskazówki w tej sekcji pomogą Ci zoptymalizować pakowanie i dystrybucję pod kątem różnych konfiguracji sprzętowych.
  4. odnajdywanie aplikacji i zarządzanie nimi: wskazówki w tej sekcji ułatwią użytkownikom odnajdywanie, instalowanie, aktualizowanie i odinstalowywanie aplikacji.
  5. ułatwienia dostępu: wskazówki w tej sekcji ułatwią ci tworzenie dostępnych i integracyjnych środowisk.
  6. zabezpieczenia i prywatność: wskazówki w tej sekcji pomogą Ci ograniczyć zagrożenia bezpieczeństwa i spełnić potrzeby użytkowników dotyczące prywatności.

Środowisko użytkownika (UX)

System Windows 11 oznacza wizualną ewolucję systemu operacyjnego Windows, który poprawia wygląd, działanie i użyteczność systemu Windows. Nasze badania pokazują, że użytkownicy mają wysokie oczekiwania dotyczące aplikacji systemu Windows:

  • Oczekują, że aplikacje systemu Windows będą działać z pełnym zakresem danych wejściowych.
  • Oczekują wzorców projektowania i interakcji, które wyglądają i działają natywnie na bieżących i przyszłych urządzeniach.
  • Oczekują one wsparcia dla nowoczesnych przepływów pracy z oknami i punktów integracji z powłoką systemową.

Gdy aplikacje są zgodne ze stylami systemu Windows i standardowymi zachowaniami systemu Windows, użytkownicy nie muszą ponownie uczyć się wzorców interakcji. Ułatwia to użytkownikom korzystanie z aplikacji. Aplikacja, która wygląda świetnie, może stworzyć doskonałe wrażenie, ale aplikacja, która jest również łatwa w użyciu i pomaga użytkownikowi osiągnąć swoje cele, stworzy doskonałe trwałe wrażenie.

System Windows 11 jest oparty na zasadach projektowania systemu Windows 11. Postępując zgodnie z tymi wytycznymi podczas tworzenia aplikacji, możesz spełnić oczekiwania klientów dotyczące doskonałego środowiska aplikacji. Podczas myślenia o włączeniu najnowszych i zalecanych wzorców interfejsu użytkownika/środowiska użytkownika aplikacji systemu Windows do aplikacji systemu Windows zalecamy skupienie się na następujących 5 obszarach:

  • Układ
  • Interakcja interfejsu użytkownika
  • Styl wizualizacji
  • Zachowanie okna
  • Punkty integracji powłoki systemowej

WinUI 3 zapewnia wbudowaną obsługę wielu z tych środowisk i stylów za pośrednictwem wspólnych kontrolek. Jeśli nie możesz używać interfejsu WinUI 3, rozważ emulowanie stylów przedstawionych w naszych zestawach narzędzi do projektowania i Galerii WinUI.

Układ

Aplikacje systemu Windows działają w różnych konfiguracjach, które odpowiadają potrzebom użytkowników. Przetestuj okienka i/lub strony aplikacji w różnych wymiarach, urządzeniach, rozmiarach okien, ustawieniach DPI i ustawieniach skalowania. Aplikacja powinna działać zgodnie z oczekiwaniami nawet w przypadku zmiany rozmiaru na małe wymiary.

Świadomość DPI

Aplikacje WinUI są automatycznie skalowane dla każdego wyświetlacza, na którym są uruchomione. Inne technologie programowania systemu Windows (Win32, WinForms, WPF itp.) nie obsługują automatycznie skalowania DPI na monitor. Bez dodatkowej pracy wspierającej skalowanie DPI w monitorach dla tych technologii, aplikacje mogą pojawiać się rozmyte lub w niepoprawnym rozmiarze. Aby uzyskać więcej informacji, zobacz Tworzenie aplikacji desktopowych o wysokiej rozdzielczości DPI w systemie Windows.

Układ dynamiczny

Użyj dynamicznych technik projektowania, aby zoptymalizować strony aplikacji pod kątem różnych rozmiarów okien. Postępuj zgodnie z wytycznymi dotyczącymi przesuwania lub przewijania, aby upewnić się, że użytkownicy będą zawsze mogli uzyskiwać dostęp do zawartości, bez względu na to, jak małe jest okno aplikacji.

Interakcja interfejsu użytkownika

Użytkownicy systemu Windows mogą wybierać spośród wielu różnych urządzeń wejściowych do interakcji z aplikacją, a system Windows ma określone środowiska systemowe, z których użytkownicy są przyzwyczajeni do korzystania. Kiedy Twoja aplikacja przestrzega tych doświadczeń, użytkownicy mogą niezawodnie używać aplikacji. Gdy aplikacja nie jest zgodna z tymi konwencjami, użytkownicy mogą znaleźć to mylące lub frustrujące.

Polecenie na obiekcie

Użyj poleceń, takich jak menu kontekstowe , polecenia szybkiego przesunięcia , i skróty klawiaturowe . System Windows 11 poprawia zachowanie menu kontekstowego dla prawego kliknięcia, więc jeśli aplikacja tworzy menu kontekstowe, zapoznaj się z najnowszymi wskazówkami dotyczącymi integracji menu kontekstowego . Kontrolki tekstu WinUI automatycznie uwidaczniają polecenia wycinania/kopiowania/wklejania, ale inne kontrolki mogą wymagać dodatkowej pracy w celu obsługi tych poleceń.

Interakcja z tekstem

Za każdym razem, gdy w aplikacji znajduje się tekst, użytkownicy oczekują, że będą mogli ją zaznaczyć i skopiować. Jeśli tekst jest edytowalny, spodziewają się również, że mogą wycinać i wklejać. Dzięki zapewnieniu spójnych skrótów dla użytkowników można umożliwić im wydajniejsze wykonywanie zadań. Upewnij się, że te akcje można wykonać przy użyciu klawiatury, myszy, gładzika, dotyku i pióra.

Panoramowanie & przewijanie

Jest rzadkością, aby interfejs użytkownika aplikacji mieścił się całkowicie na pojedynczej stronie, która nie wymaga przewijania. Nawet jeśli istnieje tylko kilka elementów interfejsu użytkownika, użytkownicy mogą swobodnie zmieniać rozmiar okna aplikacji i powodować ukrycie niektórych elementów interfejsu użytkownika. Upewnij się, że interfejs użytkownika aplikacji prawidłowo obsługuje przewijanie i przesuwanie (za pomocą klawiatury, myszy lub trackpadu, dotyku i pióra), aby umożliwić użytkownikom dostęp do dowolnych elementów interfejsu użytkownika, które mogły zostać przeniesione z widocznego obszaru okna.

Styl wizualizacji

System Windows 11 jest oparty na zasadach projektowania systemu Windows 11: Bezwysiłkowy, Spokojny, Osobisty, Znajomy, Kompletny i Spójny. Uważamy, że środowiska zgodne z tymi zasadami zapewniają doskonałe środowiska użytkownika w systemie Windows.

Materiały: Akryl i Mica

Akryl i Mica to materiały wizualne , które nadają interaktywnym kontrolkom interfejsu użytkownika odrębny "przykryty" styl wizualny. Użyj Acryl, aby zastosować półprzezroczysty styl do przejściowych powierzchni, takich jak menu kontekstowe, okna podręczne i inne elementy, które można łatwo zamknąć. Użyj Mica, aby dodać subtelny adaptacyjny odcień do powierzchni interfejsu użytkownika o długiej żywotności, takich jak pasek tytułu.

Więcej informacji na temat materiałów Akryl i Mica można znaleźć w Rzeczy, które można zrobić, aby twoja aplikacja świetnie działała w systemie Windows 11.

Motywy ciemne i jasne

motywy ciemne i jasne umożliwiają użytkownikom dostosowanie aplikacji do swoich preferencji wizualnych. System Windows 11 aktualizuje odcienie kolorów, aby były bardziej miękkie na oczach, unikając czystych białych i czarnych, co sprawia, że kolory są znacznie bardziej urocze. Interfejs WinUI domyślnie obsługuje przełączanie między motywami ciemnymi i jasnymi (zobacz zasoby motywu XAML ). W przypadku aplikacji Win32 zobacz sekcję dotyczącą obsługi motywów ciemnych i jasnych w aplikacjach Win32. (Pasek tytułowy w aplikacjach Win32 nie jest automatycznie dostosowywany do ciemnego motywu. Pamiętaj, aby postępować zgodnie ze wskazówkami dotyczącymi paska tytułowego w artykule).

Odświeżone elementy interfejsu użytkownika

geometria systemu Windows 11 została spreparowana w celu obsługi nowoczesnych środowisk aplikacji. Stopniowo zaokrąglone rogi, zagnieżdżone elementy i spójne rynny łączą się w celu stworzenia miękkiego, spokojnego i zbliżalnego efektu, który podkreśla jedność celu i łatwość użytkowania.

Zmiany wizualne i behawioralne są wbudowane w WinUI 3. Użyj interfejsu WinUI 3, w którym możesz skorzystać z już wykonanej pracy. Jeśli nie możesz używać WinUI 3, rozważ naśladowanie stylów pokazanych w naszych zestawach narzędzi do projektowania i oraz Galerii WinUI .

Menu kontekstowe

Menu kontekstowe to menu skrótów, które użytkownik wywołuje za pomocą kliknięcia prawym przyciskiem myszy lub naciśnięcia & akcji blokady, aby wyświetlić menu poleceń istotnych dla kontekstu kontrolki, z którą użytkownik wchodzi w interakcję. Użytkownicy oczekują, że wygląd i zachowanie menu kontekstowych będą spójne w systemie Windows. Używaj menu kontekstowych udostępnianych przez platformę, jeśli jest to możliwe, aby zachować ich spójność z resztą systemu.

Ikonografia i typografia

System Windows 11 ma zaktualizowane ikony ("Segoe Fluent Icon"), ulepszoną obsługę animowanych ikoni nowej czcionki interfejsu użytkownika ("Zmienna interfejsu użytkownika Segoe"). Zalecamy używanie tych nowych ikon i czcionek, jeśli jest to możliwe, aby były spójne w systemie Windows 11. Nowa czcionka przynosi znacznie bardziej miękką geometrię i sprawia, że tekst jest znacznie bardziej czytelny.

Więcej informacji na temat ikonografii i typografii w systemie Windows można znaleźć w Rzeczy, które można zrobić, aby aplikacja okazała się świetna w systemie Windows 11.

Zachowanie i styl okna

Aplikacje działają w ramce dostarczonej przez system Windows, a użytkownicy oczekują, że wbudowany wygląd systemu Windows i zachowania będą spójne w oknach aplikacji. Rozważ obsługę funkcji wymienionych tutaj, aby upewnić się, że aplikacja wygląda i działa zgodnie z oczekiwaniami użytkowników w systemie Windows 11.

Układ przyciągania

Przyciąganie okien jest znacznie ulepszone w systemie Windows 11, a menu Układ przyciągania to nowa funkcja ułatwiając użytkownikom odnajdywanie i używanie możliwości przyciągania okien. Użyj menu Układ Snap, aby przetestować aplikację w różnych układach Snap i upewnić się, że aplikacja obsługuje różne rozmiary, takie jak 1/2, 1/3 i 1/4 ekranu.

Jeśli menu Układ przyciągania nie jest domyślnie wyświetlane dla aplikacji, zobacz Obsługa układów przyciągania dla aplikacji komputerowych w systemie Windows 11, aby dowiedzieć się, jak to włączyć.

Pasek tytułu i przyciski podpisów

Pasek tytułu i przyciski legendy (minimalizuj, maksymalizuj, zamykać) to sposób interakcji użytkowników z systemem Windows w celu zmiany rozmiaru, przenoszenia i zamykania okien aplikacji. Spójne środowisko ułatwi użytkownikom bezproblemowe korzystanie z aplikacji. Zobacz pasek tytułu aplikacji systemu Windows, aby dowiedzieć się więcej o projekcie paska tytułu i przycisku podpisu dla systemu Windows.

Interfejsy API zestawu SDK aplikacji systemu Windows umożliwiają integrowanie zawartości aplikacji z paskiem tytułu w aplikacjach WinUI 3, .NET, WinForms i WPF.

Zaokrąglone rogi

W większości przypadków okno twojej aplikacji będzie miało domyślnie zaokrąglone rogi w systemie Windows 11. Jeśli dostosowałeś okno aplikacji i nie masz zaokrąglonych narożników, zapoznaj się z Zastosowanie zaokrąglonych narożników w aplikacjach komputerowych dla systemu Windows 11, aby dowiedzieć się, co możesz zrobić. Należy również unikać dostosowywania obramowań okien i cieni, co może uniemożliwić systemowi zaokrąglanie narożników okien.

Punkty integracji powłoki systemowej

Integracja powłoki systemu Windows umożliwia użytkownikom korzystanie z aplikacji nawet wtedy, gdy nie działa na pierwszym planie ani nie jest widoczna na ekranie. Gdy aplikacja dobrze integruje się z systemem Windows, staje się częścią przepływu pracy użytkowników z innymi aplikacjami i pomaga w tworzeniu spójnego doświadczenia.

Wyskakujące powiadomienia

Powiadomienia typu toast to powiadomienia systemu Windows wyświetlane w dolnej części ekranu użytkownika i w Centrum powiadomień.

  • Powiadomienia powinny być spersonalizowane, możliwe do działania i przydatne dla użytkowników. Spróbuj dać swoim użytkownikom to, czego chcą, a nie to, co chcesz wiedzieć.
  • Powiadomienia nie powinny być hałaśliwe. Zbyt wiele przerw w działaniu aplikacji prowadzi do wyłączenia tego krytycznego kanału komunikacyjnego dla aplikacji.
  • Odpowiadanie na intencję użytkownika. Wybranie powiadomienia powinno spowodować uruchomienie aplikacji w kontekście powiadomienia. Jedynym wyjątkiem od tej wytycznej jest wybranie przez użytkownika przycisku w powiadomieniu dołączonym do zadania w tle, takiego jak szybka odpowiedź.
  • Zapewnij spójne doświadczenie Centrum Powiadomień. Zachowaj porządek w Centrum powiadomień, usuwając stare powiadomienia.

Aby uzyskać więcej informacji na temat wyskakujących powiadomień, zobacz podstawy projektowania powiadomień .

Podstawy wydajności &

Użytkownicy systemu Windows oczekują, że aplikacje systemu Windows będą mieć doskonałą wydajność i podstawy. Podczas projektowania i tworzenia aplikacji należy pamiętać o optymalizacji użycia pamięci, zużycia energii, czasu reakcji, niezawodności i wpływu na długoterminową trwałość. Przydzielanie czasu na testowanie i mierzenie podstaw i wydajności aplikacji zapewni użytkownikom najwyższej klasy środowisko pracy.

Przestrzeganie najlepszych rozwiązań w tej sekcji pomoże Ci spełnić oczekiwania klientów w ramach tych kryteriów.

Aby dowiedzieć się więcej, zapoznaj się z przeglądem wydajności i podstaw , który odpowie na pytania, takie jak "Co to jest wydajność aplikacji i dlaczego jest to ważne?" oraz "Jakie narzędzia mogę użyć do mierzenia wydajności aplikacji systemu Windows?". Znajdziesz tam również odnośniki do analiz przypadków, powiązanych blogów, społeczności wsparcia oraz informacji o tym, jak inżynieria wydajności łączy się ze zrównoważonym rozwojem, co zmniejsza wpływ aplikacji na naszą planetę.

System operacyjny/optymalizacja sprzętowa

Aplikacje systemu Windows można tworzyć, pakować i dostarczać na różne sposoby. Najlepsze rozwiązania w tej sekcji pomogą Ci zoptymalizować te aspekty aplikacji w różnych konfiguracjach sprzętowych.

Dołączanie aplikacji MSIX do Azure Virtual Desktop

Jeśli chcesz, aby aplikacja działała najlepiej w środowisku przedsiębiorstwa, dodaj obsługę dołączania aplikacji MSIX.

Funkcja dołączania aplikacji MSIX umożliwia dostarczanie aplikacji MSIX zarówno do maszyn fizycznych, jak i wirtualnych. Jest ona przeznaczona specjalnie dla usługi Azure Virtual Desktop (AVD), usługi wirtualizacji aplikacji i pulpitu działającej w chmurze. Użycie funkcji dołączania aplikacji MSIX z usługą AVD może pomóc w skróceniu czasu logowania użytkowników oraz zmniejszeniu kosztów infrastruktury dla Twojego przedsiębiorstwa.

Windows na ARM

System Windows może działać na urządzeniach arm. Komputery arm korzystają z rozszerzonego okresu eksploatacji baterii i zintegrowanej obsługi sieci danych mobilnych. Te komputery zapewniają również doskonałą zgodność aplikacji i umożliwiają uruchamianie istniejących x86 i aplikacji x64 niezmodyfikowanych.

Aby uzyskać najlepszą wydajność, należy umożliwić aplikacjom pełne wykorzystanie wydajnej energetycznie architektury procesora Arm przez utworzenie pełnej wersji arm lub optymalizację części bazy kodu, które byłyby najbardziej korzystne dla wydajności natywnej. Aby uzyskać więcej informacji na temat tych technik, zobacz Windows on Arm i Arm64EC dla aplikacji Windows 11 na Arm.

Powiadomienia push

powiadomienia push umożliwiają wysyłanie informacji z usługi w chmurze do aplikacji w sposób wydajny. Powiadomienia wypychane obejmują nieprzetworzone powiadomienia, powiadomienia na ikonach i powiadomienia typu toast wysyłane z usługi w chmurze.

  • Użyj powiadomień push, aby obudzić aplikację/klienta, zamiast zawsze ją uruchamiać, aby zoptymalizować wydajność na urządzeniu użytkownika.
  • Kanały powiadomień nie mają być używane do wysyłania anonsów.
  • Uwzględnianie nagłówków retry-after — chroni naszą usługę i zapewnia powodzenie dostarczania powiadomień.
  • Usuń wygasłe/odwołane kanały z systemu. usługa powiadomień systemu Windows (WNS) nie przetwarza żądań wygasłych/odwołanych kanałów.
  • Unikaj nagłych, dużych serii żądań do usługi WNS. Może to prowadzić do spowolnienia odpowiedzi.
  • Skorzystaj z nagłówka MS-CV. Pomoże to w kompleksowym śledzeniu i diagnostyce.
  • Mieć mechanizm tworzenia kopii zapasowych, gdy powiadomienia nie działają.
  • Użyj usługi Azure Notification Hubs (ANH). AnH zapewnia dostęp do funkcji zaangażowania, takich jak kierowanie odbiorców, planowanie powiadomień i wysyłanie powiadomień. Jeśli jesteś obecnie deweloperem tylko dla systemu Windows, użycie usługi ANH ułatwi przejście infrastruktury powiadomień na inne platformy w przyszłości.

Odnajdywanie aplikacji i zarządzanie nimi

Niezawodne środowiska instalacji, aktualizacji i odinstalowywania są ważnymi elementami spójnego, wysokiej jakości środowiska użytkownika. Poniższe najlepsze praktyki pomogą zapewnić, że aplikacja pozostawi dobre wrażenie, gdy jest odkrywana i zarządzana przez użytkowników:

Odnajdywanie aplikacji

  • Umieszczenie aplikacji na liście w sklepie Microsoft Store może sprawić, że aplikacja będzie bardziej łatwo dostępna dla użytkowników.
  • Jeśli hostujesz aplikację w wielu kanałach (na przykład w witrynie internetowej i w sklepie Microsoft Store), aplikacja powinna mieć spójny mechanizm tożsamości i aktualizacji aplikacji we wszystkich kanałach.
  • Rozpowszechniaj swoją aplikację za pośrednictwem sklepu Microsoft Store, aby była bardziej odnajdywalna dla użytkowników. Należy pamiętać, że aplikacje ze Sklepu są udostępniane użytkownikom za pośrednictwem Menedżera pakietów systemu Windows WinGet. Jeśli nie publikujesz w sklepie Microsoft Store, nadal możesz łatwo odnaleźć aplikację w usłudze WinGet za pośrednictwem repozytorium WinGet.

Instalacja i odinstalowywanie

  • Obsługa instalacji dla poszczególnych użytkowników. Umożliwi to użytkownikom łatwiejsze instalowanie i unikanie monitów kontroli dostępu użytkownika.
  • Upewnij się, że instalacja aplikacji jest wolna od błędów, przezroczysta i przemyślana w zakresie zarządzania plikami. Instalacja aplikacji nie powinna pozostawiać żadnych plików tymczasowych.
  • Unikaj wymagania uprawnień z podwyższonym poziomem uprawnień do instalowania i wymagania ponownego uruchomienia systemu operacyjnego, jeśli jest to możliwe.
  • Obsługa instalacji dyskretnej. Jest to ważne w przypadku możliwości zarządzania aplikacjami w środowiskach przedsiębiorstwa.
  • Upewnij się, że aplikacja znajduje się na liście Zainstalowane aplikacje —> w sekcji Aplikacje.
  • Rozważ użycie pliku MSIX, aby zapewnić użytkownikom bezproblemową instalację, aktualizację i dezinstalację. Plik MSIX automatycznie usuwa pliki binarne i dane aplikacji. Aby uzyskać informacje o tym, jak spakowane aplikacje obsługują pliki i wpisy rejestru, zobacz Zrozumienie działania pakietowych aplikacji desktopowych na Windows.
  • W przypadku aplikacji rozpakowanych upewnij się, że aplikację można łatwo odinstalować za pomocą listy Aplikacje —> Zainstalowane aplikacje w obszarze Ustawienia. Po odinstalowaniu aplikacji upewnij się, że wpisy menu Start, pliki, katalogi, wpisy rejestru i pliki tymczasowe również zostaną usunięte. Rozważ nadanie użytkownikom opcji zachowania danych podczas odinstalowywania aplikacji.
  • Upewnij się, że podczas odinstalowywania aplikacja usuwa wszystkie pliki binarne i dane aplikacji. Zawartość utworzona przez użytkownika powinna być przechowywana w lokalizacjach, takich jak Documents, które mogą być przechowywane przez użytkowników nawet po odinstalowaniu aplikacji.
  • Unikaj instalowania lub aktualizowania plików binarnych systemu, które mogą wymagać ponownego uruchomienia.
  • Zintegruj się z RestartManager, aby zapisać i przywrócić stan między aktualizacjami systemu operacyjnego.

Aktualizacje

  • Obsługa mechanizmu aktualizacji, który umożliwia ponowne uruchomienie aplikacji, gdy jest on wygodny dla użytkownika. Rozważ użycie interfejsów API ponownego uruchamiania z zestawu Windows App SDK do zarządzania zachowaniem aplikacji WinUI 3.
  • Upewnij się, że mechanizm aktualizacji pobiera tylko niezbędne zmienione składniki, które należy zaktualizować. Może to zminimalizować wymaganą przepustowość sieci.
  • Upewnij się, że zapewniasz sposób aktualizowania i naprawiania aplikacji. Rozważ użycie rozwiązania MSIX, które automatycznie obsługuje naprawę aktualizacji. Aby uzyskać więcej informacji, zobacz Automatyczne aktualizowanie i naprawianie aplikacji.
  • Rozważ aktualizacje oparte na powiadomieniach push lub sprawdzanie aktualizacji podczas uruchamiania aplikacji lub po ponownym uruchomieniu.

Dodatkowe zasoby

Dostępność

Dostępne aplikacje Windows wspierają bogate i inkluzywne środowiska dla jak największej liczby osób, w tym osób z niepełnosprawnościami (zarówno tymczasowymi, jak i trwałymi), osób z osobistymi preferencjami, określonymi stylami pracy lub ograniczeniami sytuacyjnymi (takimi jak wspólne przestrzenie robocze, jazda, gotowanie, odblask itp.).

W rzeczywistości Światowa Organizacja Zdrowia definiuje niepełnosprawność nie jako cechę osobistą, ale raczej jako niezgodną interakcję między osobą a światem fizycznym i cyfrowym wokół nich.

Ułatwienia dostępu są dobre zarówno dla osób, jak i dla firm

Ułatwienia dostępu to odpowiedzialność

Ponad 1 miliard osób na całym świecie doświadcza jakiejś formy niepełnosprawności. Jednak tylko 1 na 10 ma dostęp do technologii pomocniczej potrzebnej do pełnego uczestnictwa w naszych gospodarkach i społeczeństwach. Zazwyczaj stopa bezrobocia dla osób niepełnosprawnych jest dwa razy większa od osób bez niepełnosprawności. I niepełnosprawności — zarówno sytuacyjne, tymczasowe, jak i trwałe — mogą mieć wpływ na nas w dowolnym momencie.

Ułatwienia dostępu to okazja

Zgodnie z arkuszem danych Microsoft Accessibility Approach: organizacje inkluzywne, które stosują najlepsze rozwiązania w zakresie zatrudniania i wspierania osób niepełnosprawnych w miejscu pracy przewyższają wyniki swoich rówieśników i lepiej przyciągają i utrzymują najlepsze talenty. Millenialsi, którzy do 2020 r. będą mieć 75% światowej siły roboczej, zazwyczaj wybierają pracodawców, którzy odzwierciedlają swoje wartości. Różnorodność i integracja są na szczycie tej listy.

Dołączanie ułatwień dostępu

Włączenie ułatwień dostępu do aplikacji systemu Windows może zmaksymalizować zaangażowanie użytkowników, zwiększyć zadowolenie produktów i zachęcić do lojalności produktów. Proaktywne projektowanie i implementowanie dostępnych środowisk zwykle skutkuje zmniejszeniem kosztów programowania i konserwacji w dłuższej perspektywie.

Aby uzyskać szczegółowe wskazówki dotyczące tworzenia dostępnych aplikacji systemu Windows, zobacz Ułatwienia dostępu w systemach Windows 11 i Windows 10.

Testowanie ułatwień dostępu

Accessibility Insights to zaawansowany zestaw narzędzi dla deweloperów do testowania dostępności swoich aplikacji i usług. Oto kilka narzędzi do wykorzystania w testowaniu ułatwień dostępu:

  1. Zbadaj w Accessibility Insights dla Windows. Sprawdź drzewo ułatwień dostępu, aby znaleźć łatwe do przeprowadzenia zmiany, takie jak wskazówki w etykietach, nieprawidłowe role itp.
  2. Monitorowanie zdarzeń w Accessibility Insights dla systemu Windows · Ułatwienia dostępu. Aby uzyskać więcej informacji na temat monitorowania zdarzeń, zobacz Typy kontrolek wspierające automatyzację interfejsu użytkownika.
  3. Uruchom automatyczne kontrole Accessibility Insights w pull requestach lub w procesach CI/CD. Aby uzyskać więcej informacji, zobacz axe-pipelines-samples.
  4. Napraw wszystkie wykryte usterki— wszystkie te elementy mają bezpośredni wpływ na ułatwienia dostępu.

Bezpieczeństwo i prywatność

Niezabezpieczona aplikacja może być punktem wejścia, który umożliwia atakującemu wykonywanie złośliwych działań. Nawet jeśli twoja aplikacja nie ma usterek zabezpieczeń, osoby atakujące mogą użyć aplikacji do zainicjowania ataków za pośrednictwem wyłudzania informacji i innych form inżynierii społecznej, które naruszają granice zabezpieczeń i prywatności. Najlepsze rozwiązania w tej sekcji ułatwią ograniczenie ryzyka związanego z bezpieczeństwem i prywatnością użytkowników.

Wytyczne dotyczące zabezpieczeń

  • Postępuj zgodnie z cyklem rozwoju zabezpieczeń dla całego rozwoju.
    • Modelowanie zagrożeń może pomóc uniknąć błędów zabezpieczeń.
    • Korzystanie z bezpiecznych bibliotek, języków i narzędzi minimalizuje wady implementacji.
    • Wartości domyślne zabezpieczeń mogą zapobiegać problemom z zabezpieczeniami spowodowanym przez błąd użytkownika.
  • Nie wymagaj uprawnień administracyjnych, aby zainstalować aplikację.
    • Najlepiej, aby aplikacja obsługiwała zarówno instalacje administracyjne, jak i instalacje dla poszczególnych użytkowników.
    • Użycie pakietów MSIX jest jednym ze sposobów osiągnięcia tego celu.
  • Nie wymagaj uprawnień administracyjnych, aby uruchomić aplikację.
    • Jeśli istnieją pewne funkcje, które wymagają uprawnień administracyjnych, rozważyć oddzielenie ich do własnych procesów w celu zmniejszenia obszaru ataków.
  • Preferuj używanie języków z gwarantowanym bezpieczeństwem pamięci (takim jak C#, JavaScript lub Rust), szczególnie w przypadku ryzykownych ścieżek kodu (takich jak analizowanie niezaufanych danych).
  • Użyj wszystkich środków zaradczych zabezpieczeń udostępnianych przez kompilator i zestaw narzędzi (zobacz Funkcje zabezpieczeń w programie Microsoft Visual C++ dla języka Visual C++).
  • Zawsze używaj wybranych bibliotek standardowych języka lub platformy na potrzeby kryptografii i innego kodu z uwzględnieniem zabezpieczeń. Nie próbuj tworzyć własnych.
  • Podpisz cyfrowo wszystkie składniki aplikacji — nie tylko instalatora, ale także program odinstalowywania (jeśli go masz). Podpisz również wszystkie pliki EXE, DLL i inne pliki wykonywalne tworzące aplikację.
    • Podpisy cyfrowe umożliwiają użytkownikowi zweryfikowanie autentyczności aplikacji i zezwolenie administratorom przedsiębiorstwa na zabezpieczanie urządzeń przy użyciu Windows Defender Application Control.
    • Użycie pakietu MSIX jest jednym ze sposobów osiągnięcia tego celu.
  • Upewnij się, że cała komunikacja sieciowa odbywa się za pośrednictwem bezpiecznego transportu, takiego jak SSL.
  • Zapewnij zabezpieczenia lub inne środki zaradcze, które mogą pomóc chronić użytkowników przed przypadkowym wykonywaniem szkodliwych akcji, nawet w przypadku, gdy osoby atakujące wymuszą takie działania.
    • Po prostu "Czy na pewno chcesz zrobić X?" okna dialogowe Tak/Nie" zwykle nie są skuteczne, ponieważ użytkownicy zostali przyzwyczajeni, aby kliknąć przycisk "Tak".

Większość nowoczesnych aplikacji zbiera i używa dużej ilości danych — w tym danych osobowych — z różnych powodów. Telemetria, poprawa produktu i zarabianie są trzema typowymi przyczynami używania danych, ale zarówno użytkownicy, jak i organy regulacyjne stają się bardziej wrażliwe na wpływ tych praktyk na prywatność. Oczekują one przejrzystości i kontroli nad danymi zebranymi i używanymi przez aplikacje. Skorzystaj z poniższych wskazówek, aby spełnić wymagania dotyczące prywatności użytkowników.

Wytyczne dotyczące prywatności

  • Upewnij się, że aplikacja zapewnia dokładne zasady ochrony prywatności. Najlepiej zapewnić zarówno dokument podsumowujący napisany dla zwykłych odbiorców (użytkowników), jak i szczegółową politykę prawną (napisaną dla prawników).
  • Zapoznaj się z przepisami dotyczącymi prywatności na rynkach, na których aplikacja będzie dostępna, i upewnij się, że aplikacja spełnia lub przekracza wszelkie wymagania dotyczące ujawniania, praw użytkowania, żądań usunięcia itp.
  • Upewnij się, że zbierasz najmniejszą wymaganą ilość danych osobowych potrzebnych do zakończenia działania aplikacji.
    • Nie zbieraj danych "tylko w razie potrzeby" — powinna istnieć prawidłowa przyczyna zbierania wszystkich danych, np. w celu poprawy środowiska klienta lub ułatwienia zarabiania.
  • Zawsze uzyskaj zgodę użytkownika przed zebraniem i przechowywaniem danych osobowych oraz zapewnij użytkownikowi łatwy sposób na przywrócenie decyzji w przyszłości. Unikaj "ciemnych wzorców", takich jak sprawienie, że przycisk "Tak" jest większy lub bardziej widoczny niż przycisk "Nie" w oknie dialogowym zgody.
    • Zapoznaj się z obowiązującymi przepisami, aby określić, jakie konkretne ujawnienia i zgody są wymagane dla określonych rodzajów danych. Na przykład niektóre regiony mogą zezwalać użytkownikom na wyświetlanie, zmienianie lub usuwanie przechowywanych danych.
  • Jeśli musisz przesyłać dane za pośrednictwem sieci, zawsze używaj zabezpieczonych połączeń, np. za pośrednictwem protokołu TLS.
  • Unikaj przechowywania danych osobowych w scentralizowanej lokalizacji (np. w witrynie internetowej). Jeśli musisz przechowywać dane osobowe, zminimalizuj ilość przechowywanych danych, zapisz je tylko tak długo, jak tylko jest to konieczne, i upewnij się, że są bezpiecznie szyfrowane.
  • Sprawdź, czy wszystkie używane biblioteki lub zestawy SDK innych firm mają również dobre rozwiązania w zakresie ochrony prywatności. Należy zauważyć, że chodzi o , nie, i że nie jest to ograniczone tylko do zestawów SDK związanych z reklamami — każda biblioteka łącząca się z internetem może wpłynąć na prywatność użytkowników aplikacji.