ACTIONSCRIPT 2.0

ACTIONSCRIPT 2.0

SOLUCIONES PARA EL DESARROLLO ORIENTADO A OBJETOS

MOOCK, C. / COLIN MOOCK

46,15 €
Agotado
Editorial:
ANAYA MULTIMEDIA
Año de edición:
2005
Materia
Informatica
ISBN:
978-84-415-1878-0
Páginas:
624
Encuadernación:
Otros
46,15 €
Agotado
Añadir a favoritos

Introducción



Prólogo

Este libro quiere que usted

Qué no es este libro

Quién debería (y no debería) leer este libro

ActionScript 2.0 frente a ActionScript 1.0

Descifrar las versiones de Flash

Archivos de ejemplo





Parte I. El lenguaje ActionScript 2.0



Capítulo 1. Perspectiva general de ActionScript 2.0

Características de ActionScript 2.0

Nuevas características de Flash Player 7

Componentes de la versión 2 en Flash MX 2004

ActionScript 1.0 y 2.0 en Flash Player 6 y 7

Ajustar la versión de ActionScript y del reproductor de una película

Cambios de ActionScript 1.0 en Flash Player 7

La sintaxis con barra inclinada de Flash 4 no es compatible con ActionScript 2.0

¡Comencemos con la OOP!



Capítulo 2. ActionScript orientado a objetos

Programación de procedimiento y programación orientada a objetos

Conceptos clave de la programación orientada a objetos

Sintaxis de clases

Creación de objetos

Uso de objetos

Encapsulación

Tipos de datos

Herencia

Paquetes

Compilación

Comenzar una aplicación orientada a objetos

¿Cómo aplico OOP?



Capítulo 3. Tipos de datos y comprobación de tipos

¿Por qué tipificación estática?

Sintaxis de tipos

Declaración de tipos de datos de variables y propiedades

Declaración del tipo de datos del parámetro de un método y del valorde retorno

¿Por qué sintaxis posterior a los dos puntos?

Tipos compatibles

Manejar cualquier tipo de datos

Compatibilidad con null y undefined

Clases dinámicas incorporadas

Burlar la comprobación de tipos

Creación de parámetros que acepten tipos múltiples

Permitir la creación de propiedades y métodos en las instancias de clase

Evitar la comprobación de tipos en una base por usuario

Seleccionar

Terminología de selección

Compatibilidad de selección en el tiempo de ejecución

La selección no afecta a la selección de métodos o propiedades

Selección frente a conversión

Selección indulgente en el momento de la compilaciónde ActionScript 2.0

Problemas seleccionando a cadena, número, booleano, fecha y matriz

Información de tipo de datos para clases incorporadas

Fallos de comprobación de tipos de ActionScript 2.0

Las variables globales no pueden ser tipificadas

Comprobación de tipos y código de la línea de tiempo

Comprobación de tipos de instancias XML

Ausencia de comprobación de tipos con el operador [ ]

Elementos matriz y comprobación de tipos

A continuación: Creación de clases (¡sus propios tipos de datos!)



Capítulo 4. Clases

Definición de clases

Atributos de clase

El atributo dynamic

El atributo intrinsic

Funciones del constructor (toma 1)

Propiedades

Atributos de propiedad

Restricción del acceso a la propiedad con los atributos private y public

Definir propiedades de clase con el atributo static

Variables globales frente a propiedades de clase

Subclases y propiedades de clase

Expresiones constantes en el momento de la compilación

Enumerar propiedades con bucles for-in

Métodos

Referencia al objeto actual con la palabra clave this

Pasar el objeto actual a un método

Administrar los conflictos de nombres parámetro/propiedad

Uso redundante de la palabra clave this

Atributos de método

Controlar el acceso al método con los atributos public y private

Definir métodos de clase con el atributo static

Métodos accessor

Variables locales

Anidar funciones en métodos

Acceder al objeto actual desde una función anidada en un método

Métodos de obtención y de ajuste

Simular propiedades de sólo lectura

Argumentos extra o desaparecidos

Funciones de constructor (Toma 2)

Simular funciones de constructor múltiples

