![]() |
Re: Das wohl beste Schlange der Welt
Zitat:
> kleines Update ... so alle 60 Sekunden taucht noch ein nettes [?] auf, welches nette sachen macht Wobei 3000 Zeilen davon nur die Klassendefinition (das Interface) abfallen Und wenn man den Code wirklich optimiert, dann sollte man bestimmt locker die 300 Zeilen unterschreiten können :) ich editiere es oben dann gleich auch noch (es sind ja nun 4 Timer und 3102 Images, was fast das Maximum ist, was D7 noch schafft) und 'ne nette 15 MB kleine DFM |
Re: Das wohl beste Schlange der Welt
Zitat:
(Oder alternativer Contest: Wer schreibt das coolste Snake Programm mit <= 300 Zeilen Code.) Erinnert mich an die Scene-Contests mit ![]() |
Re: Das wohl beste Schlange der Welt
![]() |
Re: Das wohl beste Schlange der Welt
Zu den Images: Ich hatte letztens ein C# Projekt im VS2008 wo ich versucht habe, 16 Buttons mit Bildern zu füttern. Ging nicht. Die letzten 5 gingen partout nicht rein (man konnte nicht mehr speichern wg. einer OutOfMemory-Exception) Es waren Bilder einer Digitalkamera, also zugegebenermaßen hochaufgelöst.
Ich musste die dann erst verkleinern bevor alles lief :roll: Btw.: Die Bilder wurden base64-encodiert in einer XML-datei gespeichert ... |
Re: Das wohl beste Schlange der Welt
Zitat:
Btw. Himitsu, du bist nicht damit gemeint. MfG |
Re: Das wohl beste Schlange der Welt
Himitsu, wenn das ein Beispiel sein soll, wie man es nicht macht, dann könntest Du ja dieses Beispiel nehmen und auch gleich zeigen, wie man es richtig macht, wenn Du schon so viel Zeit hast :zwinker: Was hälst Du davon ?
|
Re: Das wohl beste Schlange der Welt
Aber das ist doch auch mal ne variante:
Man sucht im I-Net... "ahh, dieses Wort "if" kommt auch in dem unbeispiel vor, darf ich also nicht nehmen..." :stupid: :stupid: |
Re: Das wohl beste Schlange der Welt
Für die vielen IFs gibt es ja auch das CASE :stupid:
Sooooooooooo, jetzt gibt es 3 Versionen 0: das originale "wie man es vielleicht nicht machen sollte" 1: dort wurde(n) - einige Variablennamen und Buttonbeschriftungen verständlichert - die Groß-/Kleinschreigung verbessert - Code-Duplikate entfernt und in eigene Funktionen/Prozeduren gekapselt - der Inhalt vom häßlichen Label in die Titelleiste verschoben - der Reset wird nicht mehr über einen kompletten Neustart erledigt 2: ja und hier wurden dann noch viele der die zuvielen Images entfernt und der Status der einzelnen Felder in einem Array gespeichert, anstatt ihn aus der Sichbarkeit der jeweiligen Images zu generieren 3: kommt vielleicht auch bald hier würde dann vermutlich alles auf EIN Canvas umgestellt
Code:
An der Funktionsweise des Programms wurde aber nichts verändert.
. DFM- EXE- PAS PAS
Größe Größe Größe Zeilen 0: 15 MB 7,2 MB 93 KB 3636 1: 15 MB 7,1 MB 6,3 KB 247 2: 266 KB 589 KB 6,1 KB 250 3: - - - - (abgesehn von dem Label, dem Reset und einer "besseren" Button-Steuerung aka SetFokus) Codes in ![]() ![]() Man mag es nicht glauben, aber in der knapp 410 KB kleinen 7Zip sind unschlagbare 44 MB drinnen. Das sollte wohl auch erkenntlich machen, daß selber die Komprimierungsprogramme der Meinung sind, daß da etwas leicht unoptimal gelaufen ist. :angel: Und das Ganze zeigt, wohl, daß ein paar "kleine" Optimierungen - kein doppelter/mehrfacher Code - eine halbwegs ordentliche Codeformatierung - und ein gesundes Maß an Optimierung den gesamten Code wesentlich lesbarer und verständlicher machen. :angel: Und es spart sogar Zeit und Nerven ... ihr glaubt nicht, wie anstrengend es war all diese Images dort reinzubekommen und sich bei der Indizierung nicht ständig zu verzählen (im Programmcode). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz