Las mejores pr谩cticas de desarrollo de aplicaciones a seguir en 2020



Seg煤n las estad铆sticas, hubo alrededor de 6 mil millones de usuarios de aplicaciones m贸viles en 2018-19. Con una mayor demanda de aplicaciones m贸viles, el n煤mero de usuarios m贸viles ha aumentado exponencialmente en comparaci贸n con los 煤ltimos a帽os. Por lo tanto, es necesario que todas las empresas de desarrollo de aplicaciones m贸viles sigan algunas de las mejores pr谩cticas de desarrollo de aplicaciones para ofrecer la mejor soluci贸n de movilidad a sus usuarios.

Cuando hablamos de las mejores pr谩cticas de desarrollo de aplicaciones, no significa abandonar los enfoques tradicionales y comenzar con nuevas estrategias. En realidad, requiere confiar en las mejores pr谩cticas antiguas utilizando herramientas y tecnolog铆as modernas de desarrollo de aplicaciones. Antes de discutir en t茅rminos t茅cnicos, primero miramos algunas de las mejores metodolog铆as de desarrollo de aplicaciones que vienen con una aplicaci贸n m贸vil perfecta en esta era competitiva.

Echemos un vistazo r谩pido:

-> Crea una idea de aplicaci贸n comprensible

Su aplicaci贸n m贸vil debe ser f谩cil de entender para los usuarios. Puede crear aplicaciones en cualquier dominio espec铆fico, a saber. Aplicaciones educativas, aplicaciones de atenci贸n m茅dica , aplicaciones sociales, etc.

Tambi茅n aseg煤rese de incluir instrucciones claras cuando sea necesario. Mantenga un equilibrio de texto e im谩genes y proporcione instrucciones concisas. Incluye texto para acompa帽ar los gr谩ficos. Evite cometer el error com煤n de confiar solo en las im谩genes para contar la historia. Si su aplicaci贸n tiene demasiados gr谩ficos, es posible que los usuarios no puedan descubrir el verdadero prop贸sito de la aplicaci贸n.

-> Cambio de enfoque en el desarrollo de aplicaciones principales

Primero, desarrolle la aplicaci贸n principal. Conc茅ntrese en crear las caracter铆sticas m谩s importantes que formar谩n el n煤cleo de su aplicaci贸n. La funcionalidad adicional puede estar disponible m谩s adelante en forma de complementos, que los usuarios pueden comprar cuando sea necesario. Esto asegura que su aplicaci贸n sea ligera.

-> Cuida al p煤blico objetivo

Antes de crear una aplicaci贸n, es importante conocer a su p煤blico objetivo. 驴Para qui茅n est谩s creando la aplicaci贸n? 驴C贸mo usar谩n esta aplicaci贸n? 驴Hay alguna caracter铆stica en particular que pueda generar m谩s atractivo que las otras? Es importante y beneficioso responder estas preguntas por adelantado.

-> Elija una metodolog铆a de dise帽o correcta

Dise帽ar la metodolog铆a de dise帽o correcta es la clave para desarrollar una aplicaci贸n m贸vil exitosa. Puede enumerar la funcionalidad completa y los componentes futuros de su aplicaci贸n en una hoja de papel y eliminar cualquier problema que pueda surgir en esta etapa. Tambi茅n es una buena idea involucrar a los usuarios potenciales en el proceso de dise帽o. Sus comentarios lo ayudar谩n a mejorar el dise帽o de una manera que sea bien aceptada por el usuario final.

-> Inducir caracter铆sticas de seguridad

Los dispositivos m贸viles son vulnerables a m煤ltiples amenazas, ya que cargan y descargan datos de forma inal谩mbrica en un entorno potencialmente inseguro. Por lo tanto, al desarrollar una aplicaci贸n, no solo necesita incorporar las capacidades de seguridad inherentes de la plataforma, sino tambi茅n utilizar herramientas como el cifrado para proteger los datos confidenciales. La limpieza remota de datos desde un dispositivo perdido es esencial. Tener un mecanismo de respaldo autom谩tico tambi茅n ayuda a los usuarios a no tener que preocuparse por el respaldo de datos.

-> Se requieren pruebas adecuadas

Probar su aplicaci贸n antes del lanzamiento es crucial. Aunque se recomienda probar la aplicaci贸n en cada etapa de desarrollo, es igualmente importante probar el producto final. Y aseg煤rese de hacer esto no con uno sino con varios usuarios diferentes. En caso de que haya problemas, corr铆jalos e intente la aplicaci贸n nuevamente.



Mejores pr谩cticas de desarrollo de aplicaciones de Android

La gran popularidad de Android ha aumentado la demanda de aplicaciones de Android. Es responsabilidad de todas las empresas de desarrollo de aplicaciones m贸viles garantizar siempre una alta experiencia de usuario. Para esto, los desarrolladores deben seguir algunas de las mejores pr谩cticas para el desarrollo de aplicaciones de Android:

Vamos a entender esto con varios ejemplos de codificaci贸n:

-> Usar strings.xml

Agregar texto como recursos de cadena puede ser 煤til cuando se necesita agregar nuevos idiomas.

-> Evite niveles profundos en dise帽os

El hecho de tener una jerarqu铆a profunda de Vistas en realidad hace que la interfaz de usuario sea lenta para administrar el dise帽o.

Usando el ViewGroup correcto, las jerarqu铆as profundas se pueden evitar en su mayor铆a

Sin embargo, se puede crear de cualquiera de las siguientes maneras:

<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/magnifying_glass" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="top text" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="bottom text" /> </LinearLayout> </LinearLayout> 

