Ich habe ein Flash-Projekt und es hat viele Quelldateien. Ich habe eine ziemlich stark genutzte Klasse, nenne sie Jenine. Ich habe Jenine kürzlich (und vielleicht gefühllos) von einem Namespace in einen anderen verlegt. Ich dachte wir wären bereit - ich dachte es wäre Zeit. Die neue Jenine war in jeder Hinsicht besser - sie hatte etwas aufgeblähtes Code verloren, sie hatte sich von einigen Klassenresten entkoppelt und sie war endlich zu dem Namespace zurückgekehrt, von dem sie immer heimlich gewusst hatte, dass er derjenige war, den sie wirklich war gehörte zu. Sie war unter ihrer eigenen Art.
Leider hätte Flash nichts davon. Vielleicht hatte es einen Eigensinn gebildet. Vielleicht wollte es nicht, dass Jenine entkoppelt wurde. In jedem Fall hielt es an der alten, perfekten Version von Jenine fest. Es weigerte sich weiterzumachen. Es ignorierte ihre (Funktions-) Aufrufe. Es versuchte, ihre neuen öffentlichen Schnittstellen zu vergessen. Stattdessen war jede Instanz von Jenine, die sie konstruierte, bis auf ihren Klassenpfad immer eine Kopie der alten Version:
var jenineInstance:Jenine = new Jenine();
trace( getQualifiedClassName(jenineInstance));
// Should print: com.newnamespace.subspace::Jenine
// Prints: com.oldnamespace.subspace::Jenine
// Ah, young love!
Wir kämpften. Ich bin nicht stolz auf einige der Dinge, die ich gesagt oder getan habe. Am Ende habe ich in einem gewaltigen Wutanfall alle Referenzen von Jenine vollständig gelöscht. Sie wurde vollständig aus dem System gelöscht. Mein Cursor fiel auf die Menüoption "Leerer Papierkorb" wie der kalte Deckel eines Sarges.
Ich glaube nicht, dass sich Flash jemals erholt hat. Bis heute erinnert es an Jenine. Ihre alten, unvollkommenen Definitionen schweben immer noch wie verlassene Geister durch mein Projekt. Immer wenn ich Flash zum Kompilieren zwinge, fügt es sie liebevoll in meinen Film ein und schmiegt ihre Definition wie einen kleinen Schrein in die anderen lebenden Klassen. Ich frage mich, ob sie sie sehen können.
Flash und ich reden nicht mehr wirklich. Ich schreibe meinen Code, er kompiliert ihn. Es gibt ein neues Mädchen in der Stadt namens Summer, das fast identisch mit Jenine aussieht, als hätte jemand gerade ihren Quellcode-Großhandel in eine neue Klasse kopiert, aber Flash hat kein Interesse gezeigt. An den meisten Tagen macht es sich nur Sorgen und schreibt schlechte Gedichte in meine Kommentare, wenn es denkt, dass ich nicht hinschaue.
Ich hoffe, niemand anderes hat eine ähnliche Erfahrung gemacht, dass dies nur eine einzigartige, schmerzhafte Welle in der schrecklichen dunklen Lagune ist, die die Flash-Codebasis darstellt. Hat jemand eine Idee, wie der vom Compiler verwendete Cache gelöscht werden kann?