Basically the answer will be: it depends.
The effects structure gives a big advantage in that you can set up the entire pipeline in one pass using Pass-> Apply, which can make things very easy, but can lead to pretty slow code if not used properly, which is probably to abandon it, but you can do it as bad or even worse using several shaders, directxtk is a pretty good example of this (this is normal only for developing a phone).
In most cases, the effect structure will have a few additional api calls, which you could avoid using separate shaders (which I agree if you bind the call to the call can be significant, but then you should look at optimizing this part with rejecting / installing the technique ) Using separate shaders, you must manage all the states / constant buffer yourself and, possibly, do it more efficiently if you know what you are doing.
What I really like about the fx framework is a very nice reflection and the use of semantics, which at the development stage can be really useful (for example, if you do float4x4 tP: PROJECTION, your engine can automatically attach the camera projection to the shader).
Also, layout validation during compilation between shader steps is really convenient for creating (fx framework).
One big advantage of individual shaders is that you can easily change only the steps you need, so you can save a decent amount of permutations without touching the rest of the pipeline.
source share