Bagikan melalui


Pengembangan Aplikasi Windows - Praktik Terbaik

Praktik terbaik dalam dokumen ini akan membantu Anda membangun aplikasi Windows hebat yang menjangkau dan menyenangkan ~ 1,5 miliar pengguna PC yang beragam di seluruh dunia. Dokumen ini dibagi menjadi bagian berikut:

  1. Pengalaman pengguna: Panduan di bagian ini akan membantu Anda meningkatkan tampilan, nuansa, dan kegunaan aplikasi Anda.
  2. Performa dan dasar-dasar: Panduan di bagian ini akan membantu Anda meningkatkan performa aplikasi dan pemanfaatan sumber daya.
  3. Pengoptimalan sistem operasi / perangkat keras: Panduan di bagian ini akan membantu Anda mengoptimalkan pengemasan dan distribusi Anda untuk berbagai konfigurasi perangkat keras.
  4. Penemuan dan manajemen aplikasi: Panduan di bagian ini akan memudahkan pengguna untuk menemukan, menginstal, memperbarui, dan menghapus instalan aplikasi Anda.
  5. Aksesibilitas: Panduan di bagian ini akan membantu Anda membangun pengalaman yang dapat diakses dan inklusif.
  6. Keamanan dan privasi: Panduan di bagian ini akan membantu Anda mengurangi risiko keamanan dan memenuhi kebutuhan privasi pengguna Anda.

Pengalaman pengguna (UX)

Windows 11 menandai evolusi visual sistem operasi Windows yang meningkatkan tampilan, nuansa, dan kegunaan Windows. Studi kami menunjukkan bahwa pengguna memiliki harapan tinggi untuk aplikasi Windows:

  • Mereka mengharapkan aplikasi Windows berfungsi dengan berbagai input lengkap.
  • Mereka mengharapkan pola desain dan interaksi yang terlihat dan terasa asli pada perangkat saat ini dan di masa mendatang.
  • Mereka mengharapkan dukungan untuk alur kerja windowing modern dan titik integrasi shell.

Ketika aplikasi mematuhi gaya Windows dan perilaku Windows standar, pengguna tidak perlu mempelajari kembali pola interaksi. Ini membuatnya jauh lebih mudah bagi pengguna untuk menggunakan aplikasi Anda. Aplikasi yang terlihat hebat dapat menciptakan kesan pertama yang hebat, tetapi aplikasi yang juga mudah digunakan dan membantu pengguna mencapai tujuan mereka akan menciptakan kesan abadi yang hebat.

Windows 11 dibangun berdasarkan prinsip desain Windows 11. Mengikuti panduan ini saat Anda membangun aplikasi akan membantu Anda memenuhi harapan pelanggan Anda akan pengalaman aplikasi yang hebat. Saat berpikir untuk menggabungkan pola UI/UX aplikasi Windows terbaru dan yang direkomendasikan ke dalam aplikasi Windows Anda, kami sarankan Anda fokus pada 5 area ini:

  • Tata letak
  • Interaksi UI
  • Gaya visual
  • Perilaku jendela
  • Titik integrasi shell

WinUI 3 memberikan dukungan bawaan untuk banyak pengalaman dan gaya ini melalui kontrol umumnya. Jika Anda tidak dapat menggunakan WinUI 3, pertimbangkan untuk menimulasi gaya yang ditunjukkan dalam toolkit desain dan Galeri WinUI kami.

Tata letak

Aplikasi Windows berjalan pada berbagai konfigurasi yang sesuai dengan kebutuhan pengguna. Uji panel dan/atau halaman aplikasi Anda di berbagai dimensi, perangkat, ukuran jendela, pengaturan DPI, dan pengaturan skala. Aplikasi Anda harus berfungsi seperti yang diharapkan bahkan ketika mengubah ukuran menjadi dimensi kecil.

Kesadaran DPI

Aplikasi WinUI secara otomatis menskalakan untuk setiap tampilan yang mereka jalankan. Teknologi pemrograman Windows lainnya (Win32, WinForms, WPF, dll.) tidak secara otomatis menangani penskalakan DPI per monitor. Tanpa pekerjaan tambahan untuk mendukung penskalaan DPI per monitor untuk teknologi ini, aplikasi mungkin tampak buram atau berukuran salah. Lihat Pengembangan Aplikasi Desktop DPI Tinggi di Windows untuk informasi selengkapnya.

