Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oop 当一种编程语言需要切换到另一种时,它就足够了?_Oop_Programming Languages - Fatal编程技术网

Oop 当一种编程语言需要切换到另一种时,它就足够了?

Oop 当一种编程语言需要切换到另一种时,它就足够了?,oop,programming-languages,Oop,Programming Languages,我很好奇,许多大型应用程序(如facebook等社交网站)都是在其平台上使用多种语言构建的 它们通常从AJAX浏览器支持开始,然后扩展到PHP脚本,然后转向强大的OOP技术,如Java或.NET,最后是一种原始语言,以提高关键操作(如C)的性能 我的问题是,我应该如何确定语言之间的层边缘。当PHP,当Java,当C等等。另一个问题是,为了简单和维护,这些语言是否应该以垂直的方式集成,或者当您决定在应用程序的模块上用Java编程,而在另一个模块上用本机C编程时,这些语言是否应该集成 什么是促使我转

我很好奇,许多大型应用程序(如facebook等社交网站)都是在其平台上使用多种语言构建的

它们通常从AJAX浏览器支持开始,然后扩展到PHP脚本,然后转向强大的OOP技术,如Java或.NET,最后是一种原始语言,以提高关键操作(如C)的性能

我的问题是,我应该如何确定语言之间的层边缘。当PHP,当Java,当C等等。另一个问题是,为了简单和维护,这些语言是否应该以垂直的方式集成,或者当您决定在应用程序的模块上用Java编程,而在另一个模块上用本机C编程时,这些语言是否应该集成

什么是促使我转向性能更好的语言的上下文变量?(例如,由于用户增加而导致的并发问题)

不要告诉我PHP与.NET和Java技术重叠。在一个起始点上是这样的,但是当网络过载时,你开始看到差异。我的意思是,如何在PHP和Java中以相同的性能实现多线程。很难回答我的疑问是因为没有太多关于这方面的阅读。您可能会找到一些关于PHP的好书,但很少有书讲述如何、何时以及为什么集成不同的语言

每种语言都是为不同的目的而创建的,Python具有强大的字符串操作能力,Perl在批处理脚本方面非常强大,PHP是非常可靠的应用程序web服务器,C是最流行的语言之母

最好的,
德米安。

我相信大多数团队只是使用他们最熟悉的东西

还有一些许可问题会影响决策


也就是说,如果您谈论的是相互比较并在同一级别上解决问题的技术(例如ASP.NET/JSF/JSP/PHP…)。但是,你不能把.NET和C++进行比较,它们是为了解决不同抽象层次上的不同问题。

< P>我相信大多数团队只使用他们最熟悉的东西。 还有一些许可问题会影响决策


也就是说,如果您谈论的是相互比较并在同一级别上解决问题的技术(例如ASP.NET/JSF/JSP/PHP…)。但不能用.NET和C++进行比较,它们是为了解决不同抽象层次上的不同问题。在规模的一端,

,每当你的分析和测量告诉你有一个无法用更好的算法、数据结构固定的瓶颈时,你就会移动到一种更高性能的语言。或其他优化


另一方面,只要管理层允许,您就可以使用更高级别的语言(即更抽象、更好的库)

在规模的一端,当您的评测和测量结果告诉您存在无法通过更好的算法、数据结构或其他优化来解决的瓶颈时,您就可以使用更高性能的语言


另一方面,只要管理层允许,您就可以使用更高级别的语言(即更抽象、更好的库)

我对任何编程语言的标准都是“它是帮助我完成工作还是只是妨碍了我?”如果是后者,那么是时候继续前进了。

我对任何编程语言的标准都是“它是帮助我完成工作还是妨碍了我?”如果是后者,然后是时候继续前进了。

从经济的角度来看,答案很简单:定期看看什么会更便宜。要么继续使用当前的技术,要么将封套拉长一点。或者换个新的。当你比较这两个备选方案时,已经完成的投资成本不再重要,因为你已经花了这些钱/精力。你只需要向前看:执照费用、教育费用等等

当然,这说起来容易做起来难,但只是坐下来和几个人一起思考,也许试着想出一些数字已经很有帮助了。我见过太多的项目继续使用技术,而这些技术已经不再适合这份工作了


此外,硬数字也不能说明全部情况。由于不熟悉的技术、失去地位的专家等原因,会出现阻力。

从经济角度来看,答案很简单:定期看看什么会更便宜。要么继续使用当前的技术,要么将封套拉长一点。或者换个新的。当你比较这两个备选方案时,已经完成的投资成本不再重要,因为你已经花了这些钱/精力。你只需要向前看:执照费用、教育费用等等

当然,这说起来容易做起来难,但只是坐下来和几个人一起思考,也许试着想出一些数字已经很有帮助了。我见过太多的项目继续使用技术,而这些技术已经不再适合这份工作了

此外,硬数字也不能说明全部情况。由于不熟悉的技术、失去地位的专家等原因,将出现阻力

  • 找出瓶颈
  • 解决瓶颈
  • 转到1
  • 我相信你可以想象,在第二步中,像“我们使用什么编程语言”和“我们把咖啡机放在哪里”这样的决策会起作用。这是基本规则

  • 找出瓶颈
  • 解决瓶颈
  • 转到1

  • 我相信你可以想象,在第二步中,像“我们使用什么编程语言”和“我们把咖啡机放在哪里”这样的决策会起作用。这是基本原则。

    您试图比较完全不同的技术。您试图比较完全不同的技术