Hay una segunda forma que puede preferirse ya que tiene una jerarqu铆a de un solo nivel.

 <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:id="@+id/image" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/magnifying_glass" /> <TextView android:id="@+id/top_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_toRightOf="@id/image" android:text="top text" /> <TextView android:id="@+id/bottom_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/top_text" android:layout_toRightOf="@id/image" android:text="bottom text" /> </RelativeLayout> 


-> Use un AsyncTaskLoader en lugar de un AsyncTask

Se puede crear un AsyncTaskLoader simple de la siguiente manera:

 class SyncLoader extends AsyncTaskLoader<String> { public SyncLoader(Context context) { super(context); } public String loadInBackground() { String result = null; return result; } } 

Mejores pr谩cticas de desarrollo de aplicaciones iOS

Xcode es el IDE de elecci贸n para la mayor铆a de los desarrolladores de iOS, y el 煤nico oficialmente compatible con Apple. Hay algunas alternativas, de las cuales AppCode es posiblemente la m谩s famosa, pero a menos que ya seas una persona con experiencia en iOS, elige Xcode. A pesar de sus defectos, 隆en realidad es bastante utilizable hoy!

-> Agregar CocoaPods

Si planea incluir dependencias externas, por ejemplo, bibliotecas de terceros en su proyecto, CocoaPods proporciona una integraci贸n f谩cil y r谩pida. Puede instalar como a continuaci贸n:

 sudo gem install cocoapods 

Para comenzar, ejecute el siguiente c贸digo:

 pod init 

Esto crear谩 un Podfile con todas sus dependencias en un solo lugar. Despu茅s de agregar sus dependencias al Podfile, puede ejecutar

 pod install 

-> Controladores

Use la inyecci贸n de dependencia que significa pasar cualquier objeto requerido como par谩metro, en lugar de mantener todo el estado en un solo tono. Esto 煤ltimo est谩 bien solo si el estado realmente es global.

Para codificar en Swift:

 let fooView_Controller = FooView_Controller(withView_Model: fooView_Model) 

Para codificar en Objective-C:

 FooView_Controller *fooView_Controller = [[FooView_Controller alloc] initWithView_Model:fooView_Model]; 

Intente evitar hinchar los controladores de vista con una l贸gica que pueda residir de forma segura en otros lugares. Soroush Khanlou tiene una buena descripci贸n de c贸mo lograr esto, y arquitecturas como MVVM tratan los controladores de vista como vistas, lo que reduce en gran medida su complejidad.

-> Incluir marco anal铆tico

Se recomienda encarecidamente incluir un marco de an谩lisis en su aplicaci贸n, ya que le permite obtener informaci贸n sobre c贸mo las personas realmente lo usan. Una buena pr谩ctica es crear una clase auxiliar delgada, por ejemplo, AnalyticsHelper, que maneja la traducci贸n de modelos de aplicaciones internas y formatos de datos (FooModel, NSTimeInterval, ...) a la capa de datos basada principalmente en cadenas:

 func pushAddItem_Event(with item: Item, editMode: EditMode) { let editModeString = name(for: editMode) pushToDataLayer([ "event": "addItem", "itemIdentifier": item.identifier, "editMode": editModeString ]) } 

Esto tiene la ventaja adicional de permitirle intercambiar todo el marco de Analytics detr谩s de escena si es necesario, sin que el resto de la aplicaci贸n lo note.

-> Aprovisionamiento de depuraci贸n

A veces necesita depurar un problema de aprovisionamiento. Por ejemplo, Xcode puede negarse a instalar la compilaci贸n en un dispositivo conectado, porque este 煤ltimo no est谩 en la lista de dispositivos en el perfil (desarrollo o ad-hoc). En esos casos, puede utilizar el excelente complemento de aprovisionamiento de Craig Hockenberry navegando a ~ / Library / MobileDevice / Provisioning Profiles, seleccionando un archivo .mobileprovision y presionando la barra espaciadora para iniciar la funci贸n de b煤squeda r谩pida del Finder. Le mostrar谩 mucha informaci贸n, como dispositivos, derechos, certificados y el ID de la aplicaci贸n.

Cuando se trata de un archivo de aplicaci贸n existente (.ipa), puede inspeccionar su perfil de aprovisionamiento de manera similar: simplemente cambie el nombre de * .ipa a * .zip, descompr铆malo y busque el paquete .app en su interior. En el men煤 contextual del Finder, elija "Mostrar contenido del paquete" para ver un archivo llamado embedded.mobileprovision que puede examinar con el m茅todo anterior.

Despu茅s de desarrollar una aplicaci贸n, debe realizar las siguientes comprobaciones:

Autenticidad: implica que el recibo proviene de Apple
Coincidencia de la aplicaci贸n: dice que la ID del paquete de la aplicaci贸n en el recibo coincide con el identificador del paquete de la aplicaci贸n
Coincidencia de producto: que la identificaci贸n del producto en el recibo coincida con su identificador de producto esperado
Integridad: dice que el recibo no ha sido alterado
Frescura: no has visto la misma identificaci贸n de recibo antes.

Notas finales

El desarrollo de aplicaciones m贸viles implica un pensamiento estrat茅gico utilizando la tecnolog铆a de desarrollo de aplicaciones m贸viles adecuada. Tener en cuenta estas mejores pr谩cticas lo ayudar谩 a crear una aplicaci贸n m贸vil altamente funcional sin mucha molestia.

驴Planeas construir una aplicaci贸n m贸vil? 驴Quieres saber un costo estimado del desarrollo de aplicaciones m贸viles? Hable con nuestros expertos en desarrollo de aplicaciones m贸viles para averiguar cu谩nto cuesta construir una aplicaci贸n m贸vil.

Source: https://habr.com/ru/post/477504/


All Articles