Should: ほうがいい、べき、ことだ


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?




> ほうがいい

Is used to say that out of a number of possibilities the stated one is
preferable.

> お菓子を食べすぎないほうがいい  
>  It would be best if you didn't eat too many sweets.

* * *

> ことだ（です）

Is used to say that something is important.

> （虫歯が嫌だったら）お菓子を食べすぎないことです。  
> (If you don't like getting cavities then) not overdoing the sweets is a key.

* * *

> しないこと。

Is used to state rules in a stiff, harsh fashion: "One is not to..."

> （ダイエットの理念として）お菓子を食べすぎないこと。  
> (As related to a diet book or something) You are not to eat too many sweets.

* * *

> べき

Fundamentally states what the natural state of something is expected to be;
other derivative meanings come from that general idea. In this case it's
almost like stating a duty / obligation / rule.

> お菓子を食べすぎるべきではない。  
> A person shall not eat too many sweets / people are not supposed to / not
> meant to eat too many sweets.




> ほうがいい

Is used to say that out of a number of possibilities the stated one is
preferable.

> お菓子を食べすぎないほうがいい  
>  It would be best if you didn't eat too many sweets.

* * *

> ことだ（です）

Is used to say that something is important.

> （虫歯が嫌だったら）お菓子を食べすぎないことです。  
> (If you don't like getting cavities then) not overdoing the sweets is a key.

* * *

> しないこと。

Is used to state rules in a stiff, harsh fashion: "One is not to..."

> （ダイエットの理念として）お菓子を食べすぎないこと。  
> (As related to a diet book or something) You are not to eat too many sweets.

* * *

> べき

Fundamentally states what the natural state of something is expected to be;
other derivative meanings come from that general idea. In this case it's
almost like stating a duty / obligation / rule.

> お菓子を食べすぎるべきではない。  
> A person shall not eat too many sweets / people are not supposed to / not
> meant to eat too many sweets.

