I use Piston and I must say it is an excellent method. Of course, I am not a master, but I have benefited from using it. There are certainly many examples, it is exhaustive, there are exercises... it's just that it has such richness that it could be used as a method for composers, which requires serious intention and motivation... aside from ability