← Visualización de datos aleatorios | ↑ Principal | El análisis estadístico en el diseño →

Prototipado rápido en XcodeTutoriales

Escrito por Mark hace más de un año | 18 comentarios con 1 enlaces desde otros sitios

Uno de los aspectos más tediosos del desarrollo/diseño web es el diseño de formularios. Es inmensamente difícil hacer un formulario que:

  1. Sea fácil de usar
  2. Esté bien validado
  3. Esté protegido contra spam, XSS y SQL Injection
  4. Tenga consistencia visual entre navegadores
  5. Tenga código semántico y sea accesible

Para hacer un buen formulario hay que atacar el problema por etapas, y la más importante para el diseñador es el prototipado. Prototipar te permite verificaro o cambiar la información que le pides al usuario en un abrir y cerrar de ojos, si te pones a programar te va a ser más difícil hacer cambios por requerimientos de la arquitectura, o símplemente porque te encariñas con el código que ya escribiste.

Tip: nunca programes un formulario sin antes haberlo diseñado visualmente.

El lápiz y el papel sigue siendo el rey cuando se tata de prototipado rápido. Es indispensable para las etapas iniciales, pero una vez que tienes una buena idea de cómo va a ser el formulario, el salto entre lo esquemático (papel) y lo concreto (el código) es muy grande. Hace falta una etapa intermedia.

Hoy les voy a presentar el rediseño de un formulario mediante Xcode (en específico Interface Builder). Realmente lo puedes hacer con cualquier IDE que tenga soporte de GUIs. Me parece que bajo Windows, con Visual Studio .NET puedes hacer lo mismo y los principios son muy parecidos. Si tienes MacOS X, lo más probable es que no tengas Xcode instalado. Al momento de instalar MacOS es una opción que no está puesta por defecto, así que haz una búsqueda de "Interface Builder", y si no lo encuentras, vuelve a correr el disco de instalación con la opción para "Developer Tools" (o Xcode, dependiendo de la versión de MacOS que tengas. También lo puedes bajar gratuitamente pero al peso que tiene (924 MB), más vale que tengas una conexión rápida.

¿Ya instalaste Xcode? Entonces procedamos.

Abre interface Builder en la carpeta de Developer → Applications → Interface Builder, la primera pantalla que debes de ver es esta:

start.gif

Cocoa es el término que usa Apple para referirse a aplicaciones hechas específicamente para MacOS X, Carbon son las aplicaciones que funcionan bajo OS X y OS 9, pero el MacOS 9 está más que muerto así que no usen esta opción. En el diseño de formularios el punto de comienzo que más nos conviene es la subsección de CocoaChangablePaneDialog dentro de HIG, así que dale click y procede.

interface.gif

La ventana de "Preferencias de citas" es un formulario de ejemplo. Selecciona todo y bórralo. Luego, desde la ventana de Cocoa-text explora los íconos que vienen hasta arriba. Los páneles que más nos sirven son Cocoa-containers, Cocoa-data, Cocoa-text y Cocoa-controls:

panels.gif

Exploren todo, no hay manera de cagarla con Interface Builder. Sólo tienes que arrastrar los elementos desde estos páneles a la ventana de tu aplicación (en este caso "Preferencias de Citas"), y darle doble click para cambiar el texto. Interface Builder te pone guías para alinear y dejar espacios estándares de acuerdo a las guidelines de Aqua, los cuales son buenas referencias para el diseño web también.

Aquí hay un ejemplo de un prototipo de formulario que hice para rediseño del formulario de los comentarios de VallartaOnline:

prototipo.gif

Y el ejemplo ya programado y ajustado para web:

final.gif

Échenle un ojo al formulario en vivo para que vean cómo se comporta la validación y los detalles de javascript.

Gran herramienta, se las recomiendo muchísimo.

Comentarios Escribe un comentario

Escrito por:
Alfredo Pinto
Enero 17, 2007 1:36 PM

Mil gracias por esta herramienta, esta excelente.
Permiteme devolver el favor con otra gran herramienta para hacer prototipos de sitios.
http://dub.washington.edu/denim/
Su nombre es Denim, personalmente me ha sido muy util cuando analizo los requerimientos con los clientes. espero les guste.

Escrito por:
Jorge Cocompech
Enero 17, 2007 2:16 PM

Eres el puto master Mark

Escrito por:
Sebastian
Enero 17, 2007 3:14 PM

Mark excelente dato lo voy a empezar a probar de inmediato. Lo único que siempre me pregunto con este tipo de herramientas es que si incluyen la programación de envío de los datos, es decir, si por ejemplo hago un formulario de contacto el sbmit queda funcionando o no?
Espero se entienda mi pregunta.

Saludos.

Escrito por:
Sebastian
Enero 17, 2007 3:24 PM

Buuuu, el Xcode me dice que requiere Mac OSX 10.4.x. y yo tengo Mac OS X 10.3.x. que puedo hacer hay alternativas?

Escrito por:
Mark
Enero 17, 2007 4:41 PM

Sebastián: de hecho Interface Builder no te sirve en nada para programar el formulario, sólo para "dibujarlo" antes de hacerlo a mano.

Si tienes el Panther (10.3) puedes registrarte gratuitamente en el Apple Developer Connection, luego buscar el Xcode 1.5 en los downloads. Esa es la versión que corre en el 10.3, y el funcionamiento de Interface Builder es casi idéntico.

Jorge: gracias por lo de master, pero no lo de puto, ja!

Escrito por:
Sebastian
Enero 17, 2007 4:54 PM

Gracias Mark, instale Xcode y se ve que es una tremenda herramienta. En realidad para prototipar el diseño del sitio y sobre todo los formularios está rebueno y es bastante sencillo. Bueno como nunca está demás preguntar donde se pueden encontrar formularios de contactos programados? Saludos y gracias.

Escrito por:
German
Enero 17, 2007 5:48 PM

Mark! QUita la liga de VallartaOnline de tu blog, se esta derritiendo el servidooooooooooooooooooooooor! OH NOOOooOOOOooOOOooooo!!!


Jajajajaja. =P
Chida la herramiento. Como dices, en efecto Visual Studio tiene un IDE drag n drop. TIP: Para desarrolladores, en VS puedes crear forumlarios ya programados con validacion, password, etc, con drag n drop, no solo "mockups". Y la interfaz es casi la misma para Win32 que para Web. Jijijiji.

Saludos!

Escrito por:
Omi
Enero 18, 2007 12:27 PM

Super, pero me perdi. Cuando quise programar en Cocoa se mi hizo tan engorrosa la sintaxis y el dichoso modelito de Mac para programar, que despues de hacer dos intentos (en espaciados diferentes tiempos) de hacer el convertidor de grados de temperatura, acabe botandolo y jamas he vuelto a tocar el XCode Tools. Te digo esto porque no me quedo claro:

1) Pasar tu formulario a la liga que nos diste de review, quiere decir que existe algo tipo .net en mac? no sabia? Ojala pudieras explicarnos como se pasa (el proceso, en que se convierte) algo que se hace en el UI Builder a su forma web; estoy frito y muy interesado. Y hablo en general con otros widgets (combos, grids, etc)

