static lib

a unit of code linked at compile time,which does not change

Dynamic lib

a unit of code and/or assets linked at runtime that may change
only Apple is allowed to create dynamic libraries for iOS

Software Framework

a compiled set of code that accomplished a task,hence,you can actually have a static framework or a dynamic framework,which are typically just the compiled versions of the above.