Saltar al contenido principal
Java para Desarrollo Android

Java para Desarrollo Android

Java para Desarrollo Android

Friesen, Jeff "Javajeff"

Los smartphones y otros dispositivos móviles táctiles basados en Android están haciendo furor. Gracias a las cerca de 300.000 aplicaciones disponibles, el mercado de desarrollo se encuentra en su momento más álgido. Este libro le enseña la mayor parte de las características del lenguaje Java, las API y las herramientas que necesita conocer antes de poder convertirse en un efica...

Editorial:
Anaya Multimedia
Año de edición:
2011
Materia:
Programación
ISBN:
978-84-415-2961-8
Páginas:
672
Encuadernación:
Otros
51,50 €
IVA incluido
Añadir a favoritos

Sinopsis

Los smartphones y otros dispositivos móviles táctiles basados en Android están haciendo furor. Gracias a las cerca de 300.000 aplicaciones disponibles, el mercado de desarrollo se encuentra en su momento más álgido.

Este libro le enseña la mayor parte de las características del lenguaje Java, las API y las herramientas que necesita conocer antes de poder convertirse en un eficaz programador de Android. Comenzando por las clases y objetos, verá también las características orientadas a objetos (como las interfaces) y otras funcionalidades más complejas, así como las herramientas javac, java, javadoc y jar del JDK. Encontrará igualmente una introducción sobre los entornos de desarrollo integrado NetBeans y Eclipse.

Cada uno de los diez capítulos se complementa con una sección de ejercicios que le ayudará a reforzar lo aprendido. Obtenga auténticos conocimientos prácticos sobre Java y desarrolle aplicaciones Android de éxito.

Índice

Agradecimientos

Sobre el autor

Sobre el revisor técnico

Introducción
Organización del libro
Convenciones
Código fuente

1. Primeros pasos con Java
¿Qué es Java?
Java es un lenguaje
Java es una plataforma
Java SE, Java EE, Java ME y Android
Instalación y exploración del JDK
Instalación y exploración de dos IDE populares
IDE NetBeans
IDE Eclipse
Póker
Comprendiendo el juego
Modelado del juego en pseudocódigo
Conversión de pseudocódigo en código Java
Compilación, ejecución y distribución de FourOfAKind
Ejercicios
Resumen

2. Fundamentos del lenguaje
Clases
Declaración de clases
Introducción de campos
Declarar campos
Inicialización de campos
Campos de sólo lectura
Introducción de métodos
Declaración de métodos
Implementación de métodos
Métodos sobrecargados
Introducción de constructores
Introducción de otros inicializadores
Inicializadores de clase
Inicializadores de instancia
Orden de inicialización
Interfaz o Implementación
Objetos
Creación de objetos y matrices
Acceso a campos
Llamadas a métodos
Pila de llamadas a métodos
Llamadas recursivas
Pasar argumentos
Llamadas a métodos de instancia encadenados
Recolección de basura
Ejercicios
Resumen

3. Aprendizaje de las características del lenguaje orientado a objetos
Herencia
Extensión de clases
La superclase máxima
Clonación
Igualdad
Finalización
Código hash
Representación de cadenas
Composición
El problema con la herencia de implementación
Polimorfismo
Upcasting y enlace en tiempo de ejecución
Clases abstractas y métodos abstractos
Downcasting e identificación del tipo en tiempo de ejecución
Tipos de retorno covariantes
Interfaces
Declaración de interfaces
Implementación de interfaces
Extensión de interfaces
¿Por qué utilizar interfaces?
Ejercicios
Resumen

4. Dominio de las características avanzadas del lenguaje (I)
Tipos anidados
Clases estáticas
Clases internas no estáticas
Clases anónimas
Clases locales
Interfaces dentro de clases
Paquetes
¿Qué son los paquetes?
Los nombres de paquetes deben ser únicos
La sentencia de paquete
La sentencia de importación
Búsqueda de paquetes y tipos
Búsqueda en tiempo de compilación
Búsqueda en tiempo de ejecución
Jugar con paquetes
Paquetes y archivos JAR
Importaciones estáticas
Excepciones
¿Qué son las excepciones?
Representación de excepciones en el código fuente
Códigos de error y objetos
La jerarquía de la clase Throwable
Clases de excepciones personalizadas
Ejecución de excepciones
Manejo de excepciones
Realización de la limpieza
Ejercicios
Resumen

5. Dominio de las características avanzadas del lenguaje (II)
Aserciones
Declaración de aserciones
Uso de las aserciones
Invariantes internas
Invariantes de flujo de control
Diseño por contrato o convención
Evitar las aserciones
Habilitar y deshabilitar aserciones
Anotaciones
Descubrimiento de anotaciones
Declaración de tipos de anotación y código fuente de anotaciones
Uso de meta-anotaciones y declaraciones de tipo de anotación
Procesamiento de anotaciones
Genéricos
Colecciones y la necesidad de la seguridad de tipo
Tipos de genéricos
Declaración y uso de tipos genéricos personalizados
Límites del parámetro de tipo
Ámbito del parámetro de tipo
La necesidad de comodines
Cosificación y borrado
Métodos genéricos
Enumeraciones
El problema con los tipos enumerados tradicionales
La alternativa de las enumeraciones
Mejora de una enumeración
La clase de enumeración
Extensión de la clase Enum
Ejercicios
Resumen

