2012-02-03 14 views
6

Estoy creando una biblioteca en AS3. Dentro de la biblioteca hago uso de un conjunto de clases/paquetes que no necesitan ser expuestos al usuario final de mi lib. Quiero exponer solo una de estas clases.Cómo empaquetar la biblioteca en ActionScript3 (¿equivalente a .jar?)

Creo que mis preguntas son:

1) ¿Cómo se distribuyen las bibliotecas comúnmente en AS3?

2) ¿Existe un equivalente de .3 en AS3 que los desarrolladores puedan incluir, pero solo tendrá acceso/conocimiento de las clases que he declarado como públicas?

Gracias!

+0

@see: http://stackoverflow.com/questions/6041832/what-is-the-best-way-to-distribute-as3-classes-and-packages/6045196#6045196 – JonnyReeves

Respuesta

5

Las bibliotecas AS3 se llaman SWCs. Al igual que los JAR, solo son archivos ZIP con algunos metadatos incluidos. Puede compilar bibliotecas mediante proyectos de biblioteca de Flash Builder o compilador mxmlc en Flex SDK, que se describe, por ejemplo, here.

La buena práctica es distribuir SWC o el código fuente. Con documentos o archivo Léame, por supuesto.

+0

¿Es posible crear un Archivo SWC sin usar el marco de Flex? Solo quiero barebone AS3. –

+0

no lo es, a menos que tenga Flash IDE. – Lucas

+4

@AndyHin, necesita el compilador de Flex para compilar el SWC, pero no tiene que incluir el marco Flex (no lo hará si no hizo referencia a él en su código). –

3

¿Es posible crear un archivo SWC sin utilizar el marco Flex? Sólo quiero bare-bone AS3.

Sí, no estamos obligados a utilizar flex, de hecho, Adobe ni siquiera admite Flex como su producto oficialmente ya que ahora es un proyecto de apache de código abierto. http://blogs.apache.org/flex/

El compilador para flash es de código abierto y de uso gratuito, es por eso que hay muchos IDE de terceros y herramientas de desarrollo que también pueden producir bibliotecas SWC. El compilador solo requiere un archivo xml especial en un zip para hacer un swc. Entonces, si quiere evitar hacerlo manualmente según las especificaciones, solo es cuestión de elegir una forma de gui para hacerlo.

Uno de los más populares uno de código abierto gui maneras atm creo que es Flash Develop http://www.flashdevelop.org/ que tiene un complemento para hacer lo que quieras. http://www.flashdevelop.org/community/viewtopic.php?f=4&t=2987 Este IDE es muy recomendable, pero si necesita algo más multiplataforma, recomiendo Intellij Idea, que es un gran as3 y Java ide, ya que sabe qué archivos jar son.

"¿solo tengo acceso/conocimiento de las clases que he declarado como públicas?"

Las clases en su swc no serán diferentes de ser parte de su proyecto principal, por lo que si crea un swc con público o privado, será público o privado de la misma manera. Para ser honesto, aunque la mayoría de los códigos compartidos por blogs y repositorios en la comunidad son solo archivos raw * .as, swc es útil, sin embargo, para bibliotecas compartidas en un equipo y puede hacerlo más organizado.

+1

de interés, un archivo .swc es simplemente una carpeta comprimida que contiene un .swf con el código .as incrustado y un archivo .xml. puede cambiar el nombre de mySwc.swc a mySwc.zip y luego descomprimirlo para revelar estos contenidos. Además, aquí es donde puede acceder a.swf file para descompilar utilizando uno de varios decompiladores flash gratuitos, por lo que el uso de .swc como medio para proteger su código se evita fácilmente. – TheDarkIn1978

+0

sí, obviamente no fue diseñado para "proteger" su código. Parece que proteger tu código as3 en general solo se puede hacer haciéndolo más difícil, no imposible de reutilizar para otros. Busque en las herramientas que ofuscan y alteran el swf de su código compilado. – imp

Cuestiones relacionadas