So far, I have learned about three different ways to say "should" in Japanese. I'm interested in knowing the differences among ほうがいい、べき and ことだ. What are some situations that each form would be better suited in? Isn't べき more formal and stronger?
お菓子を食べすぎないほうがいい。(I've noticed that ほうがいい is sometimes translated to "it's better to do")
お菓子を食べすぎないことです。
お菓子を食べすぎるべきではない。
All translate to "You shouldn't eat candy too much" but what is the nuance in each?