Tata letak responsif

Gunakan teknik desain responsif untuk mengoptimalkan halaman aplikasi Anda untuk ukuran jendela yang berbeda. Ikuti panduan untuk panning atau scrolling untuk memastikan bahwa pengguna dapat selalu mengakses konten Anda, tidak peduli seberapa kecil jendela aplikasi.

Interaksi UI

Pengguna Windows dapat memilih dari berbagai perangkat input untuk berinteraksi dengan aplikasi Anda, dan Windows memiliki pengalaman sistem tertentu yang biasa digunakan orang. Saat aplikasi Anda mematuhi pengalaman ini, pengguna Anda dapat menggunakan aplikasi Anda dengan andal. Saat aplikasi Anda tidak mengikuti konvensi ini, pengguna mungkin merasa bingung atau frustrasi.

Perintah on-object

Gunakan perintah on-object seperti menu konteks, perintah gesek, dan pintasan keyboard. Windows 11 meningkatkan perilaku menu konteks klik kanan, jadi jika aplikasi Anda membuat menu konteks, lihat panduan integrasi menu konteks terbaru. Kontrol teks WinUI secara otomatis mengekspos perintah potong/salin/tempel, tetapi kontrol lain mungkin memerlukan pekerjaan ekstra untuk mendukung perintah ini.

Interaksi teks

Setiap kali ada teks dalam aplikasi, pengguna mengharapkan bahwa mereka dapat memilih dan menyalinnya. Jika teks dapat diedit, mereka mengharapkan bahwa teks juga dapat dipotong dan ditempelkan. Dengan menyediakan pintasan yang konsisten kepada pengguna, Anda membiarkan mereka menyelesaikan tugas mereka dengan lebih efisien. Pastikan bahwa tindakan ini dapat dilakukan menggunakan keyboard, mouse atau trackpad, sentuhan, dan pena.

Pengalihan & Pengguliran

Tidak jarang antarmuka pengguna aplikasi sepenuhnya pas di dalam satu halaman yang tidak perlu menggulir. Bahkan jika hanya ada beberapa elemen UI, pengguna dapat dengan bebas mengubah ukuran Jendela aplikasi dan menyebabkan beberapa elemen UI disembunyikan. Pastikan bahwa UI aplikasi Anda mendukung pengguliran dan panning dengan benar (menggunakan keyboard, mouse atau trackpad, sentuhan, dan pena) untuk memungkinkan pengguna mengakses elemen UI apa pun yang mungkin telah dipindahkan dari area jendela yang terlihat.

Gaya visual

Windows 11 dibangun berdasarkan prinsip desain Windows 11: Mudah, Tenang, Pribadi, Akrab, dan Lengkap + Koheren. Kami percaya pengalaman yang mengikuti prinsip-prinsip ini menghadirkan pengalaman pengguna yang hebat di Windows.

Bahan: Akrilik dan Mica

Akrilik dan Mica adalah materi visual yang memberikan kontrol UI interaktif gaya visual "terakludasi" yang berbeda. Gunakan Acrylic untuk menerapkan gaya semi transparan ke permukaan sementara seperti menu konteks, flyout, dan elemen lain yang dapat dimatikan cahaya. Gunakan Mica untuk menambahkan warna adaptif yang halang ke permukaan UI berumur panjang seperti bilah judul.

Informasi selengkapnya tentang bahan Acrylic dan Mica dapat ditemukan di Hal-hal yang dapat Anda lakukan untuk membuat aplikasi Anda hebat di Windows 11.

Tema Gelap dan Terang

Tema Gelap dan Terang memberi pengguna cara untuk menyesuaikan aplikasi Anda dengan preferensi visual mereka. Windows 11 memperbarui nada warna menjadi lebih lembut pada mata dengan menghindari putih murni dan hitam, yang membuat warnanya jauh lebih menyenangkan. WinUI mendukung peralihan antara tema Gelap dan Terang secara default (lihat sumber daya tema XAML). Untuk aplikasi Win32, lihat Mendukung tema Gelap dan Terang di aplikasi Win32. (Bilah judul di aplikasi Win32 tidak secara otomatis beradaptasi dengan tema Gelap. Pastikan untuk mengikuti panduan bilah judul di artikel).

Elemen UI yang disegarkan

Geometri Windows 11 telah dibuat untuk mendukung pengalaman aplikasi modern. Sudut bulat progresif, elemen berlapis, dan selokan yang konsisten digabungkan untuk menciptakan efek yang lembut, tenang, dan mudah didekati yang menekankan kesatuan tujuan dan kemudahan penggunaan.

Perubahan visual dan perilaku dibangun pada WinUI 3. Gunakan WinUI 3 di mana Anda dapat memanfaatkan pekerjaan yang telah dilakukan. Jika Anda tidak dapat menggunakan WinUI 3, pertimbangkan untuk menimulasi gaya yang ditunjukkan dalam toolkit desain dan Galeri WinUI kami.

Menu Konteks

Menu konteks adalah menu pintasan yang dipanggil pengguna dengan klik kanan atau ketuk & tahan tindakan untuk mengungkapkan menu perintah yang relevan dengan konteks kontrol yang berinteraksi dengan pengguna. Pengguna mengharapkan tampilan dan perilaku menu konteks menjadi koheren di seluruh Windows. Gunakan menu konteks yang disediakan platform jika memungkinkan untuk membuatnya konsisten dengan sistem lainnya.

Ikonografi dan tipografi

Windows 11 telah memperbarui ikon ("Segoe Fluent Icons"), meningkatkan dukungan untuk ikon animasi, dan font UI baru ("Variabel UI Segoe"). Kami menyarankan agar Anda menggunakan ikon dan font baru ini jika memungkinkan untuk melekat pada Windows 11. Font baru membawa geometri yang jauh lebih lembut dan membuat teks jauh lebih mudah terbagi.

Informasi selengkapnya tentang ikonografi dan tipografi di Windows dapat ditemukan di Hal-hal yang dapat Anda lakukan untuk membuat aplikasi Anda hebat di Windows 11.

Perilaku dan gaya jendela

Aplikasi berjalan dalam bingkai yang disediakan oleh Windows, dan pengguna mengharapkan tampilan dan perilaku Windows bawaan konsisten di seluruh jendela aplikasi. Pertimbangkan untuk mendukung fitur yang tercantum di sini untuk memastikan bahwa aplikasi Anda terlihat dan berfungsi seperti yang diharapkan pengguna di Windows 11.

Tata Letak Rekam Jepret

Snapping jendela sangat ditingkatkan di Windows 11, dan menu Snap Layout adalah fitur baru untuk membantu pengguna menemukan dan menggunakan kekuatan snapping jendela. Gunakan menu Snap Layout untuk menguji aplikasi Anda di Snap Layout yang berbeda dan pastikan aplikasi Anda mendukung ukuran snap yang berbeda, seperti layar 1/2, 1/3, dan 1/4.

Jika menu Snap Layout tidak muncul untuk aplikasi Anda secara default, lihat Mendukung tata letak snap untuk aplikasi desktop di Windows 11 untuk beberapa langkah yang dapat Anda lakukan untuk mengaktifkannya.

Bilah judul dan tombol keterangan

Bilah judul dan tombol keterangan (meminimalkan, memaksimalkan, menutup) adalah cara pengguna berinteraksi dengan Windows untuk mengubah ukuran, memindahkan, dan menutup jendela aplikasi. Memiliki pengalaman yang konsisten akan membantu orang menggunakan aplikasi Anda dengan lancar. Lihat bilah judul aplikasi Windows untuk mempelajari tentang bilah judul dan desain tombol keterangan untuk Windows.

Anda dapat menggunakan API SDK Aplikasi Windows untuk mengintegrasikan konten aplikasi dengan bilah judul di aplikasi WinUI 3, .NET, WinForms, dan WPF.

Lengkung

