Summary and Info
If you are writing software which must be internationalized, then there is no question that you need this book and you need Unicode. What ASCII is for the United States, Unicode is for the rest of the world. In this world (particularly this software world) of pontificating know-it-alls-who-don't, it is getting rarer and rarer to find complete compendiums of an entire domain of knowledge which can serve as the seminal reference for all successive work. This book is one of those rare seminal references which has in it the greatest quantity and greatest quality of wisdom and knowledge on the alphabets of the world for use in computer software.From the perspective of domestic software developers within the United States, Unicode is essentially 7-bit ASCII in a 16-bit unsigned integer. In the immensely popular C and C++ languages Unicode strings behave like ASCII strings:. Unicode 0/null terminates C/C++ strings, just like ASCII 0/null.. Unicode has a type in ANSI Standard C and ISO Standard C++ (and ARM-defined C++): wchar_t. For C/C++ programmers, char=ASCII wchar_t=Unicode.. Unicode has a plethora of standard string manipulation functions already standardized in ANSI Standard C and ISO Standard C++, usually substitute the str with wcs (e.g., strcpy=wcscpy, strcmp=wcscmp, strcat=wcscat) and substitute the char parameters with wchar_t parameters. Abracadabra, your software is well on its way to being able to have strings in any foreign language as well as English.. Unicode characters are all the same size (16-bit), just like ASCII (8-bit).. Unicode's first 127 values are essentially 7-bit ASCII values.. Unicode completely eliminates all that darned "code page" baloney.. Unicode completely solves all that "How do we stuff that odd foreign character into the printable characters on screen/paper?" problem.. Unicode is an ISO standard which came from a defacto United States computer industry standard. It is not ivory tower; it is in common use.. Unicode was developed with you the software engineer and programmer in mind from day one. Unicode was developed with C++'s/C's wchar_t in mind from day one. It all fits together with Unicode.. Unicode is used as a supported string technology (or the only string technology) in: Java, C++, C, Windows NT, Novell Netware, Solaris, and numerous other computing environments.. Unicode supports all alphabets in use in the world today, plus alphabet-less languages such as Chinese, as well as languages whose alphabets are still being formalized.. Because Unicode characters are all the same size, Unicode characters are random-access in that one can access any character (pick a card, any card) and know by looking at its value what that character is. Other multi-byte character sets must be parsed sequentially from the beginning of the string to assure that one has detected what mode some escape sequence has shifted that portion of the string into.. Unicode seeks to solve every defect of previous multi-byte character sets. Unicode is the fittest to survive. All other multi-byte character sets should be (and will be) abandoned.. Unicode = exportable software world wide in the global economy. ASCII = limiting your market to the English-speaking minority of the world.. Unicode = supporting the information systems of all of the foreign branch offices of your company. ASCII = crippling your information system so that it supports nothing more than the English-only offices.. ASCII = string equivalent of the Year 2000 Problem. Unicode = the fix to language-crippled software.(And we won't even discuss the obvious and total superiority of Unicode over EBCDIC!)In short Unicode is good for the software industry. This book is the official reference for Unicode from the inventor of Unicode: The Unicode Consortium.The views contained within this feedback is in no way associated with my employer nor any other organization.
More About the Author
The Unicode Consortium (Unicode Inc.) is a 501(c)(3) non-profit organization that coordinates the development of the Unicode standard.