Framework snaps

It is my understanding that framework snaps provide common functionality so that other snaps don’t have to package all the dependencies. To elaborate more – if I have snap A, B, C which depend on a library L, I can either make A, B, C include L or I can build a framework snap which consists only of L (or any other common dependency of A, B, C). Is this correct?