Чем плохи фасады?
Собственно, только отсутствием автодополнения из коробки.
Вообще ничего плохого в их использовании не вижу, однако сам всегда использую функцию app('class') или app()->make('class') - оно нагляднее отображает что я беру объект не откуда-то а из IOC, в то время как фасад можно спутать с обычным статическим классом. 
Хотя можно совсем извратится и писать Container::getInstance()->make('class', []); но не рекомендую, кто знает когда Тйэлор перепишет хелпер app =)
Кто скажет что статика это зло - смотрим исходники laravelif (! function_exists('app')) {
    /**
     * Get the available container instance.
     *
     * @param  string  $make
     * @param  array   $parameters
     * @return mixed|\Laravel\Lumen\Application
     */
    function app($make = null, $parameters = [])
    {
        if (is_null($make)) {
            return Container::getInstance();
        }

        return Container::getInstance()->make($make, $parameters);
    }
}