Generador de interfaces - Interface Builder

Constructor de interfaces
InterfaceBuilder.png
Desarrollador (es) Apple Inc.
Versión inicial 1988 ; Hace 33 años  ( 1988 )
Lanzamiento estable
3.2.6 / Publicado el 15 de marzo de 2011 ; Hace 10 años 4.0 / Publicado el 9 de marzo de 2011 ; Hace 10 años  ( 15-03-2011 )
 ( 2011-03-09 )
Sistema operativo Mac OS
Escribe desarrollo de software
Licencia Propietario , distribuido con la suite Xcode .
Sitio web desarrollador .apple .com

Interface Builder es una aplicación de desarrollo de software para el sistema operativo macOS de Apple . Es parte de Xcode (anteriormente Project Builder), el conjunto de herramientas para desarrolladores de Apple Developer . Interface Builder permite cacao y de carbono a los desarrolladores crear interfaces para aplicaciones que utilizan una interfaz gráfica de usuario . La interfaz resultante se almacena como un archivo .nib , abreviatura de NeXT Interface Builder, o más recientemente, como un archivo .xib basado en XML .

Interface Builder desciende del software de desarrollo NeXTSTEP del mismo nombre. También se utiliza una versión de Interface Builder en el desarrollo del software OpenStep , y existe una herramienta muy similar llamada Gorm para GNUstep . El 27 de marzo de 2008, se lanzó una versión para iPhone especializada de Interface Builder que permite la construcción de interfaces para aplicaciones de iPhone con iPhone SDK Beta 2.

Interface Builder fue desarrollado intencionalmente como una aplicación separada, para permitir a los diseñadores de interacción diseñar interfaces sin tener que usar un IDE orientado a código , pero a partir de Xcode 4, Apple ha integrado su funcionalidad directamente en Xcode.

Historia

Interface Builder apareció por primera vez en 1986 escrito en Lisp (para el producto ExperLisp de ExperTelligence). Fue inventado y desarrollado por Jean-Marie Hullot utilizando las funciones orientadas a objetos en ExperLisp y profundamente integrado con la caja de herramientas de Macintosh. Denison Bollay llevó a Jean-Marie Hullot a NeXT ese mismo año para demostrárselo a Steve Jobs . Jobs reconoció de inmediato su valor y comenzó a incorporarlo a NeXTSTEP, y en 1988 era parte de NeXTSTEP 0.8. Fue la primera aplicación comercial que permitió colocar objetos de interfaz, como botones , menús y ventanas , en una interfaz usando un mouse. Un uso temprano notable de Interface Builder fue el desarrollo del primer navegador web WorldWideWeb por Tim Berners-Lee en el CERN , hecho con una estación de trabajo NeXT .

Diseño

Interface Builder proporciona paletas o colecciones de objetos de interfaz de usuario a un desarrollador de Objective-C o Swift . Estos objetos de la interfaz de usuario contienen elementos como campos de texto, tablas de datos, controles deslizantes y menús emergentes. Las paletas de Interface Builder son completamente extensibles, lo que significa que cualquier desarrollador puede desarrollar nuevos objetos y agregar paletas a Interface Builder.

Para construir una interfaz, un desarrollador simplemente arrastra los objetos de la interfaz de la paleta a una ventana o menú. Las acciones (mensajes) que los objetos pueden emitir están conectadas a objetivos en el código de la aplicación y los puntos de venta (punteros) declarados en el código de la aplicación están conectados a objetos específicos. De esta manera, toda la inicialización se realiza antes del tiempo de ejecución, lo que mejora el rendimiento y agiliza el proceso de desarrollo. Cuando Interface Builder era una aplicación independiente, los diseñadores de interfaces podían enviar archivos nib a los desarrolladores, quienes luego los colocaban en sus proyectos.

Interface Builder guarda la interfaz de una aplicación como un paquete que contiene los objetos de interfaz y las relaciones que se utilizan en la aplicación. Estos objetos se archivan (un proceso también conocido como serialización o clasificación en otros contextos) en un archivo XML o en un archivo de lista de propiedades estilo NeXT con una extensión .nib . Al ejecutar una aplicación, los objetos NIB adecuados se desarchivan, se conectan al binario de su aplicación propietaria y se despiertan. A diferencia de casi todos los otros sistemas de diseño GUI que generan código para construir la interfaz de usuario (notables excepciones de Glade , Embarcadero Technologies 's de Delphi y C ++ Builder , la cual corriente UI objetos de manera similar), NIBs se refieren a menudo como liofilizado , ya que contienen la los propios objetos archivados, listos para ejecutarse. A partir de la versión 3 de Interface Builder, se ha agregado un nuevo formato de archivo (con extensión .xib), que es funcionalmente idéntico a .nib, excepto que se almacena en un archivo plano, lo que lo hace más adecuado para el almacenamiento en sistemas de control de revisión y procesamiento. por herramientas como diff .

enlaces externos