4 ms·
> much as you call property setters or getters in OOP languages Good design is obvious and orthogonal[1]. If you write setters in an OOP language in such a way
by taffer 7y ago
> much as you call property setters or getters in OOP languages
Good design is obvious and orthogonal[1]. If you write setters in an OOP language in such a way that they do surprising things, i.e. not just setting a value, then I would call that bad design.
> which is good for loose coupling, modularity, etc.
What do you gain by using triggers in this case? All you get is mental overhead, because whenever you use DML you have to keep in mind that there might be a trigger hiding somewhere that does strange things.
If you call a procedure instead, you make it clear that you want to do more than just a simple update or insert.
> [...] it is possible for the method call to make use of concurrency and parallelism constructs [...] to do a unknown number of things in an unknown order
Why would I want this? I want my code simple[2], stupid and obvious, and not convoluted, clever and surprising[3].
[1] https://stackoverflow.com/a/1527430 https://stackoverflow.com/a/1527430
[2] https://www.youtube.com/watch?v=rI8tNMsozo0 https://www.youtube.com/watch?v=rI8tNMsozo0
[3] https://en.wikipedia.org/wiki/Principle_of_least_astonishment https://en.wikipedia.org/wiki/Principle_of_least_astonishmen...
- cryptonector 7y agoWhy do you think triggers must be astonishing (but OOP not so)??
- taffer 7y agosee https://news.ycombinator.com/item?id=21455027 https://news.ycombinator.com/item?id=21455027
- cryptonector 7y agoThere's nothing wrong with that if that's the logic you want!