Is "Categories and Sheaves" a good followup to Aluffi's "Algebra: Chapter 0"? I'm about to finish Aluffi's "algebra: chapter 0" and am a bit confused as to what should be my next move. I've been planning to read Tom Dieck's Algebraic Topology for some time now. I glimpsed at it several times and the style of writing very much matches my own taste. 
The thing is, although I have some grasp of categories from Aluffi, my grounding in category theory isn't as solid as I would like. And since the book by Dieck uses categories extensively I'd like to be a bit more fluent in the language before approaching it.
Towards this purpose (and since i'm interested in both homological and commutative algebra regardless) I had the idea of finding a book that starts with a formal treatment of the basics of category theory and moves to more advanced/specialized concepts in a moderate pace. That way i could start reading until i'm completely comfortable with the language, then pick up Dieck's "algebraic topology" and read the two books simultaneously. After surfing the web a bit i found the following title.


*

*Categories and Sheaves - Masaki Kashiwara and Pierre Schapira
It looks like the book for me. The problem is i didn't find any reviews about it so i'm not so sure. 
Can anyone recommend a book that could fill the roles i described?
Might be relevant that I prefer to read books cover to cover than to pick up different things from different sources.
My background (rough description): 


*

*Differential geometry (Guilliam and Pollack + in the middle of Jefferey lee's book) 

*Algebra (Aluffi + Herstein).

*Topology (Munkres)

*Analysis (baby+big Rudin, currently reading "Functional Analysis" by Rudin)

 A: 0) The excellent mathematician you evoke has as family name (=surname)  tom Dieck and as first name Tammo: tom is part of his surname and has nothing to do with Tom, the endearing  form of Thomas.    
1) Your idea of "finding a book that starts with a formal treatment of the basics of category theory and moves to more advanced/specialized concepts in a moderate pace" is exactly backward: you should learn some mathematical subject that attracts you first and learn the relevant categorical facts as the need makes itself felt.
 Else you will learn an unmotivated and dry formalism with no clue as to its usefulness.     
2) I can't recommend strongly enough to keep away from Kashiwara-Shapira's book.
It is an extremely technical and advanced monograph  written by and addressed to experts.
Kashiwara is a world renowned specialist in algebraic analysis, a domain created by his advisor Mikio Sato (who introduced hyperfunctions, a sort of alternative to Schwartz's distributions). 
Kashiwara has arguably been the dominant figure in $\mathcal D$-module theory before he turned to other subjects like the microlocal theory of sheaves which he created with Schapira.
In summary: be very aware that this monograph is addressed to quite advanced readers, as its inclusion in Springer's prestigious series Grundlehren der mathematischen Wissenschaften already shows.  
3) The book by tom Dieck is an excellent choice: it covers basic algebraic topology and has a very healthy attitude toward category theory.
Namely,  when the author needs a concept he introduces it, explains it, and uses it in the particular context where it arises.
A typical example is on page 60, where tom Dieck introduces the concept of $2$-category while studying the homotopy groupoid $\Pi(X,Y)$.
The only caveat is the length of the book, but since the book is well organized you don't have to read it from cover: just select the morsels you find most appetizing.
