VENTAJAS:
1- Las variables de tipo número y cadena, es decir las más usadas, se definen igual.
Ejemplo:
A = 1;
B = "Hola";
Es decir:
(Nombre de la variable) = (Valor de la variable);
No hay que escribir int al inicio ni cosas raras, y menos $ o cosas más raras.
Sobre otras variables no sé, no uso. Si quiero usar Boolean (que no le veo sentido) puedo usar números 0 o 1, y si quiero usar arrays uso lo que algunos llaman "variables sueltas", es decir en vez de esto:
MyArray = "Pedro", "Rodriguez", 99;
uso esto:
User1Data1 = "Pedro";
User1Data2 = "Rodriguez";
User1Data3 = 99;
O esto:
User1Nombre = "Pedro";
User1Apellido = "Rodriguez";
etc
2- Dichas variables se definen casi del modo más simple posible.
Eso sería algo como
(Nombre de la variable) (Valor de la variable)
A 1
B Hola
Este punto es muy parecido al anterior, pero no igual. Podría ser que en un lenguaje ambos tipos de variable se definan igual pero de un modo excesivamente complicado.
3- Dichas variables se pueden concatenar muy fácil.
Por ejemplo:
A = 1;
B = "Hola";
C = "Tachi";
AB = A+B;
BA = B+A;
B_C = B+" "+C;
Resultado:
AB = "1Hola"
BA = "Hola1"
B_C = "Hola Tachi"
No hay que usar una función rara como String.concat ni tampoco hay que convertir números en cadena.
...
Esto es más útil de lo que parece, ya que facilita o permite hacer referencias variables. Por ejemplo:
"Action"+(random(5)+1)();
No recuerdo exacto cual es la estructura del código, si requiere eval o no, pero el punto es que en el ejemplo se llama a una función distinta según el resultado del random, es decir se puede llamar a Action1, o Action2, etc.
También facilita o permite cosas como esta:
Código:
N = 0;
Repetir
N++
Resumen = "PuntosdevidadelPersonaje"+N;
set (Resumen, eval(Resumen)+500;
mientras N<10
Creo que conviene más llamar a las variables así: P1PdV, P2PdV, pero, aunque así sea más difícil de hacer lo que dije, se puede hacer.
4- Permite guardar todas las variables en un archivo, fácilmente.
Esto sólo existe hasta Macromedia Flash 5, luego lo han quitado y no sé cómo lo han sustituído, si es que lo han hecho. Es algo como:
fscommand ("save", "nombredelarchivo.extensión");
PROBLEMAS:
1- Si hay variables que no quieres que se guarden, las tienes que haber definido dentro de un objeto. No es mucho problema.
2- No se sabe cuando el archivo termina de guardarse. Idee una solución para eso pero no es sencilla ni segura. Igual, si es para guardar cosas al salir del programa, no le veo mucho problema.
3- Permite crear archivos sin nombre (si mal no recuerdo), borrar el contenido de otros, y no sé cuántas cosas más. Para algunos no es problema, pero bueno, puede causar problemas al PC si se usa mal.
Por esta función es que yo usaba MF5 SÍ O SÍ, porque las posteriores no la tienen, que yo sepa. Actualmente ya no me interesa tanto.
No sé otros programas cómo hacen esto, pero lo intenté con Python hace años y no me gustó, aunque no recuerdo por qué. Quizá es que para crear un archivo llamado ponele A1 usando nombres variables (como expliqué en el punto anterior) tenía que convertir los números a string o algo así, no sé.
5- Permite crear objetos, como botones o dibujos con animaciones, viendo cómo se verán en la pantalla, dibujando, sin tener que hacer todo eso con código.
De nuevo no sé cómo se hacen estas cosas con otros programas o lenguajes, pero por lo que leo... es como que no se hace, o es mucho más complicado. Exceptuando quizá Visual Basic, pero por algún motivo nunca me gustó, además de que instalarlo es bastante lioso.
Recuerdo haber instalado Oracle o algo así, una interfaz de Java, o no recuerdo qué, y se caía a pedazos de lo lenta que era pero que yo sepa no permitía agregar imágenes en una pantalla o cosas así. Lo único bueno que parecía tener es un autocompletar.
6- Es ultra liviano.
Incluso permite la opción de que ciertas capas no se vean, es decir, si tienen imágenes muy pesadas, no se ven, no se enlentece tanto (al editar, pero al ejecutarse puede que sí).
DESVENTAJAS:
1- Probablemente soy la única persona en el mundo que lo usa
Considerando que el código es fácil de usar, no le veo mucho problema, pero hay cosas que no se aprenden de un día para el otro. Por ejemplo hacer un botón que implique animación (no sólo un cambio cuando se lo señala/cliquea) me costó bastante, o quizá más bien no se me ocurrió al principio porque los botones no están configurados fácil para hacer eso.
Bueno, escucho más desventajas y acerca de los programas/lenguajes/interfases que uds usan
Saludos.