6. Exploración de las API básicas (I)
API para matemáticas
Math y StrictMath
BigDecimal
BigInteger
Información de paquete
Clases envolventes primitivas
Boolean
Character
Float y Double
Integer, Long, Short y Byte
Number
API References
Terminología básica
Reference y ReferenceQueue
SoftReference
WeakReference
PhantomReference
Ejercicios
Resumen

7. Exploración de las API básicas (II)
API Reflection
Gestión de cadenas
String
StringBuffer
Sistema
API Threading
Runnable y Thread
Sincronización de hilos
Ejercicios
Resumen

8. Recorrido por la plataforma de colecciones
Introducción a la plataforma
Comparable y comparador
Iterable y Collection
Iterator y el bucle for mejorado
Empaquetado automático (autoboxing) y desempaquetado (unboxing)
List
ArrayList
LinkedList
Set
TreeSet
HashSet
EnumSet
SortedSet
Queue
PriorityQueue
Map
TreeMap
HashMap
IdentityHashMap
WeakHashMap
EnumMap
SortedMap
Utilidades
Clases de colecciones clásicas
Ejercicios
Resumen

9. Exploración de otras API de utilidad
Utilidades de concurrencia
Ejecutores
Sincronizadores
Colecciones concurrentes
Bloqueos
Variables atómicas
Las API de internacionalización
Locales
Paquetes de recursos
Paquetes de recursos de propiedad
Paquetes de recursos de lista
Iteradores de interrupción
Recopiladores (Collator)
Fechas, zonas horarias y calendarios
Formateadores
Formateadores de número
Formateadores de mensaje
API Preferences
Generación aleatoria de números
API Regular Expressions
Ejercicios
Resumen

10. Trabajar con E/S
File
RandomAccessFile
Flujos
Introducción a las clases de flujo
OutputStream e InputStream
ByteArrayOutputStream y ByteArrayInputStream
FileOutputStream y FileInputStream
PipedOutputStream y PipedInputStream
FilterOutputStream and FilterInputStream
BufferedOutputStream y BufferedInputStream
DataOutputStream y DataInputStream
Serialización y deserialización de objetos
Serialización y deserialización predeterminada
Serialización y deserialización personalizada
Externalización
PrintStream
Escritores y lectores
Introducción a las clases de escritura y de lectura
Writer y Reader
OutputStreamWriter y InputStreamReader
FileWriter y FileReader
Ejercicios
Resumen

Apéndice. Soluciones a los ejercicios
Capítulo 1. Primeros pasos con Java
Capítulo 2. Fundamentos del lenguaje
Capítulo 3. Aprendizaje de las características del lenguaje orientado a objetos
Capítulo 4. Dominio de las características avanzadas del lenguaje (I)
Capítulo 5. Dominio de las características avanzadas del lenguaje (II)
Capítulo 6. Exploración de las API básicas (I)
Capítulo 7. Exploración de las API básicas (II)
Capítulo 8. Recorrido por la plataforma de colecciones
Capítulo 9. Exploración de otras API de utilidad
Capítulo 10. Trabajar con E/S

Índice alfabético

Información de seguridad

  • Cargando la información ...

Artículos relacionados

Comprender los Algoritmos

Comprender los Algoritmos

Y. Bhargava, Aditya

Un enfoque accesible para aprender sobre algoritmos con ilustraciones y ejemplos prácticos. 320 páginas.La mirada de Luces: Perfecto para quienes desean adentrarse en el mundo de la programación sin complicaciones. ...

✅ Disponible

36,95 €

Micropython en Proyectos. Una Introducción Práctica a la Programación de Microco

Micropython en Proyectos. Una Introducción Práctica a la Programación de Microco

Padin Romero, Beatriz / Dapena Janeiro, Ad / Padín Romero, Beatriz / Dapena Janeiro, Adriana

Guía práctica para desarrollar proyectos en MicroPython, ideal para principiantes y entusiastas. 266 páginas.La mirada de Luces: Perfecto para quienes desean iniciarse en la programación de microcontroladores de manera práctica. ...

✅ Disponible

22,80 €

Guía de Programación en C/C++

Guía de Programación en C/C++

Lopez, Eliezer

Manual para aprender a programar en C y C++, con ejemplos y ejercicios prácticos. 400 páginas.La mirada de Luces: Esencial para quienes desean adentrarse en el mundo de la programación. ...

✅ Disponible

30,50 €

Python Black Hat. Programación para Hackers y Pentesters

Python Black Hat. Programación para Hackers y Pentesters

Arnold, Tim / Seitz, Justin

Cuando se trata de crear herramientas de hackeo potentes y eficaces, Python es el lenguaje elegido por la mayoría de los analistas de seguridad. En este libro explorarás el lado más oscuro de las capacidades de Python: todo, desde escribir sniffers de red, robar credenciales de correo electrónico y acceder a directorios y carpetas por la fuerza hasta crear fuzzers de mutación, ...

✅ Disponible

32,95 €

Curso Práctico con Unity 3D

Curso Práctico con Unity 3D

Cantón Nadales, David

Guía para el desarrollo de videojuegos con Unity, desde fundamentos hasta creación de builds. 360 páginas.La mirada de Luces: Ideal para quienes desean adentrarse en el mundo del desarrollo de videojuegos de forma práctica. ...

✅ Disponible

30,50 €

Curso de Programacion con Rust

Curso de Programacion con Rust

Lopez, Eliezer

Introducción a la programación en Rust, un lenguaje enfocado en la seguridad y el rendimiento. 400 páginas.La mirada de Luces: Perfecto para desarrolladores que buscan un lenguaje moderno y eficiente. ...

✅ Disponible

31,95 €