Musings on Architect, MVC, Nested Behaviors
Sannyasin Brahmanathaswami
brahma at hindu.org
Wed Dec 26 14:08:58 EST 2018
Happy Holidays Trevor
Thank you for the thorough response. The Levure architecture, and what we came up with SivaSiva app is very close. It would not really be to difficult to port it one day to Levure.
With that in mind, though you say "Levure doesn't have a strong opinion one way or the other. There is no code that is designed specifically around the Model-view-controller (MVC)
pattern." I want to start using you conventions. A few more questions...
1) "to separate each stack with UI objects into a separate stack
file and to use behaviors assigned to the card "
You keep these in a separate folder, 1 per stack and behavior(s)?
2) Are behaviors loaded in memory when a user loads the card and "unloaded" from RAM when the users closes card? That question goes to performance on libraries (open at start up) versus behaviors. I don't know if these texts script will impact performance, relative to a JPEG that you bring in, or a deep dbase query... Mark once said that scripts are not "a problem" but more about what they tell the CPU to do and what UI is doing to the pixels on screen - Images etc. But I keep wondering about that.
3) What do you think of nested behaviors, where the "uber parent" is a model and the child behavior is a view/UI behavior, controller VS just keeping that model in libraries that remain open all the time? Goes to #2 above.
My guess is that, if the code is being reused enough, it's just a text file (hardly adds to the RAM) , and debugging-- also "to figure out how all of the code works together when you revisit the project or try to add a developer" -- that using a library and keeping it in a library folder, probably keeps it simple/more easily understood.
Brahmanathaswami
Trevor DeVore via wrote:
One final thought I will add is this – whatever you do come up with,
consider if it will be understandable to you and other developers working
on the project later on. It is possible to get so wrapped up in separation
of code that it becomes very difficult to figure out how all of the code
works together when you revisit the project or try to add a developer.
Search for the right balance.
More information about the use-livecode
mailing list