Core Data


I’ve been staring at iPlug/WDL for a few months trying to figure out how all of the components of my application fit together with existing frameworks… I’m still at square one and I am definitely considering moving this show to JUCE land. I would greatly appreciate a bit of guidance as to what JUCE handles and what works well with it.

For work, I rely on custom music software I made in a archaic prefunctional language called Jesusonic. The code has gotten buggy beyond belief and needs refactoring. I am constantly adding features as I compose scores so I’m looking to follow the whole unit testing route to cover my bases.

I need to build a Win x64 (x86 if need be) VST but my main target is iOS as I prefer working on my phone.

The application involves a database with at least 50,000 active objects that need to access an SQLite database that stores many millions of values. The fulls set of objects is read every few seconds and written periodically. Writing the values isn’t performance critical. Reading the objects in will happen in the audio block for the moment and the set is not known in advance.

I’ve been looking at many frameworks for ORM and also dependency injection. So far I’ve come up with very little for c++, the best being hiberlite for the ORM and dicpp for dependency injection; neither looks too promising. I’ve started considering using Cocotron to get the vst version working, coding it in objective C and using Core Data and Objective as both seem to be more mature and active than anything I’ve seen for c++.

Does JUCE handle any ORM or DI tasks? Will it work with Obj-C? If so Is that particularly difficult? Are there some obvious approaches that would be preferable to what I have been considering?

Though I spend a lot of time programming this software, my experience is limited because of the simplistic nature of the language I was using – I’m sure I’ve picked up some terrible habits. Because I rely on the software for work, and because the current incarnation is so wonky, I’m in a bit of a sink or swim situation. I have been on stack overflow for months following every lead but I haven’t anything that fits the bill. I’m open to any approach and would greatly appreciate any guidance.