首页 文章

ICU的优点和缺点是什么? [关闭]

提问于
浏览
5

我的团队的任务是在我们的软件中实现Unicode,这超过了一百万行代码 . 我们在Windows,AIX或Solaris上使用Oracle或SQL Server数据库支持MFC客户端和服务器 . ICU看起来是一个非常有用的工具 . 使用ICU有哪些优缺点? ICU是否像广告中那样没有重大错误?

2 回答

  • 1

    数据点:我们的(是的,这是免责声明)用户和错误列表全部在我们的project site上 .

    IMBO(有偏见): Pros

    • 作为广告宣传,全面 .

    • 成熟:现在已经10年了,有着良好的稳定政策和非常积极的发展 .

    • 使用最新的Unicode CLDR BCP47其他标准 .

    • 基本上到处编译 . C / C / J并由/ implements python,perl,php,...

    • 开源,贡献者的多样性日益增加 .

    • 附带上述所有必需的数据(见下文,缺点),但可定制 . (可以添加自定义数据)

    Cons

    • 需要更好的文档(我们尝试 - 有人想帮忙吗?) .

    • 很多API-"it's too big #1"很难知道要使用哪一个,即使它能够满足您的需求 .

    • 用于许多类型的程序,从嵌入式设备,智能手机到主要桌面应用程序,再到数据库和操作系统以及企业应用程序:因此,可能有多种方法可以做某事 .

    • 附带以上所需的所有数据! "it's too big #2"(见上文,专业版),但可自定义 . (可以减小尺寸)

  • 6

    ICU很可怕:尽可能避免 .

    • 尽管它的年龄,它的基本内容被打破了,例如在这个问题中:Fixing regex to work around ICU/RegexKitLite bug

    • 时间处理因未指定时间而中断:在许多API中,您无法以可靠的方式区分DST与非DST时间 .

    • 这太棒了 .

    • 文档需要大量工作 . 较少使用的功能通常无法使用,因为无法确定使用它们的正确方法 . 我花了好几天试图按照解释的音译工作,最终放弃了 .

    • 它喜欢在UTF-16中工作,这是所有可能世界中最糟糕的 .

    • 支持对问题没有反应 .

    • 根据我的经验,直到你通过一个项目的大部分时间,你开始发现将占用90%的时间的阴险缺陷 .

    对于很多人来说,别无选择,所以你会坚持下去 .

相关问题