Un Framework, es un marco de trabajo su funcion es simplificar el trabajo y la producion en cualquier lenguaje, y ofrecer mas estabilidad que programando a mano.
Generalmente se usan para simplificar tareas repetitivas, por ejemplo la conexion a la base de datos, que suelen ser 2 o 3 lineas, el hacer una consulta a la base de datos que suelen ser varias lineas, acaban simplificadas en 1 o 2. Las validaciones en los formularios también se simplifica bastante.
Hay varios frameworks, algunos mas complejos que otros y implementarlos en algunos como los de css es tan sencillo como poner una linea de codigo en tu proyecto, mientras que en otros cuando los descargas tienes que aprenderte su estructura de directorios y trabajar en base a un proyecto ya creado modificando y trabajando en unas determinadas partes.
Dreamweaver es un ide, como es sublimetext, o notepad++, es decir un entorno de trabajo donde programar, que yo sepa no existen frameworks exclusivamente para el, un framework en general lo puedes usar con cualquier ide, como dije antes simplemente tienes que saber implementarlo.
El funcionamiento del framework a pesar de basarse en un lenguaje de programacion base siempre es nuevo, es decir, es muy muy conveniente haber estudiado eses lenguaje de programacion base en profundidad antes de iniciarse en cualquier lenguaje de programacion.
El contenido del framework, en cuanto a nombres de funciones y demas es totalmente distinto al lenguaje base, pero generalmente se trabaja combinando framework y lenguaje base, por eso si no sabes como funciona el lenguaje base dificilmente podras trabajar con un framework al 100%
Que yo conozca existen varios tipos de frameworks, en java, php, css y creo que existen de html también.
En php, segun dicen existen los mas sencillos como puede ser codeigniter o cake framework y los mas completos y complejos como zend framework o symphony, estos dos ultimos muy usados en el entorno empresarial.
De Css yo he probado bootstrap y la verdad que es una maravilla, sobre todo si has utilizado css antes lo notas bastante, luego existen otros como es genesis que dicen que es muy innovador o flex.
Ventajas, Depende del framework pero mayormente simplifican el trabajo.
Desventajas: Su curva de aprendizaje y que es como aprender todo el lenguaje de nuevo