the company…

26

Upload: temple

Post on 11-Jan-2016

31 views

Category:

Documents


2 download

DESCRIPTION

The Company…. The Market Leader in Globalization Technology Pioneers in visual translation environments Solutions for major platforms & programming languages 24.9% owned by Corel Corporation Sales growing 60+% annually Currently 10,000+ customers worldwide Offices in Ireland and USA. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Company…
Page 2: The Company…

The Company….

The Market Leader in Globalization Technology– Pioneers in visual translation environments

– Solutions for major platforms & programming languages

– 24.9% owned by Corel Corporation

– Sales growing 60+% annually

– Currently 10,000+ customers worldwide

– Offices in Ireland and USA

Page 3: The Company…

Our Product… Alchemy CATALYST delivers :-

– SpeedSpeed : Faster delivery of products to market

– ConsistencyConsistency : Automate product revisions with glossary and translation memory tools

– ReducedReduced CostsCosts : Reduced QA/Engineering and Translation times using integrated environment

ConsistencySpeed ReducedCosts

Page 4: The Company…

Agenda What is Microsoft .NET ?

– NET Framework– NamesSpaces – System.Globalization– Launching a .NET Application

Develop a .NET Application– Multi-Lingual Application– Create code to switch UI language

Localizing a .NET Application– Creating different language Cultures– Re-integrating translations

QA

60 mins60 mins

Page 5: The Company…

What is Microsoft .NET ?

Microsoft's platform for building, deploying, operating and integrating Web services– Rich XML, standard protocols– Cross-language development– Common language runtime

• Common type system for all languages• Rich runtime environment

– Rich class libraries (.NET Framework)• Windows Forms for rich, Win32 applications• Web application platform ASP.NET

Multi-lingual support– Rich API for internationalization features

==

Page 6: The Company…

.NET Framework .NET Framework

– Globalization Namespaces– Culture-sensitive classes– Resource Model

ASP .NET– International Support– Localization Options

VisualStudio.NET– Unicode Development Environment– XML– Unified IDE

• VB, C#, C++

Page 7: The Company…

.NET Framework 100% Unicode internally

– Supports UTF-8 and UTF 16 encoding schemes

Consistent operations– Windows XP, Windows 2000, NT 4.0, 98,

95 etc. Supports all NLS (Locale Support)

– Collation Tables– String Comparisons– Language Processing (Casing etc.)– Currency, Date & Time etc.

Page 8: The Company…

Globalization Namespaces

Heart of the .NET Framework

System.Globalization– Core NLS services (Date/Time, Currency, String

management etc.) System.Resource

– Multi-Lingual Resource Services System.Text

– Core character conversion Services. (To/From Unicode)

Security

Threading

Text

ServiceProcess

I/O

Reflection

Net

Resources

Globalization

Collections

Diagnostics

Serialization

System

Page 9: The Company…

System.Globalization

Culture-aware String Services– String Management

• Casing, Comparison, Collation, • Segmentation, Enumeration etc.

– Date/Time Formatting• dd/mm/yy, yy/mm/dd

– Numeric Formatting• 12,000,000 and 12.000.000

– Calendar Support• Gregorian, non-gregorian

Our focus today :-– CultureInfo Class

LocalesLocales

Page 10: The Company…

System.Globalization.CultureInfo

Information about specific cultures (Locales)

– CurrentCulture• String casing and comparison• Collation• Numeric Formatting

Culture Names– RFC 1766 Standard

• <LanguageCode>-<RegionCode>

de-ATde-CHde-DE

