2010-05-02 5 views
6

Visual Studio es uno de los mejores desarrolladores IDE de todos los tiempos, y ahora se mejoró con la depuración de subprocesos múltiples y mucho más.¿Podemos ejecutar métodos/código en XCcode al igual que en Visual Studio?

Mi pregunta es sobre Xcode y la capacidad de ejecutar código como lo hacemos en Visual Studio.

Supongamos que un objeto en una vista y quiero correr, digamos:

[pickerView setHidden:YES]; 

en un punto de interrupción sólo para ver si en ese punto de ruptura que pudiera en realidad ocultar el objeto.

No puedo encontrar ningún lugar para esto en el depurador XCode

alt text http://cl.ly/uLs/Screen_shot_2010-05-02_at_17.17.34.png

Me estoy perdiendo algo o no puede ejecutar código que no está en los archivos ya? al igual que en Visual Studio Lista de Vigilancia o ventana Inmediato

enter image description here

+3

¿Crees que podrías hacer una pregunta sin comenzar con la oración de la llama? – stefanB

+0

es cierto: P después de pasar tanto tiempo en Visual Studio, no hay nada como "casa" :) – balexandre

+0

Yo trabajo con ambos, pero no soporto VS :) comparar esas capturas de pantalla, qué hermoso es Xcode ... por cierto si no puede encontrar su código en VS, está debajo de esas 5 filas de menús de aplicaciones ... y su ícono es Finder ... there +1, espero que alguien ayude a resolver su problema :) – stefanB

Respuesta

6

Sí, puede hacerlo utilizando comandos de GDB. Edite su punto de quiebre y luego agregue una "Acción de punto de interrupción" presionando el ícono más debajo de su punto de interrupción en la ventana "Puntos de interrupción". Seleccione "Comando del depurador" en el menú desplegable del tipo de acción, luego escriba su comando (sin el punto y coma). Tenga en cuenta que lo que puede introducir aquí es gdb, no directamente Objective-C, por lo que algunas cosas no funcionarán como cabría esperar (como la notación de puntos).

También puede escribir comandos gdb en la consola del depurador mientras el depurador (gdb) está en pausa, por lo que puede establecer un punto de interrupción, escribir un comando y presionar Continuar para ver si hizo lo que esperaba.

+1

eso no es exactamente lo mismo que en Visual Studio, donde puedo usar cualquier tipo de código y me hago intelisense también :-( – balexandre

+0

¿Afecta eso realmente tu trabajo o productividad? Personalmente, me parece más útil (en la mayoría de las situaciones) para establecer un punto de interrupción, luego escriba los comandos gdb en la consola del depurador para examinar e inspeccionar variables, etc. Si desea escribir código, simplemente escriba el código. gdb no es tan difícil de aprender, pero es genial saber si estás haciendo el desarrollo Cocoa/CocoaTouch. Solo aprender a imprimir ('print' o' po') y cómo obtener una traza inversa ('bt') es increíblemente útil. –

+0

Uso principalmente para ver todas las variables en una clase, así que sé lo que puedo usar. Por ejemplo, puedo pedir 'location.coordinate' y ver todas las sub variables que esta clase expone, y sus tipos para que pueda usar el enfoque correcto (¿dónde está el valor que estoy después, ahorrando tiempo para leer y depurar – balexandre

Cuestiones relacionadas