Usar this en funciones de constructor

Funciones de constructor frente a valores de propiedad por defecto

Completar la clase Box

Poner la teoría en práctica



Capítulo 5. Autoría de una clase de ActionScript 2.0

Comienzo rápido de la autoría de clases

Diseñar la clase ImageViewer

De los requerimientos funcionales al código

Implementación de ImageViewer (Toma 1)

Utilizar ImageViewer en una película

Precargar la clase ImageViewer

Implementación de ImageViewer (toma 2)

ImageViewer (toma 2), resumen del diseño

Implementación de ImageViewer (toma 2)

Utilizar ImageViewer (toma 2)

Implementación de ImageViewer (Toma 3)

Borrar los recursos de clase

El código final de ImageViewer

Volver a la clase



Capítulo 6. Herencias

Un manual sobre la herencia

Método de clase y herencia de propiedad de clase

Subclases como subtipos

Un ejemplo OOP de Chat

Preponderar métodos y propiedades

Preponderar métodos de instancia

Invocar un método de instancia preponderante

Preponderar métodos de clase

Preponderar propiedades

La palabra clave super y el acceso a propiedades preponderadas

Acceso a miembros desde métodos de instancia heredados, preponderados y preponderantes

Acceso a miembros desde un método de instancia heredado

Acceso a miembros desde un método de instancia preponderado

Acceso a miembros desde un método preponderado invocado mediante super

Acceso a miembros desde métodos de clase heredados y preponderados

Buenas prácticas para preponderar

Funciones de constructor en subclases

Invocación superflua del constructor de la superclase en Flash Player 6

Convertir en subclases las clases incorporadas

Clases incorporadas que almacenan librerías de funciones

Aumentar las clases y los objetos incorporados

La teoría de la herencia

¿Por qué herencia?

Polimorfismo y vinculación dinámica

Herencia frente a composición

Es-una, tiene-una y usa-una

Cuándo usar composición sobre herencia

Utilizar la composición para librarse de un viejo hábito

Incompatibilidad con clases abstractas y finales

Probemos las herencias



Capítulo 7. Autoría de una subclase de ActionScript 2.0

Extender las capacidades de ImageViewer

El esqueleto de ImageViewerDeluxe

Añadir los métodos setPosition( ) ysetSize( )

Cambiar automáticamente el tamaño de Image Viewer

Utilizar ImageViewerDeluxe

Seguir adelante sólo



Capítulo 8. Interfaces

El caso para interfaces

Interfaces y clases con tipos de datos múltiples

Sintaxis y uso de interfaces

Convenciones de nombres de interfaces

Herencia de interfaz

Interfaces de indicador

Herencias de tipos múltiples con interfaces

A continuación, paquetes



Capítulo 9. Paquetes

Sintaxis de paquetes

La instrucción import

Importar un paquete completo

Convenciones de nombre de paquete

Definir paquetes

Acceso a paquetes y a la ruta de la clase

Añadir un nuevo directorio a la ruta de clases

Simular paquetes en ActionScript 1.0

Sólo un poco más de teoría



Capítulo 10. Excepciones

El ciclo de gestión de excepciones

Gestionar múltiples tipos de excepciones

Determinar la granularidad del tipo de excepción

Utilizar un único tipo de excepción personalizado

Utilizar mensajes de depuración configurables

Múltiples subclases BoxDimensionException personalizadas

Borboteo de excepciones

Excepciones no atrapadas

El bloque finally

Excepciones anidadas

Un error de excepción anidada

Control de los cambios de flujo en try/catch/actually

Limitaciones de la gestión de excepciones en ActionScript 2.0

Excepciones no comprobadas

Excepciones no incorporadas

Temas de rendimiento de excepciones

Del concepto al código





Parte II. Desarrollo de aplicaciones



Capítulo 11. Un esquema de una aplicación OOP

La estructura básica de directorios

El documento de Flash (archivo .fla)

Las clases

La línea de tiempo del documento

La película de Flash exportada (archivo .swf)

Proyectos en Flash MX Professional 2004

Veámoslo en acción



Capítulo 12. Utilizar componentes con ActionScript 2.0

