JUCE 音同 Juice(果汁),不是字拼錯,其名來自設計者 Jules Storer,是 Jules Utility Class Extension 的縮寫。JUCE 在音樂類型的軟體界為人熟知,在那之外,較少人知道這套與 Qt 屬性相同的跨平台開發框架。支援 Windows, macOS, Linux, Android, iOS 等主流平台。
JUCE 第一版於 2004 年釋出,我在那之後十年才遇上她。此系列為 JUCE 入門,說明 JUCE 原理,可以做,以及做不到的事,並介紹幾個開發 GUI 應用程式常用的組件。
為簡化使用者行為採集,JUCE 提供了 juce::Analytics 以及相關介面,讓開發者依需求收集使用者行為,收集到的資料儲存於本機或者傳送到遠端伺服器。...
JUCE 提供 juce::var 類別,可用來儲存多種資料型別,如 int, int64, float, double, String, etc. JUCE...
JUCE 處理多國語言的機制,關鍵在 juce::LocalisedStrings 類別。 為支援多國語言,呈現在 UI 上的文字以 juce::transl...
遇見 JUCE 是個意外。原本對象是 Qt,但因客戶硬體限制作罷,開始尋找其他方案。2014 那年,C++ 跨平台開發框架我只認識 Qt、wxWidgets,前...
Projucer 支援另一類型的專案——Animated。與一般的 GUI 專案不同處之一是,MainComponent 不再繼承 Component,改繼承...
不諱言,C++ 初學者面對 JUCE 這個坑,以主流軟體開發趨勢(Web stack)來看,要找到跳下去的理由,很難。 JUCE 是為了「簡化」Audio/Mu...
談到擴充性,JUCE 以 Modules 為基礎,開發者可提供自制 Module,供其他人使用。如下圖,使用 Projucer 建立專案時,可以指定 User...
細看 JUCE 框架的設計,可以看到一些 Design Pattern 實例。本文列出幾個。 Singleton Singleton 帶來的副作用,理論上能不用...
這篇再談談 JUCE 的缺點。JUCE 論壇有一串討論,談到 LookAndFeel 的架構問題,JUCE 創作者也回應,並道出 LookAndFeel 因為一...