Dalam kebanyakan kasus, jendela aplikasi Anda akan memiliki sudut bulat secara default di Windows 11. Jika Anda telah menyesuaikan jendela aplikasi dan tidak memiliki sudut bulat, lihat Menerapkan sudut bulat di aplikasi desktop untuk Windows 11 untuk beberapa hal yang dapat Anda lakukan. Anda juga harus menghindari penyesuaian batas dan bayangan jendela, yang dapat mencegah sistem membulatkan sudut jendela.

Titik integrasi shell

Integrasi shell Windows memungkinkan pengguna mendapatkan manfaat dari aplikasi Anda bahkan ketika tidak berjalan di latar depan atau bahkan terlihat di layar. Saat aplikasi Anda terintegrasi dengan baik dengan Windows, aplikasi tersebut menjadi bagian dari alur kerja pengguna dengan aplikasi lain dan membantu menciptakan pengalaman yang mulus.

Pemberitahuan toast

Pemberitahuan toast adalah pemberitahuan Windows yang muncul di bagian bawah layar pengguna dan di Pusat Pemberitahuan.

  • Pemberitahuan harus dipersonalisasi, dapat ditindak lanjuti, dan berguna bagi pengguna Anda. Cobalah untuk memberi pengguna Anda apa yang mereka inginkan, bukan apa yang Anda ingin mereka ketahui.
  • Pemberitahuan tidak boleh berisik. Terlalu banyak gangguan dari aplikasi Anda menyebabkan pengguna menonaktifkan saluran komunikasi penting ini untuk aplikasi Anda.
  • Menanggapi niat pengguna. Memilih pemberitahuan harus meluncurkan aplikasi Anda dalam konteks pemberitahuan. Satu-satunya pengecualian untuk pedoman ini adalah ketika pengguna memilih tombol pada pemberitahuan Anda yang dilampirkan ke tugas latar belakang, seperti balasan cepat.
  • Berikan pengalaman Pusat Pemberitahuan yang konsisten. Jaga agar Pusat Pemberitahuan tetap rapi dengan menghapus pemberitahuan lama.

Untuk informasi selengkapnya tentang pemberitahuan toast, lihat Dasar-dasar desain Pemberitahuan.

Performa & dasar

Pengguna Windows mengharapkan aplikasi Windows untuk menunjukkan performa dan dasar-dasar yang hebat. Saat Anda merancang dan membangun aplikasi, penting untuk diingat untuk mengoptimalkan penggunaan memori, konsumsi daya, responsivitas, keandalan, dan dampak pada keberlanjutan jangka panjang. Mengalokasikan waktu untuk menguji dan mengukur dasar dan performa aplikasi Anda akan memastikan bahwa pengguna Anda memiliki pengalaman kelas satu.

Mengikuti praktik terbaik di bagian ini akan membantu Anda memenuhi harapan pelanggan Anda di seluruh kriteria ini.

Untuk mempelajari lebih lanjut, lihat gambaran umum Performa dan dasar-dasar, yang akan mencakup pertanyaan seperti "Apa itu performa aplikasi dan mengapa penting?" atau "Alat apa yang dapat saya gunakan untuk mengukur performa aplikasi Windows?", serta menautkan ke studi kasus, blog terkait, komunitas dukungan, dan informasi tentang bagaimana rekayasa performa bersinggungan dengan keberlanjutan--mengurangi dampak yang akan ditimapi aplikasi Anda di planet kita.

Pengoptimalan sistem operasi/perangkat keras

Aplikasi Windows dapat dibangun, dimas, dan dikirimkan dengan berbagai cara. Praktik terbaik di bagian ini akan membantu Anda mengoptimalkan aspek aplikasi Anda ini di seluruh konfigurasi perangkat keras.

Lampiran aplikasi MSIX dan Azure Virtual Desktop

Jika Anda ingin aplikasi Anda berjalan paling baik di lingkungan perusahaan, tambahkan dukungan untuk lampiran aplikasi MSIX.

Lampiran aplikasi MSIX memungkinkan Anda mengirimkan aplikasi MSIX ke komputer fisik dan virtual. Ini dibuat khusus untuk Azure Virtual Desktop (AVD), layanan virtualisasi desktop dan aplikasi yang berjalan di cloud. Menggunakan lampiran aplikasi MSIX dengan AVD dapat membantu Anda meningkatkan waktu masuk bagi pengguna, dan dapat mengurangi biaya infrastruktur untuk perusahaan Anda.