Perspectiva general de la aplicación de conversión de moneda

Preparar el documento de Flash

Añadir componentes al documento

Iniciar la aplicación

La clase CurrencyConverter

Importar el paquete de componentes

Propiedades de CurrencyConverter

El método main( )

El constructor de clase

Crear la interfaz de usuario

El contenedor de la interfaz

El componente de título Label

El componente Label de instrucciones

El componente de entrada TextInput

El componente ComboBox currencyPicker

El componente botón convertButton

El componente de resultado TextArea

Conversión de moneda basada en la entrada del usuario

Exportar la aplicación final

Gestionar eventos de componentes



Capítulo 13. Subclases MovieClip

La dualidad de las subclases de MovieClip

Avatar: un ejemplo de una subclase de MovieClip

El clip de película AvatarSymbol

La clase Avatar

Unir AvatarSymbol a la clase Avatar

Crear instancias Avatar

Inicializar instancias Avatar

Avatar: la versión de composición

Temas con activos anidados

Propiedades y métodos de valores anidados inicialmente indefinidos

Valores anidados no reconocidos automáticamente por el compilador

Una nota sobre las subclases de MovieClip

Más y más curioso



Capítulo 14. Distribuir bibliotecas de clase

Compartir archivos de fuente de clases

Cargar clases en el tiempo de ejecución

Crear las clases de la biblioteca de clases

Crear el archivo .swf de la biblioteca de clase

Crear la película que carga el archivo .swf de la biblioteca de clases

Crear el archivo XML de exclusión

Pruébela

Compartir clases sin compartir archivos fuente

Tiempo de ejecución frente a momento de compilación

Crear una biblioteca de clases en el momento de la compilación sin fuentes

Crear las clases de la biblioteca de clases

Crear el icono del componente

Crear la clase de componente

Crear el componente

Distribuir el componente a los desarrolladores

Pruébelo

Crear una biblioteca de clases en el tiempo de ejecución sin fuentes

Resolver problemas OOP reales





Parte III. Ejemplos de patrones de diseños en ActionScript 2.0



Capítulo 15. Introducción al diseño de patrones

Haga salir a los patrones



Capítulo 16. El patrón de diseño Observer

Implementar Observer en ActionScript 2.0

Logger: un ejemplo Observer completo

La clase LogMessage

La clase OutputPanelView

La clase TextFieldView

La clase Logger

¿Mal uso de la herencia?

Utilizar la clase Logger

Temas de gestión de memoria con Observer

Más allá de Observer



Capítulo 17. El patrón de diseño Singleton

Implementar Singleton en ActionScript 2.0

El patrón Singleton de la clase Logger

Singleton frente a los métodos de clase y las propiedades de clase

Una advertencia contra los Singleton como globales

A las interfaces de usuario



Capítulo 18. El patrón de diseño Model-View-Controller(Modelo-Vista-Controlador)

La arquitectura general de MVC

La comunicación en MVC

Responsabilidades de clase en MVC

Responsabilidades del modelo

Responsabilidades de la vista

Responsabilidades del controlador

¿Qué crean las clases MVC?

Una implementación generalizada de MVC

La implementación View

La implementación del controlador

Un reloj MVC

La clase ClockModel

La clase ClockUpdate

Las clases ClockAnalogView y ClockDigitalView

La clase ClockTools

La clase ClockController

Reunir todo: La clase Clock

Exploración más lejana



Capítulo 19. El modelo de delegación de eventos

Estructura y participantes

El evento fuente

El objeto evento

El oyente evento

¿Son equivalentes el modelo Observer y el modelo de delegaciónde eventos?

El flujo de la lógica

Implementación del núcleo

La clase EventListenerList

La clase EventObject

La interfaz EventListener

NightSky: Un ejemplo del modelo de delegación de eventos

La fuente de eventos

La subinterfaz EventListener

La subclase EventObject

La clase oyente de eventos

La estructura global

Randomizer, RandomizerListener, y RandomizerEvent

Múltiples tipos de eventos desde una sola fuente de eventos

La clase NightSky

Utilizar NightSky en una aplicación

