我的团队的任务是在我们的软件中实现Unicode,这超过了一百万行代码。我们在Windows,AIX或Solaris上使用Oracle或SQL Server数据库支持MFC客户端和服务器。 ICU看起来是一个非常有用的工具。使用ICU有哪些优缺点? ICU是否像宣传的那样工作而没有重大错误?
答案 0 :(得分:6)
数据点:我们的({em>是,这是免责声明)用户和错误列表全部在project site上。
IMBO(有偏见): 优点:
<强>缺点强>:
答案 1 :(得分:1)
ICU非常糟糕:尽可能避免。
尽管年龄很大,但其中的基本内容却被打破了,例如在这个问题中:Fixing regex to work around ICU/RegexKitLite bug
由于时间不详,时间处理被打破:在许多API中,您无法以可靠的方式区分DST与非DST时间。
这太棒了。
文档需要大量工作。较少使用的功能通常无法使用,因为无法确定使用它们的正确方法。我花了几天的时间试图让音译按照解释的方式工作,最终放弃了。
它喜欢在UTF-16中工作,这是世界上最糟糕的世界。
支持对问题没有反应。
根据我的经验,直到你通过一个项目的大部分时间,你才开始发现需要花费90%时间的潜在缺陷。
对于很多人来说,别无选择,所以你会坚持下去。