Windows di Arm

Windows dapat berjalan pada perangkat Arm. PC Arm mendapat manfaat dari masa pakai baterai yang diperpanjang dan dukungan terintegrasi untuk jaringan data seluler. PC ini juga memberikan kompatibilitas aplikasi yang bagus dan memungkinkan Anda menjalankan aplikasi yang ada x86 dan x64 tidak dimodifikasi.

Untuk performa terbaik, Anda harus memungkinkan aplikasi untuk memanfaatkan sepenuhnya arsitektur prosesor Arm hemat energi dengan membangun versi Arm lengkap atau dengan mengoptimalkan bagian basis kode yang akan mendapat manfaat paling besar dari performa asli. Untuk informasi selengkapnya tentang teknik ini, lihat Windows di Arm dan Arm64EC untuk aplikasi Windows 11 di Arm.

Pemberitahuan push

Pemberitahuan push memungkinkan Anda mengirim informasi dari layanan awan ke aplikasi anda dengan cara yang dioptimalkan performanya. Pemberitahuan push mencakup pemberitahuan mentah, pemberitahuan lencana, dan pemberitahuan toast yang dikirim dari layanan awan Anda.

  • Gunakan pemberitahuan push untuk membangunkan aplikasi/klien daripada selalu membuatnya tetap berjalan untuk mengoptimalkan performa pada perangkat pengguna.
  • Saluran pemberitahuan tidak dimaksudkan untuk digunakan untuk mengirim iklan.
  • Hormati retry-after header - ini melindungi layanan kami dan memastikan keberhasilan pengiriman pemberitahuan.
  • Hapus saluran yang kedaluwarsa/dicabut dari sistem. Windows Notification Service (WNS) tidak memproses permintaan untuk saluran yang kedaluwarsa/dicabut.
  • Hindari permintaan yang tiba-tiba dan besar ke WNS. Ini dapat menyebabkan respons yang dibatasi.
  • Menggunakan MS-CV header. Ini akan membantu dengan keterlacakan dan diagnostik end-to-end.
  • Memiliki mekanisme pencadangan saat pemberitahuan tidak berfungsi.
  • Gunakan Azure Notification Hubs (ANH). ANH memberi Anda akses ke fitur keterlibatan seperti menargetkan audiens, menjadwalkan pemberitahuan, dan pemberitahuan siaran. Jika Anda adalah pengembang khusus Windows saat ini, menggunakan ANH akan memudahkan Anda untuk transisi infrastruktur pemberitahuan Anda ke platform lain di masa mendatang.

Penemuan dan manajemen aplikasi

Pengalaman penginstalan, pembaruan, dan penghapusan instalasi yang andal adalah bagian penting dari pengalaman pengguna yang konsisten dan berkualitas tinggi. Praktik terbaik berikut akan membantu memastikan bahwa aplikasi Anda meninggalkan kesan yang baik saat ditemukan dan dikelola oleh pengguna:

Penemuan aplikasi

  • Mencantumkan aplikasi Anda di Microsoft Store dapat membuat aplikasi Anda lebih mudah ditemukan bagi pengguna.
  • Jika Anda menghosting aplikasi di beberapa saluran (misalnya - di situs web dan di Microsoft Store), aplikasi Anda harus memiliki identitas aplikasi yang konsisten dan mekanisme pembaruan di semua saluran.
  • Distribusikan aplikasi Anda melalui Microsoft Store untuk membuatnya lebih mudah ditemukan bagi pengguna. Perhatikan bahwa aplikasi Store tersedia untuk pengguna melalui Pengelola Paket Windows WinGet. Jika Anda tidak menerbitkan ke Microsoft Store, Anda masih dapat membuat aplikasi Anda mudah ditemukan di WinGet melalui repositori WinGet.

