代码之家  ›  专栏  ›  技术社区  ›  Will I Am

.NET/MONO交叉编译的最佳实践

  •  14
  • Will I Am  · 技术社区  · 16 年前

    接下来是处理Mono.XXX等名称空间的最佳方法。我应该用一堆“如果”吗?隔离每个平台程序集中的代码?

    任何关于建筑和设计的建议都将不胜感激!

    5 回复  |  直到 16 年前
        1
  •  7
  •   Reed Copsey    16 年前

    最大的问题在于Mono支持的API。使用 Visual Studio Integration 对Mono的支持在这方面会有很大帮助,因为您可以在所有平台上始终以Mono为目标。

    1) 互操作-您需要坚持使用P/Invoke。尝试将其隔离到单独的、特定于平台的组件中。这导致2:

    Managed Extensibility Framework

        2
  •  3
  •   Larry    15 年前

    你应该被问到 Prebuild :

        3
  •  2
  •   Miriam Miriam    16 年前
        4
  •  2
  •   Stewart    15 年前

    Mono项目提供了一个带有 portability guidelines

        5
  •  0
  •   pablo    15 年前

    我们使用MonoDevelop和visualstudio进行开发,但关键是要保留一个好的NAnt构建脚本,以便在一个快照上构建整个内容(joelspolsky的规则)。

    IMO的要点是非常清楚地说明软件必须是跨平台的,因此它不是关于“移植到linux/mono”,而是在所需的平台上实际开发每个迭代。

    一开始我们不得不避免使用一些功能(商业产品使用Mono/.NET已经5年了),我们仍然坚持使用.netremoting,但在我看来,这在多平台开发中并不是什么大问题。

    推荐文章