¿Los desarrolladores serios y centrados en el diseño usan Interface Builder? ¿Interface Builder se considera una herramienta novata o es lo suficientemente potente como para ser utilizada para el desarrollo serio de aplicaciones, donde el diseño centrado en los detalles es crítico?

Interface Builder no es en absoluto una herramienta novata, y como prueba, solo necesita profundizar en el contenido del paquete de cualquier aplicación desarrollada por Apple de alta gama y centrada en los detalles.

Tienda de aplicaciones:

Directorio:

Banda de garage:

iMovie:
Fundamental:


Nib archivos.

Nib archivos en todas partes . Como proveedor de la plataforma, Apple parece pensar que las puntas son el camino a seguir para el diseño de la interfaz de usuario.

Me cuesta creer que cualquiera que piense que sabe mejor que Apple cómo hacer un software hermoso y utilizable en las plataformas de Apple. Así que no preste atención a los desarrolladores novatos que pueden decirle que nunca use puntas. Están equivocados: las puntas son herramientas útiles empleadas por algunas de las mejores aplicaciones escritas para OS X e iOS. Úsalos según sea necesario.

Sí.

Pero esa no es la pregunta correcta. La verdadera pregunta es si es una buena idea usar Interface Builder, dado el tamaño de su equipo. Para un equipo grande, la respuesta sería no, simplemente porque las herramientas de control de código fuente (como git, perforce, etc.) no saben cómo fusionar efectivamente archivos .xib y .storyboard. Si hay un conflicto de fusión, la única solución real es fusionar manualmente los cambios de dos desarrolladores, lo cual es un problema grave. Entonces, la única alternativa real es dibujar su UI en el código. Creo que sería increíble si PODRÍAMOS usar las herramientas XCode WYSIWYG para diseñar la interfaz de usuario como equipo, y no nos haría menos capaces técnicamente. Creo que los desarrolladores deberían usar las mejores herramientas que el dinero puede comprar.

FWIW, he tenido esta conversación con tres o más ingenieros de Apple, y todos dijeron que NO usan el generador de interfaces, y construyen sus interfaces de usuario todo en código. Esto es diferente de lo que otras respuestas dicen anteriormente, pero este fue mi hallazgo. Al final del día, debes hacer lo correcto para tu tienda de desarrollo, y no solo tratar de copiar a otra compañía, ya sea Apple.

Usamos Interface Builder cuando era desarrollador en Apple. Si es lo suficientemente potente para las propias aplicaciones de Apple, sospecho que es apropiado para cualquier otra persona que esté haciendo un trabajo serio.

Sí. Hay desarrolladores a los que no les gusta y no usan IB, pero son minoría. Y cuando he convertido parte de su código para usar IB, a menudo también he reducido la aplicación.

IB es una herramienta profesional y no un tipo de “programa por dibujo”. Es lo que consideraría como el camino correcto y menos difícil para construir una interfaz de usuario para una aplicación.

Dicho todo esto, hay algunos tipos de cosas en las que IB es más incómodo que escribir la UI en código. Algunos tipos de celdas de tabla dinámicas, por ejemplo. Pero estos ejemplos son cada vez menos.

Todas las aplicaciones que he enviado han hecho un uso intensivo de Interface Builder y durante los últimos 2 años se han desarrollado completamente en Storyboards. Hago todo lo posible para ser serio / centrado en el diseño.

Interface Builder no es solo una herramienta de diseño, está estrechamente vinculada con el controlador de vista y las clases de vista de Apple. Utiliza el valor predeterminado de Apple para los diseños de control e implementa las pautas de interfaz humana de Apple.

Sin embargo, si un diseñador quiere diseñar sus propios controles, es fácil hacerlo.

Definitivamente si. Casi todas las aplicaciones que hacemos usan Interface Builder