2011-10-19 13 views
5

soy muy nuevo en el desarrollo de ios, en vez de eso, acabo de empezar a trabajar en mi primera aplicación. Ahora mi aplicación tiene un botón de inicio en casi todas las páginas y detrás de ese botón se llama el mismo fragmento de código para pasar a la pantalla de inicio. Este es un montón de código duplicado en cada controlador que tiene un botón de inicio. Y es solo un ejemplo. Hay muchos otros escenarios como este y el programador aún está aprendiendo a programar, creo que es una mala práctica ya que cualquier cambio tendrá que hacerse por separado en cada controlador.Reutilización de código en aplicaciones iOS

Así que mi pregunta, ¿cuáles son las mejores prácticas en escenarios como este cuando se codifica para iOS?

+0

Parece: http://stackoverflow.com/questions/6223485/iphone-how-to-display-a-common-button-on-my-all-view – Devang

+0

@Devang: Diría una pregunta sobre cómo hacer que un botón común sea más localizado en comparación con este. Así que no llamaría a este un duplicado, al menos no de esa pregunta. –

Respuesta

4

Una cosa fácil de hacer en esta situación es hacer una subclase UIViewController (MyAppMasterVC, por ejemplo) y definir el botón como tan:

- (IBAction)myCommonButtonAction { // code and such } 

En todos los controladores de vista, heredar de éste en vez de UIViewController (a la @interface MyNewViewController : MyAppMasterVC).

2

Lo primero que debe hacer es aprender más acerca de la programación de OO y la jerarquía de clases, y comprender cómo puede crear una clase base común para todos sus controladores similares.

1

Este problema es el idioma/plataforma independiente. El término que muchos usan es 'DRY', un acrónimo de 'Do not Repeat Yourself'.

Here is a SO search. Esto debería ayudarlo con los problemas y usos típicos, para que pueda determinar mejor si puede, cuándo debe hacerlo y cómo abordar este tipo de problema.

2

El desarrollo de software para iOS en este sentido no es diferente de cualquier otro desarrollo de software. Simplemente combine su lógica en alguna clase o función común, y úsela como lo considere apropiado. A menudo resulta que no sabes qué parte podría ser común y reutilizable hasta que escribas varias partes de código, y solo entonces te das cuenta de que podría ser una función. El proceso de organizar código existente, limpiarlo, hacerlo más legible y reutilizable se llama code refactoring. Hay muchos libros sobre refactorización que explican diferentes design patterns, técnicas y procesos para mejorar su código. Te recomiendo que leas algunos de ellos para obtener una mejor imagen.

Cuestiones relacionadas