Cómo aprender a usar estructuras de datos en el desarrollo de aplicaciones de Android

Déjame contarte un pequeño secreto.

Android no utiliza ningún tipo especial de estructuras de datos.

Wikipedia da una definición de Estructura de datos como

En ciencias de la computación, una estructura de datos es una forma particular de organizar los datos en una computadora para que puedan usarse de manera eficiente.

Las estructuras de datos son básicamente los conceptos. Puede considerar cualquier tipo de estructura de datos que he mencionado aquí: matriz, lista, lista vinculada, conjunto, mapa, árbol, lista ordenada / mapa / conjunto, pilas, colas, árboles y muchos de los que no mencioné debido a la falta de espacio y tiempo. Todos son solo datos que representan técnicas. Es solo que alguna representación de datos puede prestarse muy bien para resolver un tipo particular de problema en cuestión.

Por ejemplo, si desea resolver problemas relacionados con el sistema de colas, puede usar la estructura de datos de la cola. Si desea resolver un problema relacionado con el mantenimiento de algún tipo de orden, puede usar Establecer o, preferiblemente, un conjunto ordenado o una lista vinculada ordenada. O podría ser una estructura de datos completamente nueva que decidió crear por su cuenta, porque una vez que están disponibles no son tan útiles para resolver el problema que tiene.

Las estructuras de datos no están vinculadas por ningún lenguaje de programación, plataforma u SO. Se puede implementar una pila en C, C ++, Java, Python. De la misma manera, uno puede necesitar usar un HashMap en la aplicación iOS (usando Swift) o en Android (usando Java) dependiendo de la plataforma a la que se dirija la aplicación. Puede haber algunas personas que prefieran usar un lenguaje de programación en particular porque podrían sentirse más cómodos con ese lenguaje de programación en particular o la plataforma lo exige (Java en el caso de Android).

Una vez que conozca los conceptos como la estructura de datos, cómo se usa y qué tipo de problemas se prestan bien a una estructura de datos, puede elegir cualquier lenguaje de programación de su preferencia. Es el tipo de problema que está tratando de resolver que generalmente decide qué tipo de estructura de datos necesitaría. El lenguaje de programación es solo sintaxis y semántica, eso es todo.

Como desarrollador de Android, he usado algunas de las estructuras de datos mencionadas anteriormente en mis aplicaciones y, en realidad, también he usado algunas de ellas en aplicaciones híbridas (JavaScript).

Parece que estás comenzando con el desarrollo de Android. Puede consultar mi canal de YouTube: CodeTutor para comenzar.

Happy Coding ..

No aprenderá eso en el contexto de desarrollo de Android sino como un requisito general para convertirse en un buen ingeniero. Hay muchos buenos libros / videos disponibles para aprender.

P.ej

  1. Algoritmos en C ++ / Java por Robert Sedgwick.
  2. Videos de Coursera sobre DS y Algoritmos

El mejor lugar para aprender todo esto es el Foro de desarrolladores de Android. Es el lugar oficial para ver y aprender todo lo relacionado con el desarrollador de Android. Aparte de eso, Udacity también proporciona excelentes tutoriales sobre todos y cada uno de los temas de desarrollo de aplicaciones de Android. El enlace a ellos se da a continuación …

Desarrolladores de Android

Página de Udacity

More Interesting

¿Cómo encuentro mi teléfono móvil Android perdido?

¿Hay alguna buena empresa de desarrollo de aplicaciones móviles para iOS y Android? Cuales son tus sugerencias?

Cómo convertirte en un desarrollador de Android en India gratis

¿Cuántas descargas para aplicaciones de Android debo obtener para ganar unos 10 $ por día?

¿Cuáles son los idiomas / scripts que debo aprender para crear una aplicación de Android? ¿Puedes resumir sus necesidades?

¿Cuáles son los requisitos básicos para un desarrollador de Android? Una aplicación que se instalará en un servidor con un back-end y frontend, y un foro de preguntas y respuestas.

Para el mapa interior en Android, ¿debo usar lienzo, dibujo vectorial, biblioteca de gráficos o algo diferente?

¿Qué debo aprender a desarrollar aplicaciones: Oracle ADF o Android Development Course usando Eclipse?

¿Cuánto cuesta realmente hacer una aplicación de Android?

¿Dónde puedo encontrar reseñas de consumidores reales de aplicaciones de Android que tengan una interfaz fácil de usar?

¿Puede un programador de Java usar Android SDK sin ningún entrenamiento? ¿Cuál es la diferencia entre Android SDK y Java?

¿Cómo genero un diagrama de entidad-relación para un archivo de base de datos SQLite?

¿Qué vías de distribución se deben explorar para que los usuarios instalen una aplicación de Android?

¿Cuál es tu lanzador de Android favorito?

¿Cómo implementas el efecto de volteo que ocurre cuando tocas una canción en Path?