Otras arquitecturas de eventos en ActionScript

Desde un lugar a cualquier otro lugar





Parte IV. Apéndices



Apéndice A. Referencia rápida de lenguaje de ActionScript 2.0

Propiedades globales

Funciones globales

Clase Accessibility

Constructor

Métodos de clase

Clase Arguments (Extiende matriz)

Propiedades de instancia

Clase Array

Constructor

Propiedades de clase

Propiedades de instancia

Métodos de instancia

Clase Boolean

Constructor

Métodos de instancia

Clase Button

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase Camera

Constructor

Propiedades de clase

Propiedades de instancia

Métodos de clase

Métodos de instancia

Gestores de eventos

Clase Color

Constructor

Métodos de instancia

Clase ContextMenu

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase ContextMenuItem

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase Date

Constructor

Métodos de clase

Métodos de instancia

Clase Function

Constructor

Propiedades de instancia

Métodos de instancia

Clase Key

Constructor

Propiedades de clase

Métodos de clase

Eventos transmitidos a los oyentes

Clase LoadVars

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase LocalConnection

Constructor

Métodos de instancia

Gestores de eventos

Clase Math

Constructor

Propiedades de clase

Métodos de clase

Clase Microphone

Constructor

Propiedades de clase

Propiedades de instancia

Métodos de clase

Métodos de instancia

Gestores de eventos

Clase Mouse

Constructor

Métodos de clase

Eventos transmitidos a los oyentes

Clase MovieClip

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase MovieClipLoader

Constructor

Métodos de instancia

Eventos transmitidos a oyentes

Clase NetConnection

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase NetStream

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase Number

Constructor

Propiedades de clase

Clase Object

Constructor

Propiedades de clase

Propiedades de instancia

Métodos de clase

Métodos de instancia

Clase PrintJob

Constructor

Propiedades de instancia

Métodos de instancia

Clase Selection

Constructor

Métodos de clase

Transmisiones de eventos a los oyentes

La clase SharedObject

Constructor

Propiedades de instancia

Métodos de clase

Métodos de instancia

Gestores de eventos

Clase Sound

Constructor

Propiedades de instancia

Métodos de instancia

Gestores de eventos

Clase Stage

Constructor

Propiedades de clase

Métodos de clase

Eventos transmitidos a los oyentes

Clase String

Constructor

Propiedades de instancia

Métodos de clase

Métodos de instancia

Clase System

Constructor

Propiedades

Métodos

Clase System.capabilities

Constructor

Propiedades de clase

Clase System.security

Constructor

Métodos de clase

Clase TextField

Constructor

Propiedades de instancia

Métodos de clase

Métodos de instancia

Gestores de eventos

Eventos transmitidos a los oyentes

Clase TextField.StyleSheet

Constructor

Métodos de instancia

Gestores de eventos

Clase TextFormat

Constructor

Propiedades de instancia

Métodos de instancia

Clase TextSnapshot

Constructor

Métodos de instancia

Clase Video

Constructor

Propiedades de instancia

Métodos de instancia

Clase XML

Constructor

Propiedades de instancias

Métodos de instancia

Gestores de eventos

Clase XMLNode

Constructor

Propiedades de instancias

Métodos de instancia

Clase XMLSocket

Constructor

Métodos de instancia

Gestores de eventos

Apéndice B. Diferencias con ECMAScript Edición 4



Índice alfabético

Flash, el reconocido estándar para la creación de contenidos multimedia en la red, se está utilizando de manera progresiva para desarrollar aplicaciones basadas en Web. ActionScript 2.0 es una gran actualización al lenguaje de scripts o secuencias de comandos de Flash, que mejora de forma radical el desarrollo orientado a objetos mediante la formalización de la sintaxis y la metodología de la Programación orientada a objetos (OOP).



