Flash <-> JS Mysteries resolved....
hier gibt es ja ein paar Halbweisheiten, Gerüchte und Wahrheiten über beide Sprachen, also hier die kurze, ultimativ subjektiv, objektive Übersicht was dem geht und was nicht:
Sprachliche Syntax:
völlig identisch - beides ECMA-basiert und ein JS Programmierer kann auch AS programmieren und umgekehrt, ohne groß eine neue Syntax lernen zu müssen (wie z.B. bei Java <-> JS)
DOM / Standard-Funktionen / Bibliotheken:
Hier schlägt Flash JS um Längen, da Flash durch seinen proprietären Player mit sehr viel mehr Möglichkeiten ausgestattet werden kann, als sein Bruder.
Einige der Funktionen in Flash sind reine Vereinfachungen oder Abbilungen der einzelnen Objekte auf der Bühne, andere dienen der Serverkommunikation oder dem XML Parsing, usw.
JS bietet lediglich lokale Funktionen und Zugriffsmöglichkeiten auf Objekte innerhalb der Seite.
OOP:
können beide, allerdings habe ich bisher erst einmal OOP JS gesehen (
http://forum.jswelt.de/showthread.php?s=&threadid=9051), i.d.R. ist das die extreme Ausnahme, was eigentlich schade ist. Hier hat JS mehr Potential, als viele ihm zutrauen. Vermutlich liegt es daran, daß die meisten Skripter da 1.) völlog ahnungslos sind und 2.) eher mehr die Gelegenheitsscripter sind, die von OOP noch nie gehört haben.
In AS kann man auch prozedural Programmieren, aber OOP ist da für die aufwändigeren Sachen fast schon Pflicht. Flash entwickelt sich in Richtung Rich Client for Internet Applications und d.h. hier wird mehr und mehr auf traditionelles Software Engineering gesetzt.
Beim Wechsel von AS nach JS oder unmgekehrt muß der Programmierer in beiden Fällen die Funktionen und das DOM der neuen Sprache kennenlernen, wobei das beim Übergang nach Flash länger dauert, weil allein schon der Sprachumfang größer ist. Aber ein AS Programmierer kann fast sofort JS coden, ein JS Coder muß sich zusätzlich noch OOP aneignen, damit er auf Dauer mithalten kann.
DB:
keine der beiden Sprachen kann nativ auf DBs zugreifen. Flash kann Daten z.B. per XML einlesen und damit offline ein echtes DBMS simulieren, bzw. online über entsprechende Serverskripte auf eine echte DB zugreifen. JS hat diese Möglichkeiten nicht, da es keine Serverkommunikation aufbauen kann (der fehlende XML Parser ließe sich in JS nachrüsten, wenn auch mit Performance-Einbußen).
Animationen:
Auch hier hat Flash enorme Vorteile gegenüber JS, da hier die Möglichkeiten viel größer sind, und vor allem das DOM immer gleich bleibt, egal welcher Browser den Content anzeigt. Außerdem sind nahezu alle Objekte für alle möglichen Spielereien zugänglich, was bei JS nur mit Tricks oder gar nicht geht (Skalieren, Drehen, Alpha, Färben, Maskieren, usw.).
Marktdurchdringung:
Flash 6 hat eine Durchdringung von 70 %; Flash 5: 90 % (
http://www.macromedia.com/software/player_census/flashplayer/ )
Prototyping:
Selbst wenn man nachher eine HTML Seite basteln will, kann man in Flash RuckZuck ein Layout, eine Oberfläche zusammenklicken und pinseln, wo man sich in Dreamweaver oder jedem anderen Tool einen abbrechen muß, da man in Flash nicht auf Frames, Tabellen oder was auch immer unbedingt sofort achten muß (im Hinterkopf haben schon!). Klaro geht auch Photoshop (jeder wie er will

)
Componenten:
Durch die neuen Flash Komponenten ab Flash MX kann man Dialoge und Masken sehr einfach und schnell in Flash abhandeln. Die HTML Pendants dagegen sehen immer gleich aus (sicher man kann die Farbe ändern *gähn*), sie bieten auch weniger Funktionalität (dafür sind sie performanter). Flash Komponenten sind voll "skinnable" und bieten kompletten Zugriff per Skript, inklusive der Möglichkeit per Vererbung oder Komposition Komponenten zu erweitern und auf spezielle Aufgaben zuzuschneiden.
so mehr fällt mir grad ned ein....
wär' fast was für 'ne Flash FAQ
