```method_defined?``` will be ```true``` irrespective of whether ```:vendor``` is a class method or instance method. ```respond_to?``` need to be applied against particular object, i.e only class methods against a class object will be true and same for instance methods. Im not sure if theres any functional difference here, since you are invoking it  against an instance. But i think @sethvargo 's construct is more readable, it makes explicit that you are looking for ```vendor``` method from ```Berksfile```.