【问题标题】:Possible/Plausible to build a program with multiple languages? [closed]可能/合理地构建具有多种语言的程序? [关闭]
【发布时间】:2012-09-17 16:35:44
【问题描述】:

使用多种编程语言构建大型软件(例如 Altera Quartus II)是否合理(和/或实践)?意思是,软件的菜单是用 c++ 编码的,也许用户与之交互最多的核心功能界面是使用 java 构建的。这甚至可能吗?如果是这样,使用大型软件这样做的缺点/好处是什么?

【问题讨论】:

    标签: java c++ programming-languages large-data


    【解决方案1】:

    这是可能的并且已经实践过了,但是建议您的应用程序的核心是用 c++ 等中级编程语言构建以提高性能,而前端部分和任何实用程序和接口可以使用其他语言(如 javascript)构建核心。

    看看 Mozilla 浏览器,它是带有 javascript UI 的 c++ 核心示例。

    您的问题是关于它是否可能:答案是它。但是,我将尝试扩展一点,即使用 c++java 构建应用程序的挑战将是应用程序的两个部分之间的通信。你需要某种像 xml 这样的中间体来做到这一点。

    【讨论】:

      【解决方案2】:

      可以使用多种语言构建应用程序,例如,您可以用 C++ 编写前端,用 Java 编写后端,并使用JNI 进行通信。

      虽然这样的应用程序允许您利用每种语言的功能,但它需要开发人员具备多个领域的专业知识或拥有多个开发人员,每个开发人员都会增加交付解决方案的成本。

      此外,现在大多数编译器都倾向于在编译期间优化代码,因此开发人员不会尝试找到允许他们调整代码的各个方面的微优化,除非他们正在编写类似于 AutoCad 或 Photoshop 的东西,每个其中需要相对较多的系统资源。

      具有多种语言的解决方案的另一个问题是如何使它们一起通信(套接字、共享内存段、管道等),这将是另一层复杂性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-10
        • 2010-10-07
        • 2011-03-30
        • 1970-01-01
        • 2017-03-26
        相关资源
        最近更新 更多