Penginstalan dan penghapusan instalasi

  • Mendukung penginstalan per pengguna. Ini akan memungkinkan pengguna untuk menginstal dengan lebih mudah dan menghindari perintah UAC.
  • Pastikan penginstalan aplikasi Anda bebas kesalahan, transparan, dan bijaksana tentang manajemen filenya. Penginstalan aplikasi Anda tidak boleh meninggalkan file sementara.
  • Hindari memerlukan izin yang ditinggikan untuk menginstal dan mengharuskan reboot sistem operasi jika memungkinkan.
  • Mendukung penginstalan senyap. Ini penting untuk pengelolaan aplikasi di lingkungan perusahaan.
  • Pastikan aplikasi Anda tercantum dalam daftar Aplikasi -> Aplikasi terinstal.
  • Pertimbangkan untuk menggunakan MSIX untuk memastikan bahwa pengguna mengalami pengalaman penginstalan, pembaruan, dan penghapusan instalasi yang mulus. MSIX secara otomatis menghapus biner dan data aplikasi. Untuk informasi tentang cara aplikasi paket menangani file dan entri registri, lihat Memahami cara aplikasi desktop kemasan berjalan di Windows.
  • Untuk aplikasi yang tidak dipaketkan, pastikan aplikasi Anda dapat dengan mudah dihapus instalasinya melalui daftar Aplikasi -> Aplikasi terinstal di Pengaturan. Saat aplikasi Anda dihapus, pastikan bahwa menu Mulai entri, file, direktori, entri registri, dan file sementara juga dihapus. Pertimbangkan untuk memberi pengguna Anda opsi untuk mempertahankan data mereka saat mereka menghapus instalan aplikasi Anda.
  • Pastikan bahwa selama penghapusan instalasi aplikasi Anda akan menghapus semua biner dan data aplikasi. Konten yang dibuat pengguna harus disimpan di lokasi seperti Documents, yang kemudian dapat dipertahankan oleh pengguna bahkan setelah aplikasi dihapus instalasinya.
  • Hindari menginstal atau memperbarui biner sistem yang mungkin memerlukan boot ulang.
  • Integrasikan dengan RestartManager untuk menyimpan dan memulihkan status antara pembaruan OS.

Pembaruan

  • Mendukung mekanisme pembaruan yang memungkinkan aplikasi Anda untuk memulai ulang saat nyaman bagi pengguna. Pertimbangkan untuk menggunakan API SDK Aplikasi Windows Restart untuk mengelola perilaku aplikasi untuk aplikasi WinUI 3.
  • Pastikan mekanisme pembaruan Anda hanya mengunduh komponen penting yang diubah yang perlu diperbarui. Ini dapat meminimalkan bandwidth jaringan yang diperlukan.
  • Pastikan Anda menyediakan cara untuk memperbarui dan memperbaiki aplikasi Anda. Pertimbangkan MSIX, yang secara otomatis menangani perbaikan pembaruan. Untuk informasi selengkapnya, lihat Memperbarui dan memperbaiki aplikasi secara otomatis.
  • Pertimbangkan pembaruan berbasis pemberitahuan push atau memeriksa pembaruan yang tersedia saat memulai aplikasi atau saat menghidupkan ulang.

Sumber Daya Tambahan:

Aksesibilitas

Aplikasi Windows yang dapat diakses mendukung pengalaman yang kaya dan inklusif bagi sebanyak mungkin orang, termasuk penyandang disabilitas (sementara dan permanen), preferensi pribadi, gaya kerja tertentu, atau batasan situasional (seperti ruang kerja bersama, mengemudi, memasak, silir, dan sebagainya).

Bahkan, Organisasi Kesehatan Dunia mendefinisikan disabilitas bukan sebagai karakteristik pribadi, melainkan sebagai interaksi yang tidak cocok antara seseorang dan dunia fisik dan digital di sekitar mereka.

Aksesibilitas baik untuk orang maupun bisnis

Aksesibilitas adalah tanggung jawab

Lebih dari 1 miliar orang di seluruh dunia mengalami beberapa bentuk disabilitas. Namun, hanya 1 dari 10 yang memiliki akses ke teknologi bantuan yang diperlukan untuk sepenuhnya berpartisipasi dalam ekonomi dan masyarakat kita. Biasanya, tingkat pengangguran untuk penyandang disabilitas adalah dua kali lipat dari orang tanpa disabilitas. Dan disabilitas—baik situasi, sementara, atau permanen—dapat memengaruhi salah satu dari kita kapan saja.

Aksesibilitas adalah kesempatan

