I’d want a bit simpler interface in that case. I think non-programmer wouldn’t like using getters/setters via blueprints. You can keep variables protected and allow direct read/write from blueprints too, if that makes sense in the situation.
Also, if you use UStructs, you’ll get the same thing. Addable/editable elements, using built-in editor. No point in dynamically creating them with NewObject.
Also see:
https://wiki.unrealengine.com/Structs,_USTRUCTS(),_They’re_Awesome