<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8649650290383848970</id><updated>2024-08-29T19:41:35.410-06:00</updated><category term="ActionScript a Fondo"/><category term="Conceptos Básicos"/><title type='text'>Curso de Action Script 3</title><subtitle type='html'>Este blog se dedica a traducir y complementar a manera de curso para cubrir a fondo el uso de un lenguaje en específico: ActionScript 3.0.&#xa;&#xa;El uso de las recomendaciones y código aqui mostrado es responsabilidad  de la persona que lo usa y este blog se deslinda de cualquier uso inapropiado, así como del daño que pudiese ser provocado por el uso del código que aquí se proporciona.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>7</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-7456354807531756986</id><published>2011-06-16T17:07:00.003-05:00</published><updated>2011-06-16T17:26:42.937-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Creando un programa</title><content type='html'>Como hemos visto anteriormente, los programas de &lt;b&gt;ActionScript&lt;/b&gt; están hechos a partir de clases, que son los planos de las partes (objetos) Inter-relacionadas de un programa.&lt;br /&gt;
&lt;br /&gt;
Típicamente, el desarrollo de un nuevo programa de &lt;b&gt;ActionScript&lt;/b&gt; comienza en la fase de diseño, durante la cual la funcionalidad del programa está dividida en un juego lógico de clases. Cada clase tiene un nombre, una serie de características y un papel que jugar en el programa completo.&lt;br /&gt;
&lt;br /&gt;
Una clase en particular es designada como la &lt;b&gt;clase principal&lt;/b&gt;. La &lt;b&gt;clase principal&lt;/b&gt; proporciona el punto de inicio, o punto de entrada de la aplicación. Para iniciar un nuevo programa el entorno Flash crea automáticamente una instancia de la clase principal del programa.&lt;br /&gt;
&lt;br /&gt;
En este curso crearemos un discreto juego de rol al estilo &lt;a href=&quot;http://www.zelda.com/&quot;&gt;&lt;i&gt;Zelda&lt;/i&gt;&lt;/a&gt;, ambientado en la época prehispánica americana y con una historia de aventuras. Para nuestro juego al que bautizaremos como &lt;i&gt;El cuarto sol&lt;/i&gt; nombraremos a la clase principal &lt;i&gt;CuartoSol&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Como primer paso para crear nuestro programa vamos a crear una carpeta en nuestro sistema de archivos llamada &lt;i&gt;cuartosol&lt;/i&gt;. Dentro de esta carpeta vamos a crear una subcarpeta llamada &lt;i&gt;src&lt;/i&gt; en la que almacenaremos todos nuestros archivos &lt;b&gt;.as&lt;/b&gt; (osea, todos los archivos fuente).&lt;br /&gt;
&lt;br /&gt;
El código de cada clase principal del programa debe colocarse en un archivo de texto llamado como la clase, incluyendo además la extensión &lt;b&gt;.as&lt;/b&gt;. Por lo tanto vamos a crear un archivo vacío llamado &lt;i&gt;CuartoSol.as&lt;/i&gt; tomando en cuenta las mayúsculas en el nombre, pues así corresponderá con el nombre de nuestra clase principal. Este archivo lo colocaremos en la ruta &lt;i&gt;cuartosol/src&lt;/i&gt;. Esta es una representación de nuestra estructura de archivos:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixyYEDv_4WQOCaOCpqC9nwhbOfthrbHTqCOSHm7iiUZYyUFuSmMKVAVaw9pjUBbCE0rwGvrW-RC-QWfDrNQ9pNsufivadY-7Z-vFZdIm9TZ-DWy79u3FAASzBsXaSmr0VVSSBb4wQcJnNq/s1600/actionscript_estructuradearchivos.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;96&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixyYEDv_4WQOCaOCpqC9nwhbOfthrbHTqCOSHm7iiUZYyUFuSmMKVAVaw9pjUBbCE0rwGvrW-RC-QWfDrNQ9pNsufivadY-7Z-vFZdIm9TZ-DWy79u3FAASzBsXaSmr0VVSSBb4wQcJnNq/s400/actionscript_estructuradearchivos.png&quot; width=&quot;348&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Con &lt;i&gt;CuartoSol.as&lt;/i&gt; creado podemos ya comenzar a escribir la clase &lt;i&gt;CuartoSol&lt;/i&gt;. En este punto pudiéramos enfrentarnos a un problema potencial: si hubiésemos escogido un nombre de clase principal que fuese igual a alguna clase ya existente en &lt;b&gt;ActionScript&lt;/b&gt; entonces nuestra clase no podría ser creada, y nuestro programa no seria capas de iniciar.&lt;br /&gt;
&lt;br /&gt;
Para evitar esta clase de conflictos de nombres en nuestro programa, haremos uso de los &lt;b&gt;paquetes&lt;/b&gt;. El tema de los paquetes lo iremos cubriendo mas adelante.&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;nota&quot;&gt;Aun hay mucho por hacer y por aprender antes de que seamos capaces de compilar nuestro programa. Recuerda siempre este momento en que tu programa es solo dos carpetas y un archivo vacío. Esto te dará  que pensar cuando te encuentres compilando cientos de archivos con miles de líneas cada uno.&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/7456354807531756986/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/7456354807531756986?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/7456354807531756986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/7456354807531756986'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/04/creando-un-programa.html' title='Creando un programa'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixyYEDv_4WQOCaOCpqC9nwhbOfthrbHTqCOSHm7iiUZYyUFuSmMKVAVaw9pjUBbCE0rwGvrW-RC-QWfDrNQ9pNsufivadY-7Z-vFZdIm9TZ-DWy79u3FAASzBsXaSmr0VVSSBb4wQcJnNq/s72-c/actionscript_estructuradearchivos.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-2500649932290468677</id><published>2011-04-04T11:09:00.003-05:00</published><updated>2011-04-04T11:32:37.330-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Clases y Objetos</title><content type='html'>Imaginen que están construyendo un avión totalmente nuevo. ¿Que proceso debieran seguir?. Antes de dirigirse a la ferretería a comprar tornillos deberían de hacer algunas cosas extras ¿o no?. Primero hay que dibujar un plano del nuevo avión, y uno por cada pieza del avión (ruedas, alas, motores, etc.). Cada plano debe de describir conceptualmente cada parte y corresponder a una parte actual en la encarnación física de nuestro avión. Para construir el avión, cada pieza se fabrica individualmente y después todas las piezas se ensamblan tal y como lo especifica el plano maestro y el comportamiento de todas las piezas en conjunto será lo que de a nuestro avión la capacidad de volar.&lt;br /&gt;
&lt;br /&gt;
Si todo esto te suena lógico, entonces ya tienes lo que más importa en la programación de &lt;b&gt;ActionScript&lt;/b&gt; (y en cualquier lenguaje &lt;a href=&quot;http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos&quot;&gt;OOP&lt;/a&gt;). Así como un aeroplano que surca los cielos es un conjunto de partes que cooperan entre si mismas siguiendo el diseño de un conjunto de planos, un programa es un grupo de &lt;b&gt;&lt;i&gt;OBJETOS&lt;/i&gt;&lt;/b&gt; que cooperan entre sí, basados en un conjunto de &lt;b&gt;&lt;i&gt;CLASES&lt;/i&gt;&lt;/b&gt;.&amp;nbsp;&amp;nbsp; los objetos de ActionScript representan tanto los objetos tangibles como los conceptos intangibles de un programa. Por ejemplo: un objeto puede representar un número en un cálculo, un botón oprimible en una interfaz de usuario, un punto en el tiempo de un calendario o el efecto de difuminado de una imagen. Los objetos son encarnaciones (&lt;i&gt;instancias&lt;/i&gt;) de sus respectivas clases. Las clases son los planos en los que se basan los objetos.&lt;br /&gt;
&lt;br /&gt;
El primer paso para escribir un programa es determinar sus clases. Cada clase describe, en código, las características y comportamiento de un &lt;i&gt;&lt;b&gt;TIPO&lt;/b&gt;&lt;/i&gt; particular de objeto. Algunas clases deben ser escritas desde la nada, mientras que otras ya son proporcionadas por ActionScript y los diferentes &lt;a href=&quot;http://cursoactionscript3.blogspot.com/2011/03/entornos-de-ejecucion-clientes-para.html&quot;&gt;Entornos de Ejecución Flash&lt;/a&gt;. Las clases escritas de la nada, conocidas cono clases personalizadas, son usadas para producir ciertos tipos de contenido especializado, como lo sería una orden de compra para una aplicación de ventas electrónicas, un auto en un juego de carreras o un mensaje en una aplicación de chat. Por el contrario, las clases proveídas por &lt;b&gt;ActionScript&lt;/b&gt; y los diversos entornos de desarrollo (conocidas como clases incorporadas), son usadas para realizar tareas fundamentales como lo son&amp;nbsp; el crear números y texto, reproducir sonidos, mostrar imágenes, accesar a la red y responder a maniobras del usuario.&lt;br /&gt;
&lt;br /&gt;
De las clases en un programa, creamos (&lt;i&gt;instanciamos&lt;/i&gt;) objetos, después les decimos lo que tienen que hacer, con lo cual determinamos el comportamiento de todo el programa.&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;nota&quot;&gt;Construir un programa utilizando clases y objetos es lo que llamamos &lt;a href=&quot;http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos&quot;&gt;Programación Orientada a Objetos (OOP)&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
En el próximo post comenzaremos con la construcción de un verdadero programa, pero antes de hacerlo vamos a dar una ligera mirada a un importante grupo de clases, conocidas como &lt;b&gt;&lt;i&gt;CLASES NATIVAS&lt;/i&gt;&lt;/b&gt;, las cuales están construidas directamente dentro de ActionScript.&lt;br /&gt;
&lt;br /&gt;
Las clases nativas que podemos ver en la siguiente tabla son usadas para manipular tipos básicos de información, como números y texto. Tengan por seguro que en sus programas usaran almenos una de estas clases, sin importar el tipo de programa que estén realizando. Consideren a estas clases como piezas prefabricadas, como las tuercas, tornillos y remaches de su avión que compran ya hechas a otro fabricante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sin más retraso aquí está la tabla:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.blogger.com/post-edit.g?blogID=8649650290383848970&amp;amp;postID=2500649932290468677&quot; name=&quot;tabla1&quot;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h4&gt;Clases Nativas en ActionScript&lt;/h4&gt;&lt;table class=&quot;tabla&quot;&gt;&lt;thead&gt;
&lt;tr&gt; &lt;th&gt;&lt;br /&gt;
Clase&lt;/th&gt; &lt;th&gt;&lt;br /&gt;
Descripción&lt;/th&gt; &lt;/tr&gt;
&lt;/thead&gt; &lt;tbody&gt;
&lt;tr class=&quot;row0&quot;&gt; &lt;th&gt;&lt;br /&gt;
string&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa datos Textuales (p.e. cadenas de carácteres)&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row1&quot;&gt; &lt;th&gt;&lt;br /&gt;
Boolean&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa a los estados lógicos verdadero (true) y falso (false)&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row0&quot;&gt; &lt;th&gt;&lt;br /&gt;
Number&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa números de punto flotante (números con un valor fraccionario)&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row1&quot;&gt; &lt;th&gt;&lt;br /&gt;
int&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa números enteros (que no tienen fracciones)&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row0&quot;&gt; &lt;th&gt;&lt;br /&gt;
uint&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa números enteros de valor positivo&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row1&quot;&gt; &lt;th&gt;&lt;br /&gt;
Array&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa una lista ordenada&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row0&quot;&gt; &lt;th&gt;&lt;br /&gt;
Error&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa un error del programa&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row1&quot;&gt; &lt;th&gt;&lt;br /&gt;
Date&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa un punto específico en el tiempo.&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row0&quot;&gt; &lt;th&gt;&lt;br /&gt;
Math&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa valores y operaciones matemáticas comunes.&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row1&quot;&gt; &lt;th&gt;&lt;br /&gt;
RegExp&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Define herramientas para buscar y reemplazar texto.&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row0&quot;&gt; &lt;th&gt;&lt;br /&gt;
Function&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Representa un juego de instrucciones reusables que pueden ser ejecutadas, o llamadas, repetivamente&lt;/td&gt; &lt;/tr&gt;
&lt;tr class=&quot;row1&quot;&gt; &lt;th&gt;&lt;br /&gt;
Object&lt;/th&gt; &lt;td&gt;&lt;br /&gt;
Define las características básicas de cada objeto en ActionScript&lt;/td&gt; &lt;/tr&gt;
&lt;/tbody&gt; &lt;/table&gt;&lt;br /&gt;
La próxima comenzaremos a crear un programa diseñado por &lt;a href=&quot;http://www.moock.org/&quot;&gt;Colin Moock&lt;/a&gt; para facilitar el aprendizaje de &lt;b&gt;ActioScript&lt;/b&gt;. Se trata de un zoológico virtual.&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;nota&quot;&gt;Usando la técnica conocida como &lt;i&gt;Scripting sobre línea de tiempo&lt;/i&gt; en la &lt;a href=&quot;http://www.adobe.com/mx/products/flash/&quot;&gt;herramienta de autoría Flash&lt;/a&gt;, es posible crear un programa de &lt;b&gt;ActionScript&lt;/b&gt; sin haber creado primero ninguna clase. Sin embargo, incluso si no quieres crear tus propias clases, deberías estudiar las técnicas presentadas en este blog. El entender como las clases son creadas te ayudará a adentrarte en &lt;b&gt;ActionScript&lt;/b&gt; y en general te convertirá en mejor programador o programadora.&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/2500649932290468677/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/2500649932290468677?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/2500649932290468677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/2500649932290468677'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/04/clases-y-objetos.html' title='Clases y Objetos'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-2848520201648952664</id><published>2011-03-27T00:01:00.001-06:00</published><updated>2011-03-27T00:01:00.678-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Compilación  al Vuelo</title><content type='html'>Cuando un programa de &lt;b&gt;ActionScript&lt;/b&gt; es ejecutado, el &lt;a href=&quot;http://cursoactionscript3.blogspot.com/2011/03/entornos-de-ejecucion-clientes-para.html&quot;&gt;entorno de ejecución&lt;/a&gt; lee por completo el &lt;a href=&quot;http://es.wikipedia.org/wiki/Bytecode&quot;&gt;ByteCode&lt;/a&gt; de &lt;b&gt;ActionScript&lt;/b&gt; y lo traduce en intrucciones de código máquina nativas, adaptadas específicamente para el hardware de la computadora en que está siendo ejecutado el progama. En muchos casos, el &lt;a href=&quot;http://es.wikipedia.org/wiki/Lenguaje_de_m%C3%A1quina&quot;&gt;código máquina&lt;/a&gt; es guardado para que este pueda ser usado de nuevo sin necesidad de que sea traducido nuevamente.&lt;br /&gt;
&lt;br /&gt;
Así como el &lt;a href=&quot;http://cursoactionscript3.blogspot.com/2011/03/compilacion.html&quot;&gt;convertir código de ActionScript a ByteCode&lt;/a&gt; le llamamos compilar, el proceso de traducir ese ByteCode a código máquina y guardarlo para su posterior ejecución es llamado de igual manera: compilación.&lt;br /&gt;
&lt;br /&gt;
Profundizando, la mayoría del código de &lt;b&gt;ActionScript&lt;/b&gt; se divide en dos niveles de compilación: Primero el desarrollador&amp;nbsp; compila el código fuente de su formato entendible por humanos&amp;nbsp; a un formato entendible por el entorno Flash (el bytecode de ActionScript), entonces, el entorno Flash compila&amp;nbsp; automáticamente a un formato entendible por el hardware que está ejecutando el programa (el código máquina nativo).&lt;br /&gt;
&lt;br /&gt;
Esta última etapa de compilación (byteCode a código Máquina) se conoce como Compilación al Vuelo o JIT por sus siglas en inglés (Just in Time). pues ocurre justamente en el momento en que el bytecode es requerido por el programa. A la compilación al vuelo se le llama también traducción dinámica.&lt;br /&gt;
&lt;br /&gt;
Los programadores experimentados se alegrarán saber que el código en el nivel más alto de una definición de clase&amp;nbsp; no se compila al vuelo, pues solo se utiliza una vez, lo cual representa una mejora en rendimiento si aprovechan esa característica e sus programas.</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/2848520201648952664/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/2848520201648952664?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/2848520201648952664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/2848520201648952664'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/03/compilacion-al-vuelo.html' title='Compilación  al Vuelo'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-829720253025342674</id><published>2011-03-26T13:45:00.001-06:00</published><updated>2011-03-26T14:34:53.757-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Compilación</title><content type='html'>Antes de que un programa &lt;b&gt;ActionScript&lt;/b&gt; pueda ser ejecutado por un &lt;a href=&quot;http://cursoactionscript3.blogspot.com/2011/03/entornos-de-ejecucion-clientes-para.html&quot;&gt;Entorno de Ejecución Flash&lt;/a&gt;, este debe de ser convertido desde el código &lt;b&gt;ActionScript&lt;/b&gt; &lt;b&gt;3.0&lt;/b&gt; entendible por humanos a un formato mucho más condensado, un formato binario que los &lt;a href=&quot;http://cursoactionscript3.blogspot.com/2011/03/entornos-de-ejecucion-clientes-para.html&quot;&gt;Entornos Flash&lt;/a&gt; puedan entender, conocido como &lt;a href=&quot;http://es.wikipedia.org/wiki/Bytecode&quot;&gt;ByteCode&lt;/a&gt; de &lt;b&gt;ActionScrip&lt;/b&gt; o &lt;i&gt;&lt;b&gt;ABC&lt;/b&gt;&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Por sí mismo, entonces, &lt;b&gt;ActionScript&lt;/b&gt; no puede ser ejecutado por los &lt;a href=&quot;http://cursoactionscript3.blogspot.com/2011/03/entornos-de-ejecucion-clientes-para.html&quot;&gt;Entornos de Ejecución&lt;/a&gt;, por lo que debe ser embotellado en un archivo contenedor binario al que se le conoce como &lt;i&gt;Archivo .swf&lt;/i&gt;. El &lt;i&gt;Archivo .swf&lt;/i&gt; almacena el &lt;a href=&quot;http://es.wikipedia.org/wiki/Bytecode&quot;&gt;ByteCode&lt;/a&gt; y cualquier agregado multimedia (imágenes, sonidos, videos, etc.)&amp;nbsp; requeridos por el programa ActonScript en un &lt;i&gt;Formato de Archivo Flash&lt;/i&gt;, o &lt;i&gt;SWF&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Al proceso de convertir un programa de &lt;b&gt;ActionScript&lt;/b&gt; a &lt;a href=&quot;http://es.wikipedia.org/wiki/Bytecode&quot;&gt;ByteCode&lt;/a&gt; le llamamos &lt;i&gt;compilación&lt;/i&gt;. El proceso de generar un archivo &lt;i&gt;.swf&lt;/i&gt; se le llama &lt;i&gt;encapsular&lt;/i&gt;, &lt;i&gt;exportar&lt;/i&gt; o &lt;i&gt;publicar&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Para compilar programas de &lt;b&gt;ActionScript 3.0&lt;/b&gt; y &lt;i&gt;archivos .swf&lt;/i&gt; utilizamos un módulo de software al que llamamos &lt;a href=&quot;http://es.wikipedia.org/wiki/Compilador&quot;&gt;compilador&lt;/a&gt;. Un &lt;a href=&quot;http://es.wikipedia.org/wiki/Compilador&quot;&gt;compilador&lt;/a&gt; que compila código de &lt;b&gt;ActionScript&lt;/b&gt; se le llama... se imaginan??... sí, acertaron: &lt;i&gt;&lt;b&gt;Compilador de ActionAcript&lt;/b&gt;&lt;/i&gt; y por si quedan dudas, a un compilador que genera archivos .swf se le conoce como &lt;i&gt;&lt;b&gt;Compilador SWF&lt;/b&gt;&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Cualquier &lt;i&gt;Compilador SWF&lt;/i&gt; que presuma de tener total soporte para el &lt;i&gt;Formato de Archivo Flash&lt;/i&gt; incluye un compilador de &lt;b&gt;ActionScript&lt;/b&gt;. Obviamente &lt;a href=&quot;http://www.adobe.com/products/flex/&quot;&gt;Flex Builder&lt;/a&gt; y &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash Autoring Tool&lt;/a&gt; comparten el mismo &lt;i&gt;compilador de ActionScript,&lt;/i&gt; pero tienen &lt;i&gt;compiladores SWF&lt;/i&gt; diferentes (&lt;i&gt;Compilador Flex&lt;/i&gt; y &lt;i&gt;Compilador Flash&lt;/i&gt; respectivamente).&lt;a href=&quot;http://www.adobe.com/&quot;&gt; Adobe&lt;/a&gt; también ofrece el &lt;i&gt;compilador Flex&lt;/i&gt; como una aplicación como un comando de consola llamado &lt;a href=&quot;http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_13.html&quot;&gt;mxmlc&lt;/a&gt;. El compilador &lt;a href=&quot;http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_13.html&quot;&gt;mxmlc&lt;/a&gt; se incluye en las herramientas de desarrollo libres de &lt;a href=&quot;http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK&quot;&gt;Adobe Flex SDK&lt;/a&gt;, disponibles en: &lt;a href=&quot;http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK&quot;&gt;http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Aunque &lt;a href=&quot;http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_13.html&quot;&gt;mxmlc&lt;/a&gt; solo está disponible para &lt;a href=&quot;http://www.microsoft.com/latam/windows/&quot;&gt;Windows&lt;/a&gt;, gracias ha que ha sido escrito en &lt;a href=&quot;http://www.java.com/&quot;&gt;Java&lt;/a&gt; es posible utilizarlo también en sistemas &lt;a href=&quot;http://www.apple.com/es/macosx&quot;&gt;Macintosh&lt;/a&gt; y &lt;a href=&quot;http://www.gnu.org/gnu/linux-and-gnu.es.html&quot;&gt;Linux&lt;/a&gt;. Dentro de un tiempo hablaremos sobre esto, pero si son poco pacientes pueden seguir &lt;a href=&quot;http://www.mikechambers.com/blog/2005/12/22/compiling-actionscript-3-and-mxml-on-mac-and-linux/&quot;&gt;estas instrucciones&lt;/a&gt; (en inglés) para poder compilar sus programas.</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/829720253025342674/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/829720253025342674?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/829720253025342674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/829720253025342674'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/03/compilacion.html' title='Compilación'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-6984897889955358126</id><published>2011-03-25T01:10:00.000-06:00</published><updated>2011-03-25T01:14:25.617-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Entornos de Ejecución Clientes para  Flash</title><content type='html'>Los programas escritos en ActionScript pueden ser ejecutados por tres aplicaciones de software&amp;nbsp; diferentes (producidos por &lt;a href=&quot;http://www.adobe.com/&quot;&gt;Adobe&lt;/a&gt;): &lt;a href=&quot;http://www.adobe.com/es/products/flashplayer/&quot;&gt;Flash Player&lt;/a&gt;, &lt;a href=&quot;http://www.adobe.com/products/air/&quot;&gt;Adobe AIR&lt;/a&gt; y &lt;a href=&quot;http://www.adobe.com/products/flashlite&quot;&gt;Flash Lite&lt;/a&gt;; además de diversas aplicaciones libres como: &lt;a href=&quot;http://www.gnu.org/s/gnash/&quot;&gt;Gnash&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.adobe.com/es/products/flashplayer/&quot;&gt;Flash Player&lt;/a&gt; ejecuta programas de ActionScript sobre un navegador web o en modo solitario sobre el escritorio. &lt;a href=&quot;http://www.adobe.com/es/products/flashplayer/&quot;&gt;Flash Player&lt;/a&gt; tiene muy poco acceso al sistema operativo, no puede manejar ficheros, controlar ventanas o acceder a la mayoría del hardware.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.adobe.com/products/air/&quot;&gt;Adobe AIR&lt;/a&gt; ejecuta programas ActionScript sobre el escritorio y tiene una integración completa con el sistema operativo, lo que quiere decir que este si puede manejar ficheros, controlar ventanas y tener acceso completo a todos los dispositivos (incluyendo juguetes para cibersexo) que tenga el usuario instalados en su equipo.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.adobe.com/products/flashlite&quot;&gt;Flash Lite&lt;/a&gt; ejecuta programas ActionScript sobre dispositivos móbiles, como PDAs, teléfonos celulares, tablets, consolas de videojuegos y un creciente número de etcéteras. Ofrece una mayor optimización en cuanto rendimiento y acceso a hardware específico de los dispositivos móviles, ya sea cámara, GPS, Vibrador o giroscopio.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.gnu.org/s/gnash/&quot;&gt;Gnash&lt;/a&gt; es la propuesta libre creada por &lt;a href=&quot;http://www.gnu.org/&quot;&gt;GNU&lt;/a&gt; que busca cumplir con todas las funciones de &lt;a href=&quot;http://www.adobe.com/es/products/flashplayer/&quot;&gt;Flash Player&lt;/a&gt;. Está diseñado para actuar en modo solitario o embebido en un navegador web y ofrece soporte casi completo para los programas compilados en un formato SWF v7 y algunas de SWF v8 y v9.&lt;br /&gt;
&lt;br /&gt;
En términos generales, &lt;a href=&quot;http://www.adobe.com/es/products/flashplayer/&quot;&gt;Flash Player&lt;/a&gt;, &lt;a href=&quot;http://www.adobe.com/products/air/&quot;&gt;Adobe AIR&lt;/a&gt;, &lt;a href=&quot;http://www.adobe.com/products/flashlite&quot;&gt;Flash Lite&lt;/a&gt; y &lt;a href=&quot;http://www.gnu.org/s/gnash/&quot;&gt;Gnash&lt;/a&gt; son conocidos como &lt;i&gt;Entornos de Ejecución Clientes para Flash&lt;/i&gt; (o &lt;i&gt;Entornos Flash&lt;/i&gt; para abreviar) porque estos manipulan programas ActionScript mientras lo ejecutan (&lt;i&gt;corren&lt;/i&gt;). Los &lt;i&gt;Entornos Flash&lt;/i&gt; están disponibles para &lt;a href=&quot;http://www.microsoft.com/latam/windows/&quot;&gt;Windows&lt;/a&gt;, &lt;a href=&quot;http://www.apple.com/es/macosx/&quot;&gt;Macintosh&lt;/a&gt; y &lt;a href=&quot;http://www.gnu.org/gnu/linux-and-gnu.es.html&quot;&gt;Linux&lt;/a&gt;. así como en una gran variedad de dispositivos móbiles. Debido a que los programas de ActionScript son ejecutados por un &lt;i&gt;Entorno Flash&lt;/i&gt;, no por un sistema operativo o dispositivo hardware específico, cada programa es considerado como &lt;a href=&quot;http://es.wikipedia.org/wiki/Multiplataforma&quot;&gt;multiplataforma&lt;/a&gt;, pues puede correr en diversas plataformas de hardware y sistemas operativos.&lt;br /&gt;
&lt;br /&gt;
En discusiones casuales, el término &lt;i&gt;Maquina Virtual de ActionScript&lt;/i&gt; es utilizado algunas veces como sinónimo de &lt;i&gt;Entorno de Ejecución cliente para Flash&lt;/i&gt;. Sin embargo existe una diferencia sustancial entre ambos términos y no deberían ser tomados como iguales.&lt;br /&gt;
&lt;br /&gt;
La &lt;i&gt;Maquina Virtual de ActionScript&lt;/i&gt; (AVM) es técnicamente el módulo de software dentro de &lt;a href=&quot;http://www.adobe.com/es/products/flashplayer/&quot;&gt;Flash Player&lt;/a&gt;, &lt;a href=&quot;http://www.adobe.com/products/air/&quot;&gt;Adobe AIR&lt;/a&gt; y &lt;a href=&quot;http://www.adobe.com/products/flashlite&quot;&gt;Flash Lite&lt;/a&gt; que ejecuta los programas de ActionScript. Pero cada Entorno Flash tiene también otras responsabilidades, como mostrar contenido en la pantalla, correr adio y video, comunicarse con el sistema operativo, etc. La versión específica de la Maquina virtual de ActionScript que ejecuta código ActionScript 3.0 se conoce como AVM2. La versión específica de la Máquina virtual de ActionScript que ejecuta código ActionScript 1.0 y 2.0 se conoce como AVM1. &lt;a href=&quot;http://www.gnu.org/s/gnash/&quot;&gt;Gnash&lt;/a&gt; utiliza &lt;a href=&quot;http://tulrich.com/textweb.pl?path=geekstuff/gameswf.txt&quot;&gt;gameswf&lt;/a&gt;&amp;nbsp; (se pronuncia &lt;i&gt;&quot;gueim esguaiff&quot;, &lt;/i&gt;no me hagan llamar al desarrollador para que les explique&lt;i&gt;)&lt;/i&gt; como Maquina Virtual y está liberado bajo una licencia de dominio público,&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.blogger.com/goog_1020859926&quot;&gt;En Noviembre de 2006 &lt;/a&gt;&lt;a href=&quot;http://www.blogger.com/goog_1020859926&quot;&gt;Adobe&lt;/a&gt;&lt;a href=&quot;http://www.adobe.com/aboutadobe/pressroom/pressreleases/200611/110706Mozilla.html&quot;&gt;&lt;i&gt; &lt;/i&gt;anunció&lt;/a&gt; la donación del código fuente de AVM2 a la &lt;a href=&quot;http://www.mozilla.org/foundation/&quot;&gt;Fundación Mozilla&lt;/a&gt; como parte del &lt;a href=&quot;http://www.mozilla.org/projects/tamarin/&quot;&gt;Proyecto Tamarind&lt;/a&gt;, que busca la creación de estándares de &lt;a href=&quot;http://es.wikipedia.org/wiki/C%C3%B3digo_abierto&quot;&gt;código abierto&lt;/a&gt;, con lo cual AVM2 se convirtió en un desarrollo de &lt;a href=&quot;http://es.wikipedia.org/wiki/C%C3%B3digo_abierto&quot;&gt;código abierto&lt;/a&gt; y su código fuente puede ser obtenido por medio de los repositorios del &lt;a href=&quot;http://www.mozilla.org/projects/tamarin/&quot;&gt;Proyecto Tamarind&lt;/a&gt;.</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/6984897889955358126/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/6984897889955358126?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/6984897889955358126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/6984897889955358126'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/03/entornos-de-ejecucion-clientes-para.html' title='Entornos de Ejecución Clientes para  Flash'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-6088261960565008503</id><published>2011-03-24T01:01:00.000-06:00</published><updated>2011-03-25T01:14:47.472-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Herramientas para escribir código en ActionScript</title><content type='html'>El código de ActionScript se escribe en texto plano, por lo tanto un programa de ActionScript puede ser creado sin nada más que un simple editor de texto como Notepad en windows, TexEdit en Macintosh o Emacs en Linux. Sin embargo, la mayoría de los programadores de ActionScript usan uno (o ambos) de las dos herramientas comerciales&amp;nbsp; producidas por Adobe Systems Incorporated: &lt;a href=&quot;http://www.adobe.com/products/flashbuilder/&quot;&gt;Flex builder&lt;/a&gt; y &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash authoring tool&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.adobe.com/products/flashbuilder/&quot;&gt;Flex Builder&lt;/a&gt; es un &lt;a href=&quot;http://es.wikipedia.org/wiki/Entorno_de_desarrollo_integrado&quot;&gt;Entorno de Desarrollo Integrado&lt;/a&gt; (IDE por sus siglas en inglés). Un IDE es una aplicación que sirve para escribir y manipular código, mucho mejor que un procesador de textos que solo fue diseñado para crear documentos imprimibles. Los desarrolladores usan &lt;a href=&quot;http://www.adobe.com/products/flashbuilder/&quot;&gt;Flex builder &lt;/a&gt;para crear aplicaciones de software y contenido multimedia utilizando ya sea&amp;nbsp; ActionScript o &lt;a href=&quot;http://es.wikipedia.org/wiki/MXML&quot;&gt;MXML&lt;/a&gt;... o ambos. &lt;a href=&quot;http://es.wikipedia.org/wiki/MXML&quot;&gt;MXML&lt;/a&gt; es un lenguaje basado en &lt;a href=&quot;http://es.wikipedia.org/wiki/XML&quot;&gt;XML&lt;/a&gt; usado para describir interfaces de usuario.&lt;br /&gt;
&lt;br /&gt;
En contraste, &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash authoring tool&lt;/a&gt; tiene un diseño híbrido, es un editor de animación y de programación. Los desarrolladores usan &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash authoring tool&lt;/a&gt; para crear aplicaciones de software y contenido multimedia combinando con el código ActionScript con gráficos dibujados manualmente, animación y agregados multimedia.&lt;br /&gt;
&lt;br /&gt;
ActionScript 3.0 es soportado por&amp;nbsp;&lt;a href=&quot;http://www.adobe.com/products/flashbuilder/&quot;&gt;Flex Builder&lt;/a&gt; 2 o superior y por Flash CS3 Versión 9 de &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash authoring tool&lt;/a&gt;) o superior, para obtener una copia de &lt;a href=&quot;http://www.adobe.com/products/flashbuilder/&quot;&gt;Flex Builder&lt;/a&gt;puedes visitar &lt;a href=&quot;http://www.adobe.com/products/flex/&quot;&gt;http://www.adobe.com/products/flex/&lt;/a&gt;. Para obtener una copia de &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash authoring tool&lt;/a&gt;  visita &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;http://www.adobe.com/products/flash/.&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
La mayor parte del contenido de este blog se basa en la creación de aplicaciones de software y contenido multimedia utilizando solamente ActionScrip, No se abordará mucho sobre su uso dentro de &lt;a href=&quot;http://www.adobe.com/products/flash/&quot;&gt;Flash authoring tool&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/6088261960565008503/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/6088261960565008503?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/6088261960565008503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/6088261960565008503'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/03/herramientas-para-escribir-codigo-en.html' title='Herramientas para escribir código en ActionScript'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8649650290383848970.post-5888121753157887689</id><published>2011-03-23T13:07:00.000-06:00</published><updated>2011-03-25T01:14:59.501-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ActionScript a Fondo"/><category scheme="http://www.blogger.com/atom/ns#" term="Conceptos Básicos"/><title type='text'>Introducción</title><content type='html'>Un programa es un juego de instrucciones escritas para ser ejecutadas por una computadora o una aplicación de software. El texto escrito en lenguaje entendible por los humanos se conoce como &quot;código fuente&quot; o simplemente &quot;código&quot;. La persona que crea un programa es llamado &quot;programador&quot; o &quot;desarrollador&quot;. Cada&amp;nbsp; programa está escrito en un lenguaje de programación en particular, de la misma manera en que cada libro está escrito en un lenguaje en particular (español, inglés, frances, etc.).&lt;br /&gt;
&lt;br /&gt;
El lenguaje de programación indica la sintaxis y gramática que los programadores deberán usar para dar forma a las instrucciones&amp;nbsp; del programa que están creando.&lt;br /&gt;
&lt;br /&gt;
Este blog se dedica a traducir y complementar a manera de curso para cubrir a fondo el uso de un lenguaje en específico: ActionScript 3.0.&lt;br /&gt;
&lt;br /&gt;
Los temas serán tratados a fondo, la mayoría de los textos son traducidos desde el idioma inglés y no se proporciona ninguna garantía sobre su contenido. El uso de las recomendaciones y código aqui mostrado es responsabilidad&amp;nbsp; de la persona que lo usa y este blog se deslinda de cualquier uso inapropiado, así como del daño que pudiese ser provocado por el uso del código que aquí se proporciona.&lt;br /&gt;
&lt;br /&gt;
Este blog tiene un propósito meramente educativo y no busca interés económico alguno.&lt;br /&gt;
&lt;br /&gt;
Suerte y feliz lectura.</content><link rel='replies' type='application/atom+xml' href='http://cursoactionscript3.blogspot.com/feeds/5888121753157887689/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8649650290383848970/5888121753157887689?isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/5888121753157887689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8649650290383848970/posts/default/5888121753157887689'/><link rel='alternate' type='text/html' href='http://cursoactionscript3.blogspot.com/2011/03/introduccion.html' title='Introducción'/><author><name>Paynalton</name><uri>http://www.blogger.com/profile/12465798166045858389</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>