Menurut Microsoft Accessibility Approach Datasheet: Organisasi inklusif yang merangkul praktik terbaik untuk mempekerjakan dan mendukung penyandang disabilitas di tempat kerja mengungguli rekan-rekan mereka dan melakukan lebih baik dalam menarik dan menjaga talenta teratas. Generasi milenial, yang akan menjadi 75% dari tenaga kerja global pada tahun 2020, biasanya memilih pengusaha yang mencerminkan nilai-nilai mereka. Keragaman dan inklusi atas daftar itu.

Menggabungkan aksesibilitas

Menggabungkan aksesibilitas ke dalam aplikasi Windows Anda dapat memaksimalkan keterlibatan pengguna, meningkatkan kepuasan produk, dan mendorong loyalitas produk. Merancang dan menerapkan pengalaman yang dapat diakses secara proaktif biasanya menghasilkan pengurangan biaya pengembangan dan pemeliharaan selama jangka panjang.

Untuk panduan terperinci tentang membangun aplikasi Windows yang dapat diakses, lihat Aksesibilitas di Windows 11 dan Windows 10.

Pengujian aksesibilitas

Accessibility Insights adalah serangkaian alat canggih bagi pengembang untuk menguji aksesibilitas aplikasi dan layanan mereka. Berikut adalah beberapa alat untuk memanfaatkan dalam menguji aksesibilitas:

  1. Periksa di Accessibility Insights untuk Windows. Periksa pohon aksesibilitas untuk menemukan buah yang menggantung rendah seperti petunjuk dalam label, peran yang salah, dll.
  2. Pemantauan peristiwa di Accessibility Insights untuk Windows · Wawasan Aksesibilitas. Lihat Mendukung Jenis Kontrol Automasi UI untuk informasi selengkapnya tentang pemantauan peristiwa.
  3. Jalankan pemeriksaan otomatis Accessibility Insights di PR atau CI/CD Anda. Untuk informasi selengkapnya, lihat axe-pipelines-samples.
  4. Perbaiki semua bug yang Anda temukan, semuanya berdampak langsung pada aksesibilitas.

Keamanan dan privasi

Aplikasi yang tidak aman dapat menjadi titik masuk yang memungkinkan penyerang untuk melakukan aktivitas berbahaya. Bahkan jika aplikasi Anda tidak memiliki bug keamanan, penyerang dapat menggunakan aplikasi Anda untuk memulai serangan mereka melalui phishing dan bentuk rekayasa sosial lainnya yang melanggar batas keamanan dan privasi. Praktik terbaik di bagian ini akan membantu Anda mengurangi risiko yang terkait dengan keamanan dan privasi pengguna.