Más allá del uso de esta tecnología, esta obra cubre en detalle aspectos como la tipificación estricta, la selección de tipos, clases, objetos, métodos o propiedades, o la gestión de excepciones, proporcionándole todas las instrucciones necesarias para diseñar y estructurar su código de forma adecuada. Con una orientación eminentemente práctica, ActionScript 2.0 resulta además el aliado perfecto para ajustar y crear la arquitectura de un proyecto orientado a objetos, así como para comprender cómo los componentes de interfaz y las subclases de clip de película encajan en una aplicación de Flash bien estructurada.



Los desarrolladores de ActionScript descubrirán las diferencias en el desarrollo con las versiones 1.0 y 2.0, cómo actualizar el código heredado a ActionScript 2.0 y cómo obtener en definitiva el máximo partido de sus funciones esenciales y sus características OOP. Si es un desarrollador OOP con experiencia que viene de otro lenguaje como Java o C++, le mostrará además cómo adaptar su conocimiento a Flash.

Artículos relacionados

  • LA TRANSFORMACIÓN ELECTRÓNICA DE LA CONTRATACIÓN PÚBLICA. DE LA D
    SÁNCHEZ GARCÍA, ALFONSO
    Como es sabido, la contratación ocupa un lugar muy relevante entre las herramientas de que disponen los poderes públicos para realizar sus funciones, con una enorme influencia social y económica. Se presenta esta novedad cuyo contenido resulta, sin duda, de interés general y además goza de plenísima actualidad. Nada más acuciante para la opinión pública que lo que aquí se postu...
    En stock

    21,63 €

  • CURSO DE SQL
    MARTÍNEZ CRUZ, CARMEN / SERRANO CHICA, JOSÉ MARÍA
    SQL (Structured Query Language o Lenguaje Estructurado de Consultas) es un lenguaje que nos permite realizar consultas y gestionar datos en cualquier base de datos relacional. Desde su primera versión en 1986 hasta la actualidad, se ha convertido en el estándar más utilizado, gracias a su ubicuidad y facilidad de uso. Existen implementaciones de SQL en todos los Sistemas de Ges...
    En stock

    28,80 €

  • EL METAVERSO. UN VIAJE HACIA LA TIERRA DIGITAL
    KIM, SANGKYUN
    Jensen Huang dijo: Se acerca el metaverso en su discurso inaugural en una conferencia en octubre de 2020. Es el fundador y director ejecutivo de Nvidia, una empresa tecnológica multinacional que diseña y produce unidades de procesamiento gráfico para el mercado de la computación móvil. La palabra metaverso está formada por el prefijo meta y universo. Aunque no estemos muy famil...
    En stock

    25,48 €

  • DISEÑO DE APLICACIONES MEDIANTE EL USO INTENSIVO DE DATOS
    KLEPPMANN,MARTIN
    Los datos están en el centro de muchos desafíos que se presentan actualmente en el diseño de sistemas. Hay que resolver cuestiones complejas, como la escalabilidad, la coherencia, la fiabilidad, la eficiencia y el mantenimiento. Además, existe una abrumadora variedad de herramientas, incluyendo bases de datos relacionales, almacenes de datos NoSQL, procesadores de flujo o por l...
    En stock

    42,31 €

  • METAVERSO
    EDGAR MARTIN-BLAS MÉNDEZ
    BIENVENIDOS A UN VIAJE MÁS ALLÁ DE LA REALIDAD, BIENVENIDOS AL METAVERSO El metaverso es el nuevo Internet tridimensional que va a cambiarlo todo en el consumo digital. Una nueva dimensión hará que vivamos experiencias increíbles en lugares de ensueño nunca antes explorados. En ella sentiremos presencia, realizaremos actividades casi físicas y nacerán nuevos negocios y sectores...
    En stock

    19,18 €

  • FUNDAMENTOS BÁSICOS DE NVIDIA JETSO NANO
    JOSE MARCOS ARROYO RUIZ
    Si está interesado en la tecnología y en la inteligencia artificial, y quiere adentrarse con éxito en estas materias, ha dado con el libro indicado: la única guía completa que existe sobre NVIDIA Jetson Nano. Fundamentos básicos de NVIDIA Jetson Nano proporciona a lo largo de sus páginas un contenido que le resultará fácil, útil e imprescindible. Gracias a su lectura: 1. Sabrá...
    En stock

    12,45 €