, , , , , "". , , "". - - , . , , , .
, . , , "" . , . .
, . , . , , , .
- SOLID , , , , . . , , .
, . , Ecto, , "Voilร ", . , Ecto , , , . , .
, , , , , , . , , - .., . , , . .
, , . , Mail , css "" - "# FF0000". , , , , "", .
It is not easy. In your particular case, I personally would not mix, for example, โcreateโ and โdeleteโ, but I would make sure that interacting with the database is all that he does. He does not know if the thing is valid, whether it has callbacks, etc. Pretty much the Repository pattern. Again, Ecto is a good example, or at least I find it useful.