2) Hasta donde puedo NO usar cocoa y hasta donde SI puedo usarlo para programar aplicaciones tipo .net; webapps que jalen pa la gente de windows pero que realice en la comodidad de mi mac. Has trabajado en algun caso similar? Por que si es rentable, entonces ese seria un buen motivante para programar en cocoa para cualquiera que tenga mac y no atorarse con una IDE popular bajo Windows.

De cualquier forma, chido por el post. Creo que debo dejar de ver tanta TV y sentarme a hacer cosas productivas. Ja!

Escrito por:
ceronne
Enero 18, 2007 4:04 PM

Definitivamente quedó MUCHO mejor que la anterior versión :-)

Saludos Mark y Germán.

Escrito por:
Mark
Enero 19, 2007 6:11 PM

Omi: jaja, tu comentario me recuerda a este tutorial de cómo dibujar. En realidad no se puede hacer un formulario web desde Interface Builder, para lo único que sirve es para hacer un prototipo. De hecho le puedes correr la interfaz y llenar los campos para ver si tienen el tamaño adecuado y cositas así, pero no va a exportar el formulario a HTML como lo hace Visual Studio.

Para hacerlo en tu Mac probablemente lo que más se asemeja es WebObjects, pero la neta es una plataforma bastante obsoleta y Apple la va a descontinuar en cualquier momento.

Escrito por:
Omi
Enero 20, 2007 11:41 PM

No comms...

Escrito por:
superdtd
Enero 21, 2007 9:10 AM

Buen post, pero falla un poco el punto 4 con esta solución que propones, no?

Escrito por:
Miguel
Febrero 27, 2007 5:53 PM

Hola a todos mil disculpas sino es el sitio adecuado para hacer la siguiente pregunta, tengo una G5 con el sistema Tiger 10.4.8, quiero instalar un programa pero primero tengo que instalar el DARWINPORTS y antes de eso instalar primero los Xcode tools, luego de intentarlo muchas veces, en el terminal al digitar:
cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od login

cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od co -P darwinports

y que se supone deberia de instalarme unas librerias me sale siempre el mensaje

Last login: Tue Feb 27 18:29:43 on ttyp1
Welcome to Darwin!
Gilberto:~ gilberto$ cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od login
Logging in to :pserver:anonymous@anoncvs.opendarwin.org:2401/Volumes/src/cvs/od
CVS password:
cvs [login aborted]: connect to anoncvs.opendarwin.org(204.152.186.41):2401 failed: Operation timed out
Gilberto:~ gilberto$

Alguien me podria dar una ayuda o por lo menos una pagina para poder leer y encontrar mi error.

Gracias por la atencion ojala me puedan ayudar.

Escrito por:
Mark
Febrero 27, 2007 6:25 PM

Hola Miguel, suena a que la dirección del servidor está mal o desactualizada. Ese "Operation timed out" significa que el servidor no responde.

Desde terminal pon "ping anoncvs.opendarwin.org" y si no te responde, busca la versión actualizada del servidor CVS.

Escrito por:
Miguel
Febrero 28, 2007 1:40 PM

Hola Mark, agradesco tu respuesta, hice lo que me dices y mira el resultado :

Last login: Wed Feb 28 14:23:36 on ttyp1
Welcome to Darwin!
Gilberto:~ gilberto$ ping anoncvs.opendarwin.org
PING anoncvs.opendarwin.org (204.152.186.41): 56 data bytes


imagino que encontro el servidor, ahora entonces cual puede ser el parametro que esta mal cuando pongo :

cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od login


estoy buscando los comandos del terminal para ver que esta mal tipeado, si tuvieses alguna informacion mas te lo agradesco, para que tengas una idea de que pagina que estoy revisando estos comandos :

http://www.faq-mac.com/mt/archives/007161.php

Escrito por:
SheilaRussia
Marzo 26, 2013 8:26 PM

I will draw a exclusive portrait drawing in my own very realistic style. I use the Dry-Brush Technique,
Send me a very detailed photo of your love ones, your wife, child, pet, etc

http://www.bromartprodukties.nl - Go Here to check out www.bromartprodukties.nl

Escribe un comentario

(opcional)

(opcional)