Hi!
I have attended the webinar yesterday by @joreg (thanks again!) on OOP and gamma.
While some parts are now much clearer to me (like creating an object in gamma), I am still struggling to combine the things I read in tutorials on c#/oop with the examples in gamma. As I wasn’t able to formulate this question yesterday - it took some time, sorry! - I take the second best option and ask it here now :-)
In basically every tutorial on oop I stumble upon 4 principles of oop:
- Encapsulation
- Inheritance
- Polymorphism
- Abstraction
(source: OOP Concepts in C#: Code and How to Create a Class)
My question is: Are these principles used in gamma?
And in addition: Can they be used? Is it helpful to create patches in gamma using these principles? Is it a good idea to use these principles? Or are these principles mainly useful in textual programming languages?
For instance “Encapsulation”: Is this principle used in gamma, for example when building a particle system, like in the “Spray”-Example in the gamma help browser?
Is there maybe an example patch, where the idea of oop/encapsulation can be illustrated? In a lot of tutorials they use the image of cars as objects, being able to do different things like “start”, “stop” and “move” (for example in this video: https://www.youtube.com/watch?v=pTB0EiLXUC8 at 1:20min). Can a particle in a particle system be thought of as such an object? What would be the equivalent of “start”, “stop”, “move”?
Thanks in advance, any help is largely appreciated!