Tach!
CDN nutze ich grundsätzlich nicht. Ich lade die Sachen immer auf den eigenen Server, da die Ladezeiten einfach deutlich geringer sind. :) Vor allem wenn dann mal einer der CDN-Server ausfällt, hat man ein echtes Problem.
Gegen Ausfälle gibts Lösungen, à la: wenn nach dem Laden aus dem CDN das jQuery-Objekt nicht vorhanden ist, lädt man eben vom eigenen Server nach.
Und das ist ein klassisches Beispiel, wo die Schuld nicht im Framework zu suchen ist.
Oh, ich habe mich vermutlich falsch ausgedrückt, das wollte ich nicht tun. Mit reinem JavaScript wäre es vermutlich noch chaotischer. :-)
Auch dann wäre nicht die Programmiersprache schuld.
[...] Da wäre es natürlich gut, es möglichst modular zu machen. Oder gar ein Programm, dass überprüft was ich überhaupt nutze und alles ungenutzte rauswerfen, quasi Vorkompilieren – gibt es da etwas in der Art?
Aufwand und Nutzen. Beim Modularisieren wacht der Mensch darüber, dass die Komponenten sauber getrennt geschrieben werden und definiert eventuelle Abhängigkeiten. Natürlich kann man dem Compiler oder wem auch immer auftragen, ungenutzte Teile zu erkennen und zu entfernen. Das ist aber nur bei den Systemen einfach möglich, wo der Compiler genau sagen kann, worauf sich ein Ausdruck bezieht. Wenn man Magic Strings verwenden kann, um irgendwelche Funktionalität zu referenzieren, dann wirds sehr schwierig.
Beim Browser ist das aber nicht das große Problem, da dieser ja nur einmal geladen werden muss.
Genau deshalb versucht man, dass Bibliotheken auch nur einmal geladen werden müssen.
dedlfix.