Сейчас практически везде используется ООП. Почему? Так, очевидно, проще.
Почему ООП используется не везде? На то есть пара причин: 1) ООП код работает медленнее. Поэтому там, где нужна высокая скорость работы, очень часто используют Си, например драйвера. 2) На совсем небольших проектах ООП не дает особого улучшения кода. Даже наоборот, возможно в процедурном стиле код будет выглядеть проще.
Я понимаю все это примерно так.