Red de conocimientos sobre prescripción popular - Remedios caseros - ¿Cómo hace el desarrollo de Android que la experiencia del usuario sea más rápida?

¿Cómo hace el desarrollo de Android que la experiencia del usuario sea más rápida?

Una excelente experiencia de usuario tiene tres características: velocidad, capacidad de respuesta y fluidez. La siguiente información puede ayudar a que su aplicación implemente estas funciones en Android. Le explicaremos en detalle cómo hacer que su solicitud sea rápida y le presentaremos una respuesta oportuna y fluida en el futuro.

Rápido

No se puede dar por sentado que los teléfonos móviles sean tan rápidos como los sistemas de escritorio y los servidores. Más importante aún, debe prestar atención a si su código es eficiente.

Escribir código Android eficiente debe seguir dos principios:

No hacer cosas innecesarias.

No asignar memoria innecesaria.

Los siguientes son algunos consejos para lograr este objetivo (algunos de los cuales entran en conflicto con oo principios, así que use el escenario apropiadamente):

1 Evite crear objetos

Por ejemplo, una matriz int es mejor que una matriz Integer, y lo mismo se aplica a todas las combinaciones de tipos básicos.

2. Utiliza métodos locales

No dudes en utilizar String.indexOf().

Métodos profesionales, como String.lastIndexOf(). Todos estos métodos están implementados en C/C++

3. Es mejor utilizar interfaces de simulación.

Código Java:

Mapa myMap1 = nuevo

HashMap();

HashMap mi mapa 2 = nuevo HashMap();

Llamar una referencia a una interfaz tomará el doble de tiempo que llamar a una referencia a una clase de entidad.

4. No hay captadores ni definidores.

Debes acceder a las variables directamente.

5. Variables miembro de la caché local.

Código Java:

for(int I = 0; i<this.mCounti++)

volcar elemento(this . MIT EMS);

//Es mejor cambiarlo a esto:

int count = this.mCount

item[]items = this MIT EMS;

is.

(int I = 0; i & lt count; i++)dump items(items);

6. Agregar final a la constante

Static int intVal =

42;

1. static String strVal = "¡Hola, mundo!";

El compilador generará un método llamado clase de inicialización. Este método ejecutarse la primera vez que se utiliza la clase. Este método asigna 42 a intVal y luego asigna una referencia a la tabla de constantes en la clase a strVal. Cuando estos valores se utilicen en el futuro, se podrán encontrar en la tabla de variables miembro.

Static final int intVal = 42

1. Static final string strVal =

"¡Hola, mundo!";

Ahora, las clases ya no necesitan métodos porque cuando se inicializan las variables miembro, las constantes se guardan directamente en el archivo de clase. El código que usa intVal se reemplaza directamente con 42, mientras que el código que usa strVal apunta a una constante de cadena en lugar de usar una variable miembro.

7. Utilice foreach con precaución

Foreach se puede utilizar para tipos de colección que implementan la interfaz Iterable. Foreach asigna un iterador a estos objetos y luego llama a los métodos hasNext() y Next(). Es mejor usar foreach para objetos ArrayList, pero para otros objetos de colección, foreach es equivalente a usar foreach.

Iterador

8. Evitar la enumeración.

Es muy conveniente enumerar variables, pero desafortunadamente sacrificará la velocidad de ejecución y aumentará considerablemente el tamaño del archivo.

9. Declarar variables o métodos externos a los que la clase interna necesita acceder dentro del alcance del paquete.

Código Java:

Público

Clase Foo

privado int mValue

Public void run() {

Interior en = nuevo

inner();

mValue = 27

in . p>}

Clase privada interna {

void cosas() {

sistema fuera . println(foo . this . mvalue);

}

}

}

//Foo$Inner es una clase completamente independiente. Es ilegal acceder directamente a los miembros privados de Foo. . El compilador generará automáticamente un método:

/*Package*/static

int access $ 100(Foo Foo){

Return foo.mValue.

}

10. Evite el uso de números de punto flotante

Los procesadores integrados generalmente no tienen hardware para soportar operaciones de punto flotante. Todo sobre "punto flotante" y ". doble punto". Los cálculos de "precisión" se implementan todos a través de software.

Podemos evitar este problema cambiando la declaración de variables y funciones a las que acceden las clases internas del ámbito privado al ámbito del paquete. Hacer esto hace que el código se ejecute más rápido y evita generar métodos estáticos adicionales. Desafortunadamente, otras clases en el mismo paquete pueden acceder directamente a estas variables miembro y métodos, lo que viola los principios clásicos de OO. Por lo tanto, debe tener cuidado al utilizar este principio de optimización al diseñar.