Los desarrolladores de ZF3 creen que el framework debe ser un conjunto de componentes desacoplables con un mínimo de dependencias entre ellos. Así es como ZF3 está organizado.
La idea es que se puedan usar los componentes de ZF3 separadamente, incluso si estamos escribiendo nuestro sitio web con otro framework. Esto es incluso más fácil si tenemos en mente que cada componente de ZF3 es una paquete que se puede instalar usando Composer, así podemos fácilmente instalar cualquier componente de ZF3 junto con sus dependencias usando solo un comando.
Existen varios componentes «principales» en ZF3 que se usan explícitamente o implícitamente en casi cualquier aplicación web:
El componente Zend\EventManager
permite enviar eventos y registrar oyentes
que reaccionan a ellos.
Zend\ModuleManager
. En ZF3 cada aplicación está constituida por módulos
y este componente contiene las funcionalidades necesarias para cargarlos.
Zend\ServiceManager
. Este es el registro centralizado de todos los
servicios disponibles en la aplicación y permite acceder a los servicios
desde cualquier punto de la página web.
Zend\Http
provee una interfaz fácil para manejar mensajes HTTP
(Hyper-Text Transfer Protocol)
Zend\Mvc
. Provee el soporte para el patrón Modelo-Vista-Controlador y
para la separación de la lógica del negocio de la presentación.
Zend\View
. Provee un sistema de ayudantes, filtros de salida y escape
de variables usados en la capa de presentación.
Zend\Form
. Recolección, filtrado, validación e impresión de los datos del
formulario.
Zend\InputFilter
. Provee la capacidad de definir reglas para la validación
de formularios.
Zend\Filter
. Provee un conjunto de filtros de datos usados comúnmente,
como los cortadores de cadenas.
Zend\Validator
. Provee un conjunto de validadores usados comúnmente.