Thread.CurrentThread.CurrentCulture = new CultureInfo(“es-ES");

CultureInfo

CurrentUICulture

CurrentCulture

Page 11: The Company…

System.Globalization.CultureInfo

Setting the UI of a .NET application

If not specified, .NET framework sets it for you !– GetUserDefaultUILanguage– (ie UI Language of the OS)

Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr");

CultureInfo

CurrentUICulture

CurrentCulture

System. System. GlobalizatiGlobalizationon

Page 12: The Company…

Launching .NET Applications

CultureInfo

CurrentUICulture

CurrentCulture

using System.Globalization;

Thread.CurrentThread.CurrentCulture = new CultureInfo(“fr-FRfr-FR");

Set UI Language to FrenchFrench, using Regional settings for FranceFrance !

ExampleExample 11

Locale

Language

Page 13: The Company…

Launching .NET Applications

CultureInfo

CurrentUICulture

CurrentCulture

using System.Globalization;

Thread.CurrentThread.CurrentCulture = new CultureInfo(“fr-CAfr-CA");

Set UI Language to FrenchFrench, using Regional settings for CanadaCanada !

ExampleExample 22

Locale

Language

Page 14: The Company…

Launching .NET Applications

CultureInfo

CurrentUICulture

CurrentCulture

using System.Globalization;

Thread.CurrentThread.CurrentCulture = new CultureInfo(“en-CAen-CA");

Set UI Language to EnglishEnglish, using Regional settings for CanadaCanada !

ExampleExample 33

Locale

Language

Page 15: The Company…

Launching .NET Applications

de-AT

de-DE

de-LU

de-CH

Root .NET Application

de

ja

Application DirectoryApplication Directory

CultureInfo

CurrentUICulture

CurrentCulture

RFC 1766 Standard

•Directory Structure

•Filename(s)

Page 16: The Company…

Launching .NET Applications

de-AT

de-DE

de-LU

de-CH

Root .NET Application

de

ja

Application DirectoryApplication Directory

CultureInfo

CurrentUICulture

CurrentCulture

Thread.CurrentThread.CurrentUICulture = new CultureInfo(“ja");

Page 17: The Company…

Launching .NET Applications

de-AT

de-DE

de-LU

de-CH

Root .NET Application

de

ja

Application DirectoryApplication Directory

CultureInfo

CurrentUICulture

CurrentCulture

Thread.CurrentThread.CurrentUICulture = new CultureInfo(“de");

Page 18: The Company…

Launching .NET Applications

de-AT

de-DE

de-LU

de-CH

Root .NET Application

de

ja

Application DirectoryApplication Directory

CultureInfo

CurrentUICulture

CurrentCulture

Thread.CurrentThread.CurrentCulture = new CultureInfo(“de-CH");

Page 19: The Company…

Launching .NET Applications

de-AT

de-DE

de-LU

de-CH

Root .NET Application

de

ja

ResourceResource FallbackFallback MechanismMechanism

CultureInfo

CurrentUICulture

CurrentCulture

Fallback mechanism used to locate appropriate resources

– Attempt to load de-CHde-CH resource assemble

– If not available, load dede assembly

– If not available, load defaultdefault application resources

– Else raise an exceptionexception! 11

22

33

Page 20: The Company…

Building .NET Applications

Resources are defined in XML documents

– RESX Files Filenames are significant

– Main1.resx– Main1.fr.resx– Main1.de.resx

Satellite Assemblies– For each language variant

.resx file.resx file

.resource file.resource file

.resource.dll file.resource.dll file

CompilationCompilation ProcessProcess

Page 21: The Company…

Building .NET Applications

Resources are defined in XML documents

– RESX Files Filenames are significant

– Main1.resx– Main1.fr.resx– Main1.de.resx

Satellite Assemblies– For each language variant

RESXRESX StructureStructure

Main1Main1..resxresx

Main1.fr.resxMain1.fr.resx

Page 22: The Company…

Building .NET Applications

Resources are defined in XML documents

– RESX Files Filenames are significant

– Main1.resx– Main1.fr.resx– Main1.de.resx

Satellite Assemblies– For each language variant

RESX StructureRESX Structure

Main1Main1..resxresx

Main1.fr.resxMain1.fr.resx

Main1.de.resxMain1.de.resx

Page 23: The Company…

Building .NET Applications

Resources are defined in XML documents

– RESX Files Filenames are significant

– Main1.resx– Main1.fr.resx– Main1.de.resx

Satellite Assemblies– For each language variant

Satellite AssembliesSatellite Assemblies

Main1.resxMain1.resx

Main1.fr.resxMain1.fr.resx

Main1.de.resxMain1.de.resx

Root .NET Application

de

fr

Application DirectoryApplication Directory

Page 24: The Company…

Building .NET Applications

Resources are defined in XML documents

– RESX Files Satellite Assemblies

– For each language variant Filenames are significant

– Main1.resx– Main1.fr.resx– Main1.de.resx

Our First .NET ApplicationOur First .NET Application

Simple .NET Application• En, Fr, De Languages• Menu, Dialog, Strings• Rich Text Editor

Page 25: The Company…

Translating .NET Applications

Satellite Assemblies Translation Process

– Insertion– Translation– Extraction

Application Rebuild– Microsoft C# compiler

Application Directory StructureApplication Directory Structure

LrcApp.Exe

de

en

fr

Localization Process – Localization Process – .resx.resx

Page 26: The Company…

Questions