2011-03-13 59 views
35

我一直在閱讀很多關於Open Framework和Processing的內容,但是除了C++和Java之外,還有其他的區別。有人可以告訴我哪一個是爲了什麼?開放框架V.S處理

回答

64

你是對的,一個是C++,另一個是Java,這些差異適用於這些框架,所以取決於你的偏好/項目範圍來決定哪一個最適合你。

processing header

隨着處理

  • 你得到一個最小的IDE,但也可以easily use eclipse或其他Java IDE。
  • 你得到的內存管理(垃圾收集)
  • 你可以在網上發佈小程序(通過Java applet或「瘦身」的javascript使用Canvas 2D與processingjsp5js端口)或用於Linux/OSX/Windows桌面應用程序(通過Java運行)。請注意,比Processing 1.5.1更新的版本不再導出applet。這仍然可以通過命令行或使用eclipse完成。
  • 可以發佈到Android和(與第三方工具)使用iProcessing或更快P5Nitro和iPhone最近的Raspberry PI
  • 你必須從論壇的支持,不少books和在線「操場」像OpenProcessingSketchPatchhascanvasSketchPad

OpenFrameworks logo

隨着了openFrameworks

  • 你選擇你的IDE(的XCode在OSX,代碼::塊,VC++)
  • 您管理自己的內存(的malloc,指針和所有的喜悅)
  • 你可以發佈你的項目作爲本地應用程序(不需要運行時)
  • 您可以當前輕鬆在網上發佈,但是這可能在未來改變(見Arturo Castro's of-emscripten進度)
  • 您可以發佈到iPhone,爲OF 007Android和0.8.0用於ARMv6和ARMv7設備,作爲Raspberry PIPandaboard
  • 你必須從非常積極和有益的論壇支持,並且可以在一個booktwo

讀到它這些都是正確的,現在浮現在腦海中的東西,有ç應該更多。

就我個人而言,我發現在Processing中編寫真正基本的丟棄原型更容易。對於速度不是主要決定因素的情況,Processing可以做得很好,但在其他情況下,我會將Processing原型移植到openframeworks(這在大多數情況下很容易完成)。

一個例子是涉及音頻的應用,無論是分析還是合成。根據複雜性的不同,Java垃圾收集器會在您最不期待的時候進行掃描,並在需要響應時引起煩惱。

總之,兩者都很酷,但openframeworks更快。你通過自己管理內存支付的速度爲。另外,如果您需要在線部署,處理是那麼的選擇。此外,如果您對C++感興趣,您可能還想看看libcinderPolycode

HTH

+0

您也可以在Android設備上部署OF! – ben 2011-12-20 14:25:42

+0

謝謝!我已經相應地更新了答案。 – 2011-12-20 15:41:24

+0

就像這個問題的更新一樣,它看起來像是新版本的Processing(2.0a7),它不可能再發布小程序。這裏有更多的信息http://blog.openprocessing.org/?p=232 – JordanBelf 2012-09-22 18:08:17