The Language for Motion. Motivação Linguagem de fácil manipulação para objetos gráficos. ...
Transcript of The Language for Motion. Motivação Linguagem de fácil manipulação para objetos gráficos. ...
ActionScriptActionScriptThe Language for Motion
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.
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.
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%)
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;
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)
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)
Implementação
Flash Player: Único compilador para ActionScript;
AVM1; AVM2; JIT – Just In Time; Player 5 e 6; Player 7 e 8; Player 9.
Ambiente de Desenvolvimento As principais ferramentas de
desenvolvimentos atualmente são:Flash CS3
Ambiente de Desenvolvimento Flex Builder
Exemplos de Programa (1/3) Exemplo actionScript 1.0
on(rollOver){
gotoAndStop(15);
}
on(rollOut){
setProperty(“myMovieClip”, _alpha, 40);
}
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;
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);
}}
}
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;
Desvantagens
Códigos não legíveis; Falta de laços seguros; ‘Variáveis Persistentes’; Segurança no compilador;
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);