La respuesta es simple, pero no le va a gustar: práctica y experiencia. Esa es más o menos la respuesta a todas las preguntas en este sentido. Estoy seguro de que has escuchado el aforismo, “La práctica hace la perfección”, repetido hasta la saciedad.
Pero en una nota más seria, la mejor pregunta sería: ¿por qué desea crear su IU mediante programación en lugar de usar Storyboards o xibs?
Los guiones gráficos son una herramienta como cualquier otra cosa y pueden ahorrar mucho tiempo, pero también como cualquier herramienta, tienen límites. Por ejemplo, nunca han sido muy amigables con el control de la fuente, por lo que a menudo me alejé de ellos en mi trabajo con iOS. Esto puede ser especialmente claro cuando se trabaja en proyectos con más de 5 desarrolladores, cada uno de los cuales causa constantemente conflictos de fusión en el guión gráfico único de la aplicación que git cree que ha cambiado cuando un usuario simplemente lo abre, pero en realidad no ha cambiado nada. Por esa razón, las xib individuales e incluso las vistas basadas en código parecían encajar mejor en proyectos a gran escala. También parecían funcionar en contra de la “separación de preocupaciones” ya que toda la aplicación se metió en un archivo gigante y eventualmente imposible de mantener. (Esto ha cambiado ahora con versiones más recientes de iOS donde ahora puede tener múltiples guiones gráficos que se vinculan entre sí, pero estoy divagando)
- Cómo aumentar mis descargas diarias de juegos de iOS de 100
- ¿Por qué no se puede cambiar el tiempo de contraseña requerido al activar la identificación táctil para desbloquear la pantalla?
- Ruby (lenguaje de programación): ¿Cuáles son algunas experiencias y opiniones sobre el uso de RubyMotion para el desarrollo de iOS?
- Para probar un concepto como un nuevo diseño para buscar un hotel usando la API de Expedia, ¿cuál es el costo por usuario para adquirir el servicio en la web frente al móvil?
- ejabberd: ¿Cómo funciona mod_archive_odbc?
También debe preguntarse qué está tratando de crear y cuánto tiempo le tomará ganar. Si puede lograr lo que quiere en un Storyboard con restricciones de diseño automático perfectamente configuradas para todas las clases de tamaño en un cuarto del tiempo que le tomaría hacerlo en código, entonces la respuesta se vuelve evidente.
Aunque si admite un control de interfaz de usuario personalizado con un flujo de aplicación no estándar, algo más allá del árbol estándar en el que los guiones gráficos lo enganchan, tal vez esa no sea la herramienta adecuada para ese proyecto específico.
En resumen, aprenda todas las diferentes formas en que puede resolver problemas en su carrera de programación y elija la mejor herramienta para el problema en cuestión. Con práctica, puede darse cuenta de que los guiones gráficos fueron la respuesta correcta en primer lugar.