| RTL Reference Glossary Tips/Tricks FREE App/VCL Best'O'Net Books Link Back |
Return to Programming Book Reviews.
Publisher: Apress Buy it Now!
ISBN: 1590590023
Internationalization and Localization Using Microsoft .NET
by Nick Symmonds
Format: Paperback, 384pp
CD: NO
A lot of good and experienced programmers never had to bother with localization problems. For all the newcomers to this topic and for those who dealt with it in VB6 or elsewhere and are moving to .NET, this book is something to pay attention to. It offers solid grounds and covers most important aspects in internationalization and localization philosophy, and not just that. Since localization techniques imply a - must know everything about resources - I have found much more about resource file handling and resource classes here than in some other vast books that try to cover every aspect of the .NET framework. Let's have a brief look at the chapters.
First two chapters introduce the necessity for localization with some neat stuff about possibly offending elements in various cultures, different date, time and number formatting and cultural differences in general. Chapter 3 may seem a bit unnecessary because it's all about VB6 resource files, the problems they caused and the ways they were solved. Showing us that, I think Nick wanted us to appreciate more the ".NET way" of handling things. Chapters 4 and 5 contain detailed description of System.Globalization, System.Resources and System.Threading namespaces, which contain most of the classes and methods required for localizing a .NET application.
Chapter 6 is my favorite. It describes quite a few DOS based external .NET tools, which are not often covered in other books. These tools provide an easy way of converting resource files from one type to another or embedding them into dlls and not to forget the visual WinRes.exe which is nice for separating the programmer's and localizer's part of application design. Now we come to the chapter 7 which is in my opinion just too big. It covers almost 100 pages (a quarter of the book) and includes complete VB.NET and C#.NET source code for a customized resource editor. Now, I understand the author's intention, because writing a program like that which uses a lot of earlier described classes represents a really good exercise for someone new to .NET and most people still are. However, I think most people would not spend their time copying this big chunk of code before localizing their applications. Beside, if someone wants a more user-friendly .NET resource editor, he/she might consider downloading some of the free resource editors found on the internet.
Last chapters are particulary interesting, where chapter 8 shows the actual code changes for localizing previous unlocalized resource editor example, chapter 9 delves into ASP.NET localization problems and chapter 10 clarifies resource file versioning and encourages us to understand how GAC (global assembly cache) works. The only thing I might add here is that, because .NET introduces so much power for writing web applications, I'd like a bit more info about ASP.NET localization, although that chapter has some very important facts about resource file locking.
Despite my doubts about the necessity of some chapters, I find this book very useful and focused to the topic. Although .NET framework provides a vast number of classes and often the same thing can be done in several different ways, one could find an own way to deal with localization and resources. But, if you are inexperienced, it's always easier and time saving to follow somebody's steps, meaning - if you haven't dealt with localization before, do it by the book.
by Zarko Gajic, your About Guide to Delphi Programming and Jasmin Muharemovic (SF Computers d.o.o. team)

