The Language for Motion. Motivação Linguagem de fácil manipulação para objetos gráficos. ...

16
ActionScript ActionScript The Language for Motion

Transcript of The Language for Motion. Motivação Linguagem de fácil manipulação para objetos gráficos. ...

Page 1: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

ActionScriptActionScriptThe Language for Motion

Page 2: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Motivação Linguagem de fácil

manipulação para objetos gráficos.

Atualmente Orientada a Objetos.

Executada sobre uma máquina virtual que está “instalada em 98% das maquinas com acesso a internet” (Millward Brown). Grande capacidade de portabilidade.

Page 3: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Breve História 2000 - Lançamento do Flash Player 5 com

ActionScript.

2002 - Lançamento do Flash Player 6 com ActionScript 1.0 e a inclusão de manipuladores de eventos e primitivas gráficas.

2003 - Lançamento do Flash Player 7 veio com a atualização. ActionScript 2.0.

2005 - Liberação do Flash Player 8 que extende o ActionScript 2.0 adicionando novas bibliotecas.

2007 - Lançamento do Flash Player 9 que vem com o novo ActionScript 3.0 e o advento da nova máquina virtual, chamado AVM2.

Page 4: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Paradigma de Programação    ActionScript 1.0 - programação

procedural, baseada em protótipos, conceitos básicos de OO;

ActionScript 2.0 - programação procedural e com mais conceitos de OO;

ActionScript 3.0 - programação OO (100%)

Page 5: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Sintaxe

Aplicativo servidor sem while; Comandos onEnterFrame (tipo diferente

de laço); Comandos eval(str:String); Objeto Boolean; Array extensível em tamanho; Array extensível em tipos; Tipo Function;

Page 6: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Especificação ActionScript 3 Bible by Roger Braunstein,

Mims Wright, Joey Lott, and Josh Noble (Paperback - Sep 18, 2007)

ActionScript 3 in Adobe Flash CS3 Professional Hands-On Training by Todd Perkins (Paperback - Sep 10, 2007)

Beginning ActionScript 2.0 (Wrox Beginning Guides) by Nathan Derksen and Jeff Berg (Paperback - April 24, 2006)

Page 7: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Utilização Aplicativos Web Jogos Web Jogos para Dispositivos Móveis (utiliza-se o

Flash Lite que é o ActionScript 2.0 adaptado para Mobiles)

Aplicativos RIA (Rich Internet Aplications), indicado apenas para ActionScript 3.0

Sites com grande interatividade Animações programadas Manipulação de Vídeos (YouTube)

Page 8: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Implementação

Flash Player: Único compilador para ActionScript;

AVM1; AVM2; JIT – Just In Time; Player 5 e 6; Player 7 e 8; Player 9.

Page 9: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Ambiente de Desenvolvimento As principais ferramentas de

desenvolvimentos atualmente são:Flash CS3

Page 10: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Ambiente de Desenvolvimento Flex Builder

Page 11: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Exemplos de Programa (1/3) Exemplo actionScript 1.0

on(rollOver){

gotoAndStop(15);

}

on(rollOut){

setProperty(“myMovieClip”, _alpha, 40);

}

Page 12: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Exemplos de Programa (2/3) Exemplo actionScript 2.0var myArray:Array = new Array ("Hello", "ActionScript", 3, 7, 11, "Flash");Array.prototype.pickNumber = function():Number {

var rand:Number = random(this.length);return (typeof (this[rand]) == "number") ? this[rand] : this.pickNumber();

};Array.prototype.pickString = function():String {

var rand:Number = random(this.length);return (typeof (this[rand]) == "string") ? this[rand] : this.pickString();

};

var num:Number = myArray.pickNumber();var str:String = myArray.pickString();_root.createTextField ("txt", 1, 10, 10, 530, 390);txt.text = "Array = "+myArray+"\nRandom Number = "+num+"\nRandomString = "+str;

Page 13: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Exemplos de Programa (3/3)package {

import flash.display.Sprite;import flash.text.TextField;import flash.filters.DropShadowFilter;public class HelloWorld2 extends Sprite {

public function HelloWorld2() {var shad:DropShadowFilter = new DropShadowFilter (2, 45, 0x000000, 25,

3, 3, 2, 2);var txt:TextField = new TextField();txt.textColor = 0xFFFFFF;txt.filters = [shad];txt.width = 120;txt.x = Math.random()*300;txt.y = Math.random()*300;txt.selectable = false;txt.text = "Hello World welcome! ["+Math.round(txt.x)+","+Math.round(txt.y)

+"]";addChild(txt);

}}

}

Page 14: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Vantagens

Desenvolvimento flexível e dinâmico; Leveza dos aplicativos; Fácil aprendizado por iniciantes; Praticidade em interfaces gráficas; Portabilidade para dispositivos móveis;

Page 15: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Desvantagens

Códigos não legíveis; Falta de laços seguros; ‘Variáveis Persistentes’; Segurança no compilador;

Page 16: The Language for Motion. Motivação  Linguagem de fácil manipulação para objetos gráficos.  Atualmente Orientada a Objetos.  Executada sobre uma máquina.

Conclusão

Notável evolução;Desde protótipo até OO

Cada vez mais procurado pelo mercado; Expansão na Web; Crescimento em robustez; Aumento de performance (10 vezes); Expansão para softwares corporativos

(Adobe Flex);