Sometimes characters in books can also fall flat, so writers must be vigilant. There should be depth to characters. They should demonstrate a vast array of emotions and reactions, and most of all, readers should be able to see their many layers. Just like real people, (hopefully) characters have to have complexity because that is, after all, human nature. Sometimes we don't even understand ourselves, and characters are pretty much the same way. That's all part of the human struggle, and it's necessary for growth; whether it's your own life or a character's development, it matters.
I certainly make great efforts to show the many sides of each of my characters. For example, as much as Jorge Hernandez (the protagonist in the Hernandez series) is generally a very tough, alpha male, who can be abrupt, direct, and occasionally cruel, he also has a soft side when with family and especially his wife. He has much inner turmoil stemming from his childhood. Jorge fears being a bad father and worries about the future. For this reason, when asked to describe his character, I find it a bit difficult because there's no simple answer. Then again, when describing most people that I know, I run into the same problem.
Characters should grow throughout a book or series. It is fun to see where they will go and what will happen. You know, kind of like real life. Well, sometimes.