stringtranslate.com

Constructor de interfaces

Interface Builder es una aplicación de desarrollo de software para el sistema operativo macOS de Apple . Forma parte de Xcode (anteriormente Project Builder ), el conjunto de herramientas para desarrolladores de Apple Developer . Interface Builder permite a los desarrolladores de Cocoa y Carbon crear interfaces para aplicaciones utilizando 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 es un derivado del software de desarrollo NeXTSTEP del mismo nombre. También se utiliza una versión de Interface Builder en el desarrollo de software OpenStep y existe una herramienta muy similar llamada Gorm para GNUstep . El 27 de marzo de 2008, se lanzó una versión especializada de Interface Builder para iPhone que permite la construcción de interfaces para aplicaciones de iPhone con el iPhone SDK Beta 2.

Interface Builder se desarrolló 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

Originalmente, el software se llamaba SOS Interface y fue creado por Jean-Marie Hullot mientras era investigador en Inria en Rocquencourt, cerca de París. Se le permitió conservar la propiedad del software al renunciar a Inria y pasó un año trabajando en él hasta convertirlo en un producto con todas las funciones, ahora llamado Interface Builder [1] y distribuido para Macintosh por ExperTelligence en los EE. UU. en 1986. [2] Fue escrito en Lisp (para el producto ExperLisp de ExperTelligence ) y profundamente integrado con Macintosh Toolbox . Interface Builder se presentó en la MacWorld Expo en San Francisco en enero de 1987. [3]

Denison Bollay llevó a Jean-Marie Hullot a NeXT después de la MacWorld Expo para demostrárselo a Steve Jobs . Jobs reconoció su valor y comenzó a incorporarlo a NeXTSTEP, y en 1988 formaba parte de NeXTSTEP 0.8. Fue la primera aplicación comercial que permitía colocar objetos de interfaz, como botones , menús y ventanas , en una interfaz mediante un ratón.

Un uso temprano notable de Interface Builder fue el desarrollo del primer navegador web, WorldWideWeb, por Tim Berners-Lee en el CERN , realizado utilizando una estación de trabajo NeXT . [ cita requerida ]

Diseño

Interface Builder proporciona paletas o colecciones de objetos de interfaz de usuario a los desarrolladores de Objective-C o Swift . Estos objetos de 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 crear una interfaz, un desarrollador simplemente arrastra objetos de interfaz desde la paleta a una ventana o menú. Las acciones (mensajes) que pueden emitir los objetos están conectadas a objetivos en el código de la aplicación y las salidas (punteros) declaradas en el código de la aplicación están conectadas a objetos específicos. De esta manera, toda la inicialización se realiza antes del tiempo de ejecución, lo que mejora el rendimiento [ cita requerida ] 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 utilizadas en la aplicación. Estos objetos se archivan (un proceso también conocido como serialización o marshalling en otros contextos) en un archivo XML o en un archivo de lista de propiedades de 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 activan. A diferencia de casi todos los demás sistemas de diseño de GUI que generan código para construir la IU (las excepciones notables son Glade , Delphi de Embarcadero Technologies y C++Builder , que transmiten objetos de IU de manera similar), los NIB a menudo se denominan liofilizados porque contienen 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 el procesamiento por herramientas como diff .

Referencias

  1. ^ "Jean-Marie Hullot, de las tarjetas perforadas al iPhone - Inria". www.inria.fr . Consultado el 17 de mayo de 2023 .
  2. ^ Micro Marketworld 1987-02-09: Vol 10 Iss 6. Infoworld Media Group. 9 de febrero de 1987.
  3. ^ Diario del Dr. Dobb. "Diario del Dr. Dobb, marzo de 1987". {{cite magazine}}: Requiere citar revista |magazine=( ayuda )

Enlaces externos