Pedoman keamanan

  • Ikuti Siklus Hidup Pengembangan Keamanan untuk semua pengembangan.
    • Pemodelan ancaman dapat membantu Anda menghindari kelemahan keamanan.
    • Menggunakan pustaka, bahasa, dan alat yang aman meminimalkan kelemahan implementasi.
    • Default aman dapat mencegah masalah keamanan yang disebabkan oleh kesalahan pengguna.
  • Jangan memerlukan hak administratif untuk menginstal aplikasi Anda.
    • Idealnya, aplikasi Anda harus mendukung penginstalan administratif dan penginstalan per pengguna.
    • Menggunakan kemasan MSIX adalah salah satu cara untuk mencapai hal ini.
  • Jangan memerlukan hak administratif untuk menjalankan aplikasi Anda.
    • Jika ada fitur tertentu yang membutuhkan hak istimewa administratif, pertimbangkan untuk memisahkannya ke dalam proses mereka sendiri untuk mengurangi permukaan serangan.
  • Lebih suka menggunakan bahasa dengan keamanan memori terjamin (seperti C#, JavaScript, atau Rust), terutama untuk jalur kode berisiko (seperti mengurai data yang tidak tepercaya).
  • Gunakan semua mitigasi keamanan yang disediakan oleh kompilator dan toolset Anda (lihat Fitur Keamanan Di Microsoft Visual C++ untuk Visual C++).
  • Selalu gunakan pustaka standar bahasa atau kerangka kerja pilihan Anda untuk kriptografi dan kode sensitif keamanan lainnya. Jangan mencoba membangun sendiri.
  • Tanda tangani semua komponen aplikasi Anda secara digital - bukan hanya alat penginstal, tetapi juga uninstaller (jika Anda memilikinya). Tanda tangani juga semua file EXE, DLL, dan file yang dapat dieksekusi lainnya yang membentuk aplikasi Anda.
    • Tanda tangan digital memungkinkan pengguna memverifikasi keaslian aplikasi Anda dan memungkinkan admin Perusahaan untuk mengamankan perangkat mereka menggunakan Kontrol Aplikasi Pertahanan Windows.
    • Menggunakan kemasan MSIX adalah salah satu cara untuk mencapai hal ini.
  • Pastikan semua komunikasi jaringan melalui transportasi yang aman, seperti SSL.
  • Sediakan pagar pembatas atau mitigasi lain yang dapat membantu melindungi pengguna dari tindakan berbahaya secara tidak sengaja, bahkan ketika dipaksa melakukannya oleh penyerang.
    • Sederhana "Apakah Anda yakin ingin melakukan X? Dialog Ya / Tidak" biasanya tidak efektif, karena pengguna telah dikondisikan untuk mengklik "Ya."

Sebagian besar aplikasi modern mengumpulkan dan menggunakan sejumlah besar data - termasuk data pribadi - karena berbagai alasan. Telemetri, peningkatan produk, dan monetisasi adalah tiga alasan umum untuk menggunakan data, tetapi pengguna dan regulator sama-sama menjadi lebih sensitif terhadap implikasi privasi dari praktik ini. Mereka mengharapkan transparansi dan kontrol atas data yang dikumpulkan dan digunakan oleh aplikasi. Gunakan tips berikut untuk membantu memenuhi kebutuhan privasi pengguna Anda.

Panduan privasi

  • Pastikan aplikasi Anda menyediakan Kebijakan Privasi yang akurat. Idealnya, berikan kedua dokumen ringkasan yang ditulis untuk audiens santai (pengguna Anda) selain kebijakan hukum bentuk panjang (ditulis untuk pengacara Anda).
  • Biasakan diri Anda dengan peraturan privasi di pasar tempat aplikasi Anda akan tersedia, dan pastikan aplikasi Anda memenuhi atau melebihi persyaratan apa pun untuk pengungkapan, hak penggunaan, permintaan penghapusan, dll.
  • Pastikan Anda mengumpulkan jumlah data pribadi paling sedikit yang diperlukan untuk menyelesaikan pengalaman aplikasi Anda.
    • Jangan mengumpulkan data "just in case" - harus ada alasan yang valid untuk mengumpulkan semua data, misalnya untuk meningkatkan pengalaman pelanggan atau untuk memfasilitasi monetisasi.
  • Selalu dapatkan persetujuan pengguna sebelum mengumpulkan dan menyimpan data pribadi dan memberi pengguna cara mudah untuk mengembalikan keputusan mereka di masa mendatang. Hindari "pola gelap" seperti membuat tombol "Ya" lebih besar atau lebih menonjol daripada tombol "Tidak" dalam dialog persetujuan.
    • Konsultasikan dengan peraturan yang berlaku untuk menentukan pengungkapan dan persetujuan spesifik apa yang diperlukan untuk jenis data tertentu. Misalnya, beberapa wilayah dapat memungkinkan pengguna untuk melihat, mengubah, atau menghapus data yang telah Anda simpan tentang wilayah tersebut.
  • Jika Anda harus mengirimkan data melalui jaringan, selalu gunakan koneksi aman, misalnya melalui TLS.
  • Hindari menyimpan data pribadi di lokasi terpusat (misalnya situs web). Jika Anda harus menyimpan data pribadi, meminimalkan jumlah data yang Anda simpan, simpan hanya selama yang benar-benar diperlukan, dan pastikan data tersebut dienkripsi dengan aman.
  • Verifikasi bahwa pustaka atau SDK pihak ketiga yang Anda gunakan juga memiliki praktik privasi yang baik. Perhatikan bahwa ini tidak terbatas hanya pada SDK iklan – pustaka apa pun yang terhubung ke internet dapat memengaruhi privasi pengguna aplikasi Anda.