I think the only reason that shikamaru wears the vest is because he is to lazy to pick out a different outfit and just puts on the standard stuff. Lee really only wears it to look like Gai