To Wert einer For-Schleife bearbeiten

  • Im Prinzip kann das ja nur so laufen, dass das Betriebssystem für den Pointer einen Zähler hinzufügt und schaut wenn es keine Referenzen mehr auf den Speicherbereich gibt.

    Was dazu führt, dass die Methode,

    Wöllte man also ein schnelles ReDim implementieren, müsste man die Arraydefinition speicherdynamisch per malloc() umschreiben und hätte dann noch die Aufgabe an der Backe immer schön dafür zu sorgen, dass der Speicher am Ende in jedem Fall per free() wieder freigeräumt wird und auch alle Pointer müssen immer schön nachgezogen werden bei Änderungen.

    Das tut Jon sich aus nachvollziehbaren Gründen nicht an, sondern macht es stattdessen einfach per Neudefinition und Umkopieren.

    (neuerdings?!) so gut wie immer verwendet wird.

    Was wiederum immer öfter bei sog. "Updates" diverser Programme dafür sorgt, dass man (ich hatte zu diesem Thema schon mehrere Postings erstellt) zwangsläufig zu dieser Fragestellung kommt ->

    also dass verkleinernde ReDims früher mal deutlich schneller waren. Aber vielleicht bilde ich mir das auch nur ein... :/

    Nein, du bildest dir da überhaupt nichts ein!

    Was aber im Endeffekt nichts anderes bedeutet, als dass die Software-Ersteller (darf sich so jemand überhaupt noch "Programmierer" schimpfen?!) aufgrund dessen, dass die Hardware etwas schneller geworden ist, nun "langsamen", weil leichter wartbaren und auch einfacher verständlichen Code verwenden, um sich das Leben einfacher zu machen. Die Möglichkeiten der Hardware werden nicht einmal ansatzweise ausgenutzt!

    Das fängt bei Algorithmen an und hört dann bei Implementierungen auf...

    Und da stupides Copy/Paste von Funktionen zum Tagesgeschäft geworden ist, muss ich niemand wundern, dass u.a. katastrophale Sicherheitslücken über Jahrzehnte weltweit in Software gegossen wird! Log4j ist nur eins von vielen Beispielen, ein durchaus lesbarer Artikel zu diesem Thema befindet sich hier.

    Das ist auch mein größter Kritikpunkt an den sog. "Open Source"-Verfechtern. Diejenigen, die am lautesten nach Open Source schreien machen das ja nicht um diesen Code auf Schwachstellen analysieren zu können, sondern um "billig" an ebendiese dann "kostenlos" verfügbaren Funktionen zu kommen!

    Und da die Hardwareentwickler sich glücklicherweise den Ar*** aufreißen um mittlerweile an physikalische Grenzen zu stoßen um die letzten x Promille an Geschwindigkeit aus dem Silizium zu quetschen kann man sich Softwareseitig nun beruhigt darauf konzentrieren, "einfachen" (langsamen) Code und Algorithmen einsetzen zu können....natürlich wird dadurch das Produkt im Endeffekt "besser", win-win, Halleluja!

    Im Bereich "Consumer 3D-Druck" ist das Problem systemimmanent! Die Hardware ist mittlerweile durch "cloning" extrem leistungsfähig und dabei noch preiswert. Die Qualität und Herstellgeschwindigkeit des Produkts, also des Ausdrucks, wird allerdings nicht (mehr) maßgeblich durch die Hardware bestimmt, sondern über die Innovation(en) der Software! Dabei tritt der gleiche Prozess auf, wie schon oben angesprochen bei den Sicherheitslücken. Die etablierten Hersteller der bspw. Slicing-Software müss(t)en, um die (Weiter)Entwicklung zu forcieren, überproportional viel Manpower und Ressourcen in Form von Forschung investieren, nur um dann festzustellen, dass das dann "neue" Feature innerhalb von Stunden weltweit "kopiert" und mit der Hardware aller anderen Hersteller benutzt wird!

    Wenn nun also mit dem Produkt kein Geld verdient werden kann, dann bleibt die Weiterentwicklung an einer Handvoll Freizeit-Enthusiasten hängen, die wiederum hoffen, über einige generierte Klicks auf deren Media-Accounts wenigstens einige Taler in die eigene Tasche gespült zu bekommen.

    Eventuelle "Fehler" in der Software, die, ein JUHUUUU an Open Source, nun "natürlich" auch von den etablierten Firmen verwendet wird, kann man nun glücklicherweise einem oder einer Handvoll "Freizeitprogrammierern" anlasten.....welch eine schöne Welt!

    Und wer sich jetzt fragt wieso weltweit führende Softwarehersteller in ihren Produkten trotz Verfügbarkeit von Zehntausenden an "Programmierern" jahrelang bekannte Bugs nicht fixen, dem empfehle ich weiterhin, "Clone" und "Open Source" zu benutzen!

    Wer nicht bereit ist, für Innovationen und Entwicklungen sowie Produktpflege und Support Geld auszugeben, der muss zwangsläufig damit leben, den Technologisch hinteren Teil der verfügbaren Möglichkeiten benutzen zu können!

    AutoIt ftw!!! :ironie:

    Einer der größten Elektronik-Hardwarehersteller der Welt hat dieses Problem dadurch gelöst, seine Hardware mit der Software zu verdongeln und so die User gezwungen, exorbitant viel Geld für die zugegebener Maßen gerechtfertigte Leistung an Gegenwert zu zahlen! :/ Geht also doch....