You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The port was originally done from ICU4J, whose namespaces were meant to match the JDK. Looking at the structure of ICU4C, its structure is completely different.
Many (or most) of the classes defined in com.ibm.icu.text would likely be in System.Globalization if they were in .NET. For example, the Collator class is a close match for System.Globalization.CompareInfo, so it should be moved to a Globalization namespace as well.
CompareInfo is also a property of CultureInfo, so we should probably look at moving the collator functionality (or at least part of it) into the main library.
Other classes, such as BreakIterator also seem like good candidates for the Globalization namespace. More analysis is needed to determine if anything really belongs in the Text namespace.
Keeping in Sync with ICU
Ideally, we would keep the project structure exactly the same as ICU4J so it is easy to port the diff between tags over to ICU4N file by file. However, if we take the approach the ICU team is using, there are simply headers in each file indicating which file(s) it is a port of so syncing is made easier. More thought needs to be given as to best do this, as ICU4N would best not be a complete line-by-line port of ICU4J because of the gaps in functionality between Java and .NET.
The text was updated successfully, but these errors were encountered:
The port was originally done from ICU4J, whose namespaces were meant to match the JDK. Looking at the structure of ICU4C, its structure is completely different.
Many (or most) of the classes defined in
com.ibm.icu.text
would likely be inSystem.Globalization
if they were in .NET. For example, theCollator
class is a close match forSystem.Globalization.CompareInfo
, so it should be moved to aGlobalization
namespace as well.CompareInfo
is also a property ofCultureInfo
, so we should probably look at moving the collator functionality (or at least part of it) into the main library.Other classes, such as
BreakIterator
also seem like good candidates for theGlobalization
namespace. More analysis is needed to determine if anything really belongs in theText
namespace.Keeping in Sync with ICU
Ideally, we would keep the project structure exactly the same as ICU4J so it is easy to port the diff between tags over to ICU4N file by file. However, if we take the approach the ICU team is using, there are simply headers in each file indicating which file(s) it is a port of so syncing is made easier. More thought needs to be given as to best do this, as ICU4N would best not be a complete line-by-line port of ICU4J because of the gaps in functionality between Java and .NET.
The text was updated successfully, but these errors were encountered: