Multilingual App Toolkit Standards and multilingual software - - PowerPoint PPT Presentation

multilingual app toolkit
SMART_READER_LITE
LIVE PREVIEW

Multilingual App Toolkit Standards and multilingual software - - PowerPoint PPT Presentation

2015-04-03 Multilingual App Toolkit Standards and multilingual software development 29, April 2015 Jan Anders Nelson Microsoft Corporation OSGS Overview Multilingual App Toolkit Workflow Enable MAT on


slide-1
SLIDE 1

OSGS

2015-04-03

Multilingual App Toolkit

Standards and multilingual software development 29, April 2015 Jan Anders Nelson Microsoft Corporation

slide-2
SLIDE 2

Overview

slide-3
SLIDE 3

Multilingual App Toolkit Workflow

Enable ‘MAT’ on project Add translation languages Generate Translations Run & Test

slide-4
SLIDE 4

Demo

slide-5
SLIDE 5
slide-6
SLIDE 6

http://aka.ms/matinstallv4 Download v4.0 http://aka.ms/matblog Announcements http://aka.ms/matvoice User voice site multilingual@Microsoft.com Email for the MAT team.

Multilingual App Toolkit Resources

slide-7
SLIDE 7

Thank you!

7

slide-8
SLIDE 8

Use Windows.Globalization namespace

  • Windows.Globalization.NumberFormatting
  • DecimalFormatter
  • PercentFormatter
  • CurrencyFormatter
  • PermilleFormatter
  • Windows.Globalization.DateTimeFormatting
  • DateTimeFormatter
  • Windows.Globalization
  • Calendar

Globalization - Best practices

slide-9
SLIDE 9
  • Handcrafted formatting
  • String.Format(“{0}/{1}/{2}”, Month, Day, Year)
  • String.Format("${0:0.00}", 100.00);
  • Ignoring user’s language preferences
  • PrimaryLanguageOverride is permanent – use with care.
  • Creating specialized calendar UI controls

Globalization - Avoid

slide-10
SLIDE 10
  • Build-in localization into your app
  • It always harder to retro-fix globalization
  • Use resource files for all localizable strings
  • However, hard-code strings that should not be localized
  • Translations may require 40% more space
  • Utilize resource binding
  • Store: x:Uid for XAML, data-win-res for HTML
  • ResourceLoader.GetString(“MyResourceID”)
  • Use resource qualifiers for culture specific images
  • Avoid embedded text in images

Localization – Best practices

slide-11
SLIDE 11
  • Develop using Pseudo to find issues early
  • Pseudo is not shown by default, add it by searching for language “qps-PLOC”
  • Designate a primary world-ready project contact
  • Ideally this is a development lead with globalization and localization knowledge
  • Use a subset of languages during development
  • Ideally this will included Arabic, Asian, and Latin based languages
  • Not every developer needs to run MAT all the

time

  • A single person can manage and check-in initial language for the team
  • Include professional translation in overall

workflow

MAT – Best practices

slide-12
SLIDE 12