If I understood this correctly Naive Bayes uses "reasoning on the average".
I'm assuming this is good for fast rough estimates at best.
Naive Bayes is a poor classifier because it ignores conditional dependency: when having feature A raises the odds, having feature also B raises the odds, but having features A and B together lowers the odds.
This is an example of why feature engineering is very important, at times more so than the algorithm choice.
Learning to develop features that go together well with an algorithm is essential to practical machine learning.