Pre-requisite:
- Understanding of C/C++ programming languages.
- Your own laptop with one of the listed reference development environment installed. Please see the list at the bottom of this URL http://icu-project.org/userguide/ICUDesign.html.
- Successfully built the ICU 1.6 release with all the tests (intltest and cintltst) running on your laptop.
- Fully understand at least two of the ICU samples in $Work/icu/source/samples directory, e.g. udate and ucal.
- Downloaded, compiled and ran the workshop exercise modules from http://icu-project.org/docs/workshop_2000/material/ws12092000.
- Read the top-level sections of the ICU user's guide at http://icu-project.org/userguide/. (Reading the full user's guide is recommended.)
Your evaluation of our workshop (Use Netscape Navigator if it looks truncated in your browser)
|
| Day 1: Monday, September 11 |
| Registration |
| 9:00am - 9:15am |
| Welcome and Introduction |
| 9:15am - 9:30am |
| Helena Shih Chapman |
| ICU/Java Design and Architecture |
| 9:30 am - 11:00 am |
| Mark Davis |
Topics:
- Basic Unicode introduction followed by quick summary of ICU features.
- What are the basic architectures common to ICU and Java i18n support?
- How are the system resources localized?
- What is ICU's threading model?
- How does one extend the implementation to include his/her own i18n support?
- What is ICU's error-handling model?
- Relation between C and C++ APIs.
|
| Build/Installation Issues and Beyond |
| 11:15 am - 12:30 pm |
| Yves Arrouye and Steven Loomis |
Topics:
- What are the options to configure an ICU build?
- What resource files are necessary to integrate ICU into one's product?
- What problems one may run into while porting ICU to a new platform?
- How to migrate a product to use ICU?
- How does one add new support to ICU, converter, locale etc?
- How does one use the data-packaging tool to prepare the application data?
|
| 12:30pm - 1:30pm Lunch Break |
| ICU Low-level Utilities and Resource Management |
| UData Interface Exercise Module |
| ResourceBundle Exercise Module |
| 1:30pm - 2:45pm |
| Vladimir Weinstein |
Topics:
- What is the locale model in ICU?
- What is the string related interface in ICU and how does one use it?
- A quick summary of other low-level utility interface that provide overall support to ICU components.
- Quick summary of ResourceBundle support; what kind of data can be stored and retrieved natively.
- What's the system locale format? What's the future direction of this support.
- What else can one use ResourceBundle for?
|
| Character set conversion interface |
| 3:00pm-4:45pm |
| Markus_Scherer |
| Converter Exercise Module |
| SCSU Exercise Module |
Topics:
- Quick status summary of the current converter support.
- When does one use one API vs. the other? What are the tradeoffs?
- How does the converter handle the error condition?
- What is a converter callback function and how does one customize it?
- What is the Unicode compression scheme?
|
| Day 2: Tuesday, September 12 |
| Registration |
| 9:00am - 9:15am |
| Welcome and Introduction |
| 9:15am - 9:30am |
| Helena Shih Chapman |
| Date/Time/Number Formatting Support |
| DateFormat Exercise Module |
| MessageFormat Exercise Module |
| 9:30am - 10:30am |
| Alan Liu |
Topics:
- What is the date/time support in ICU?
- What is the time zone support in ICU?
- What kind of formatting and parsing support is available in ICU, i.e. NumberFormat, DateFormat and MessageFormat?
|
| Transformation Support |
| Exercise Module |
| 10:45am - 12:00pm |
| Alan Liu |
Topics:
- What is the Unicode normalization?
- What kind of case mapping support is available in ICU?
- What is Transliteration and how does one use a Transliterator on a document?
- How do I add my own Transliterator?
|
| 12:00pm - 1:00pm Lunch Break |
| Sorting and Searching |
| Exercise Module |
| 1:00pm - 2:30pm |
| Helena Shih Chapman |
Topics:
- What is language-sensitive collation and why should one care?
- How does one add his/her own collation support?
- When does one use the CollationKey and why?
- How is the versioning of collation results handled?
- How can one implement the searching interface based on what's available now?
|
| Text Analysis Support |
| 2:45pm - 3:45pm |
| Eric Mader |
Topics:
- How does one use BreakIterator to find the possible word/sentence/line breaks in a document?
- Why should one care about the rule-based interface and how does one use it?
|
| Develop a Sample Application with ICU |
| 4:00pm-5:00pm |
| Steven Loomis |
Topics:
- An in-depth look at LocaleExplorer.
|
|