1 / 21

Unicode and Visual Basic: A Case Study

Michael S. Kaplan Software Design Engineer Trigeminal Software, Inc. http://www.trigeminal.com. Unicode and Visual Basic: A Case Study. http://www.i18nWithVB.com/. The purpose of Visual Basic. Making Windows development easier Promote the Windows platform through ISVs who use it

ivan
Download Presentation

Unicode and Visual Basic: A Case Study

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Michael S. Kaplan Software Design Engineer Trigeminal Software, Inc.http://www.trigeminal.com Unicode and Visual Basic: A Case Study http://www.i18nWithVB.com/ Unicode and Visual Basic, IUC 18 (Hong Kong)

  2. The purpose of Visual Basic • Making Windows development easier • Promote the Windows platform through ISVs who use it • The "apple in Bill's eye" Unicode and Visual Basic, IUC 18 (Hong Kong)

  3. International support in the early versions • Very limited! • Multiple versions of the product codebase • Bugs found in one language version often not fixed elsewhere • Certainly NO Unicode support Unicode and Visual Basic, IUC 18 (Hong Kong)

  4. VB 4.0 - a time for choices Unicode and Visual Basic, IUC 18 (Hong Kong)

  5. Keep VB in 16 bit, and take advantage of the support for Win16 applications • Easy for VB to do • Useless for the Win32 platform itself • No international support at all Unicode and Visual Basic, IUC 18 (Hong Kong)

  6. Move VB to Win32 entirely, leveraging the emerging NT platform's full support of Unicode through its "W" APIs. • Great international solution • Poor solution for Windows 95 Unicode and Visual Basic, IUC 18 (Hong Kong)

  7. Move VB to Win32 but still with a code page model rather than a Unicode one, using the "A" APIs. • Easiest to do • Less multilingual support Unicode and Visual Basic, IUC 18 (Hong Kong)

  8. A hybrid technique ("A" APIs on Win9x, "W" APIs on NT) • Most complicated to do • Best international support • Good leveraging of the best features of each platform Unicode and Visual Basic, IUC 18 (Hong Kong)

  9. What the VB team actually did • Using COM • Porting the original VB • Working with the volume platform (Windows 95) Unicode and Visual Basic, IUC 18 (Hong Kong)

  10. Where COM fits in • Benfits to VB by using COM • Benefits to COM by VB being a client Unicode and Visual Basic, IUC 18 (Hong Kong)

  11. The birth of "UniMess" • An attempt to keep the conversion from VB3 to VB4 simple • From simplicity comes confusion Unicode and Visual Basic, IUC 18 (Hong Kong)

  12. The cousin of UniMess:Using LCIDs for code pages • COM's biggest drawback • Once again, simplicity causes problems Unicode and Visual Basic, IUC 18 (Hong Kong)

  13. Beyond UniMess • Intrinsic function woes • Source file encoding compatibility • Trouble with the Ruby forms package • Difficulties with API calls • Problems with file i/o Unicode and Visual Basic, IUC 18 (Hong Kong)

  14. The verdict for VB4? Unicode and Visual Basic, IUC 18 (Hong Kong)

  15. Changes in VB5 • Minor functionality enhancements • No major changes for Unicode support • Some work with the StrConv function Unicode and Visual Basic, IUC 18 (Hong Kong)

  16. Changes in VB6 • More work with StrConv • A lot of VB-specific code moved to COM • A lot of other VB-specific functionality now using existing COM methods Unicode and Visual Basic, IUC 18 (Hong Kong)

  17. And then came VB.NET • System.Text • System.Globalization • System.Resources • The [unicode] Visual Studio IDE Unicode and Visual Basic, IUC 18 (Hong Kong)

  18. Lessons learned • Was VB4 a good Unicode integration? • Were VB5 and VB6 good integrations? • What about VB.NET? Unicode and Visual Basic, IUC 18 (Hong Kong)

  19. Summary of lessons learned • Backwards compatibility is crucial • Conversion between Unicode and other encodings is crucial • New data types need new constructs • Understand why you are supporting Unicode (the primary reasons for that support) • Know what supplementary benefits you will gain from Unicode Unicode and Visual Basic, IUC 18 (Hong Kong)

  20. Questions? Unicode and Visual Basic, IUC 18 (Hong Kong)

  21. Unicode and Visual Basic:A Case Study Unicode and Visual Basic, IUC 18 (Hong Kong)

More Related