String.isBlank() Returns true if the specified String is white space, empty (''), or null; otherwise, returns false. So, for both ways, this String.isBlank is gonna work in same way.
Only difference in both statements is, in first method, subject variable may assign to null value; and if you are using it without checking null value in further, you may get exception but in second one you will not get that.
String subject = email.Subject; //assume email.subject is null
//do something after if block like
string lowercaseSubject = subject.oLowerCase(); // it will throw null pointer exception error because subject is null...
So either follow the second approach or use first one with null pointer check as below:
string lowercaseSubject = subject!=null?subject.oLowerCase():'';
I hope now it's clear.
P.S: You can use String.isNotBlank(inputString) as well.