2011-07-29 45 views
-3

我看了這個,我仍然無法找到任何這樣的答案。使用多種編程語言:有什麼意義?

我指的是Polyglot編程,它使用多種編程語言來創建應用程序(我認爲這是一個正確的定義)。

我只是想知道爲什麼你會一起使用像C + +和Java的東西?

我知道他們有他們的優點和缺點,但什麼是實際問題,以及這兩者如何結合在一起以便彼此合作?

+0

油漆和彩色筆都有什麼意義? – 2011-07-29 21:30:05

+0

聚星沒有優點或缺點。他們完成了**的樂趣**。 –

+0

混合語言的原因與混合平臺的原因相同。例如,OpenOffice可以通過C++或Java實現自動化。 ASP.NET通常是C#或VB.NET。可以有許多現有的源代碼,或公司內部的專業知識,或特定平臺的庫的可用性。您可能希望使用Linux來實現安全性,但是您會發現Windows僅存在一個庫,然後將其放入Web服務中。這往往是出於必要。 –

回答

4

Polyglots不是由多種語言組成的應用程序,它們是一個源代碼文本,它編譯爲有效的多種語言,並且它們幾乎沒有用處。

您可以針對各自的優勢使用多種語言。例如,我可能使用C#進行GUI工作和WPF,這是一個很好的實力,但我可能會使用C++編寫我的應用程序的核心,因爲這是它的強項。我可以用C++編寫圖形用戶界面,但這不是C++的強項,而且我可以用C#編寫我的核心算法 - 如果我可以對應用程序進行幾乎不可控的控制,它是如何編寫的以及它如何執行並讓它執行需要更長的時間。

將兩者結合使用意味着我可以使用用WPF和C#編寫的可擴展的GUI,,這是一個用C++編寫的功能強大的內核。

+1

和一個令人痛苦的互操作層;) –

+0

聚星是*非*「源代碼」 - 除了可以運行在多個*語言的源代碼的情況。請參閱[Polyglot(消歧義)](http://en.wikipedia.org/wiki/Polyglot)以供參考;-)無論如何,我懷疑C#(或VB.NET)/ JavaScript更常見「混合」(不是多色代碼)與豐富的網絡編程。 – 2011-07-29 21:32:29

相關問題