Seid ihr alle zufrieden mit BlitzBasic???
Übersicht

Gehe zu Seite Zurück 1, 2, 3, 4 Weiter
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Omenaton_2: das ist schon sehr sehr viel - allerdings, da du keine Funktionen benutzt, schätze ich mal, dass der Code auf die Hälfte geschrumpft hätte werden können *g* | ||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
TheShadow hat Folgendes geschrieben: @Omenaton_2: das ist schon sehr sehr viel - allerdings, da du keine Funktionen benutzt, schätze ich mal, dass der Code auf die Hälfte geschrumpft hätte werden können *g*
An The Shadow: Ich denke das ist ein Scherz, aber da ich mir nicht 100%-ig sicher bin, ob du das nicht doch halbwegs ernst meinst, muß ich klarstellen, daß der Code keine Zeile kürzer wäre, wenn ich meine Subrutinen als Functions deklarieren würde, eher im Gegenteil. Wir können diese Sinn-Unsinn-Diskussion von Functions später gerne wieder aufleben lassen, aber laßt uns damit noch warten bis ich mit meinem Programm fertig bin. Ach, wenn wir schon beim Scherzen sind... Das Bild unter deinem Namen... Siehst du wirklich so aus oder hast du dein Bild in einem Bildbearbeitungssoftware ein wenig bearbeit oder ist das lediglich ein Bild von irgendeinem Hund ? ![]() |
||
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Funktionen haben den Vorteil, das ich diese unabhängig vom Programm sehen kann - oft gehe ich den Code einer Inklude 3 Mal durch und Oft kann ich zahlreiche Zeilen rausoptimieren - manchmal kopiere ich einfach die Funktion auf ein neues Blatt und habe so bessere Übersicht... Zum Avatar: so sehe ich wirklich aus - nur die Zähne sind nicht von mir ![]() |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
ChrisAttack |
![]() Antworten mit Zitat ![]() |
---|---|---|
Noch mal zum Threadthema: ![]() "Seid ihr alle zufrieden mit BB?" Wär ich sonst hier? 8) |
||
B3D
MSVC++ DX9SDK |
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
TheShadow hat Folgendes geschrieben: Funktionen haben den Vorteil, das ich diese unabhängig vom Programm sehen kann - oft gehe ich den Code einer Inklude 3 Mal durch und Oft kann ich zahlreiche Zeilen rausoptimieren - manchmal kopiere ich einfach die Funktion auf ein neues Blatt und habe so bessere Übersicht... Alles was du an Vorteilen beschrieben hast hat man genauso ohne Functions. Diese Vorteile liegen nicht an den "Functions", sondern daran, daß man den Code modular aufbaut. Eine Subrutine mit einem Label und angesprungen mit Gosub bietet die gleichen Vorteile und kann die gleichen Aufgaben erfüllen. Wichtig ist nur, daß das vernünftig und übersichtlich programmiert ist. Du kannst einen Label in dem Menü rechts oben genauso zur Anschauung anspringen wie einen Function und das kannst du auch auf neues Blatt kopieren und weiter optimieren. (Das ist aber nicht nötig, wenn du den Beginn und das Ende einer Subrutine (oder Function) mit einer gut sichtbaren Remark Zeile deutlich machst. Ich setze vor jeder Subrutine eine Remark Zeile, aus Sternen und eine Beschreibung der Aufgabe des folgenden Codeabschnittes. Gute Kommentierung ist wichtig, insbesondere wenn man eine lange Zeit an einem Code arbeitet oder diesen später teilweise wiederverwenden will.) |
||
MasterK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
sorry, aber das ist vollkommener unsinn. du hast bei gosub weder die möglichkeit für parameter noch rückgabewerte. du kannst also nicht einfach die funktion aus einem programm nehmen und in einem anderen verwenden, ohne die ganzen globalen variablen mitzunehmen. | ||
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
MasterK hat Folgendes geschrieben: du hast bei gosub weder die möglichkeit für parameter noch rückgabewerte. du kannst also nicht einfach die funktion aus einem programm nehmen und in einem anderen verwenden, ohne die ganzen globalen variablen mitzunehmen.
"du hast bei gosub weder die möglichkeit für parameter noch rückgabewerte. " -Natürlich habe ich Parameter und Rückgabewerte, die heißen nur nicht so. Wenn ich zu einer Subrutine springe dann muß diese Rutine genauso mit Variablen arbeiten wie ein Function. Die werden bloß nicht als "Parameter" definiert, aber die sind da. Rückgabe erfolgt auch. Es wird genauso ein Ergebnis geben und mit dem in der Rutine errechneten Variablenwert kann dann der Code nach Return weitergeführt werden. "du kannst also nicht einfach die funktion aus einem programm nehmen und in einem anderen verwenden, ohne die ganzen globalen variablen mitzunehmen" - Ich kann es übernehmen, das mit den Variablen ist vielleicht wahr, aber ich muß sagen, daß ich persönlich nicht mit vielen kleinen Programmen arbeite, wo ich immer wieder Teile hin und her schieben muß, sondern sehr lange Zeit mit einem riesigen Programm. Ich kann sehr wohl bestimmte Teile die was machen herausnehmen und das mit den "ganzen" globalen Variablen mitnehmen ist keine große Sache. dafür habe ich aber immer nur globalen Variablen und keine Probleme mit localen Variablen. Wenn ich manchmal sowas wie ein lokaler Variable brauchen könnte, verwende ich einfach bestimmte vorläufige, häufig verwendete, unspezifische Variablen Namen, wie Temp_X oder TempByte. Hier ist ein kleines Stück aus meinem Programm als Beispiel. Ich kann dahin springen um ein Spielfeld auf begehbarkeit für eine bestimmte Einheit zu checken. Als Parameter dienen manche aktuelle Variablen, die zu der Zeit bekannt sind. Als Rückgabewert wird die Variable "CheckedFeldFrei" auf den richtigen Wert gesetzt. (JA und NEIN sind Konstanten für 1 und 0, wegen bessere Übersicht.) Wenn das Programm also von dieser Subrutine zurückkehrt, weiß ich was ich wissen wollte. Was wäre besser, wenn ich hier ein Function hätte ? Code: [AUSKLAPPEN] ;**************** Check Feld auf Begehbarkeit ***
.CheckFeld_1 CheckedFeldFrei = NEIN BodenBefahrbar = NEIN TempByte = 77 If CheckedFeldID > 0 And CheckedFeldID - 1 < ( ChosenSize * ChosenSize ) Then TempByte = PeekByte (BnkRealPG, CheckedFeldID - 1) EndIf Select TempByte Case 0 : If EineUnit\MoveGround_0 = 1 Then BodenBefahrbar = JA Case 1 : If EineUnit\MoveGround_1 = 1 Then BodenBefahrbar = JA Case 2 : If EineUnit\MoveGround_2 = 1 Then BodenBefahrbar = JA Case 3 : If EineUnit\MoveGround_3 = 1 Then BodenBefahrbar = JA Case 4 : If EineUnit\MoveGround_4 = 1 Then BodenBefahrbar = JA Case 5 : If EineUnit\MoveGround_5 = 1 Then BodenBefahrbar = JA Case 6 : If EineUnit\MoveGround_6 = 1 Then BodenBefahrbar = JA Case 7 : If EineUnit\MoveGround_7 = 1 Then BodenBefahrbar = JA Case 8 : If EineUnit\MoveGround_8 = 1 Then BodenBefahrbar = JA Case 9 : If EineUnit\MoveGround_9 = 1 Then BodenBefahrbar = JA Case 10 : If EineUnit\MoveGround_10 = 1 Then BodenBefahrbar = JA Case 11 : If EineUnit\MoveGround_11 = 1 Then BodenBefahrbar = JA Case 12 : If EineUnit\MoveGround_12 = 1 Then BodenBefahrbar = JA Case 13 : If EineUnit\MoveGround_13 = 1 Then BodenBefahrbar = JA Case 255 : BodenBefahrbar = JA Default : BodenBefahrbar = NEIN End Select ;--- Durch Unit besetzt ? ------------------------------------------------------- If BodenBefahrbar = JA Then CheckedFeldFrei = NEIN If CheckedFeldID > 0 And CheckedFeldID - 1 < ( ChosenSize * ChosenSize ) Then If FeldReservierungsMap_U(CheckedFeldID) = 0 Then CheckedFeldFrei = JA If PeekShort ( BnkUNITmap,(CheckedFeldID * 4 ) - 4) <> 25500 Then CheckedFeldFrei = NEIN EndIf EndIf Return |
||
MasterK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
irgendwie scheint das thema in 2 threads stattzufinden. obwohl es im anderen besser geeignet wäre, antworte ich mal hier, weil du ja hier das meiste dazu geschrieben hast.
was wäre, wenn BB auf dem gleichen schema aufgebaut wäre wie du es hier propagandierst? dann würde der aufruf der text-funktion (oder wie die heisst) etwa so aussehen: Code: [AUSKLAPPEN] TextX = 10
TextY = 20 TextString = "ein test" gosub text und wie schön wäre doch solch ein funktionsaufruf in einem programm: Code: [AUSKLAPPEN] if checkbefahrbar(XPos, YPos) then mache irgendwas..
wie sieht das bei dir aus? Code: [AUSKLAPPEN] XPos = 10
erklär mir mal, wo da irgendeine ersparniss von code liegt? bzw wo da auch nur irgendein vorteil liegt?
YPos = 10 gusob checkbefahrbar if befahrbar then mache irgendwas... du verwendest eigentlich dann ja NUR globale variablen, allein das ist ja schon ein graus. in ein paar monaten siehst du durch deinen code nicht mehr durch. dein argument der ersparniss von code ist also ziemlich wacklig. zum einen brauchst du ein sprunglabel, zum anderen auch ein return. ganz zu schweigen von deinen kommentaren, um einen sub-block zu kennzeichnen. keine angst, ich weiss wovon ich rede. ich habe früher in QB genauso programmiert wie du, weil ich es einfach nicht besser wusste. viele solcher unterprogramme habe ich mir geschrieben, zB eins, das eine box auf den bildschirm zeichnet. und schon damals habe ich mich geärgert, dass ich vorher umständlich die parameter festlegen muss. |
||
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Alles was du an Vorteilen beschrieben hast hat man genauso ohne Functions. Diese Vorteile liegen nicht an den "Functions", sondern daran, daß man den Code modular aufbaut. Eine Subrutine mit einem Label und angesprungen mit Gosub bietet die gleichen Vorteile und kann die gleichen Aufgaben erfüllen. Wichtig ist nur, daß das vernünftig und übersichtlich programmiert ist.
Modulare Programmierung und Funktionen liegen sehr nah bei einander. Wenn du statt Funktionen GOTO/GOSUB benutzt, dann kannst du es nicht übersichtlich programmieren... Dein Beilspielcode zeigt es sehr deutlich, dass es sehr schnell unübersichtlich und unversändlich wird... Welche Variablen willst du da verarbeiten - was wird WO zurückgeliefert - was ist wenn da was geändert wird und das dann unbemerkt an dir vorbeiläuft? Welche Variablenwerden überhaupt benutzt? Das kannst du nicht auf einen Blick erkennen... So wie es aussieht, programmierst du das nur für dich - du weist ja wo welche Variable geändert wird (selbst ich weiß es in meinen Code nie - das ist auch gut so - da bei mir alles abgeschottet ist). So darfst du nicht denken - du musst dir vorstellen jemand anderer müsste den Code mal ansehen um z.B. etwas anzupassen - das wird er niemals schaffen. Aber vielleicht hast du das Problem mit Variablen-Überschneidungen nicht. Um dieses Problem zu verhindern schreibe ich grundsätzlich ALLE verwendete Variablen mit LOCAL am Anfang der Funktion - dadurch ist die Funktion komplett vom restlichen Code abgeschottet. |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Anmerkung am Rande:
True ist eine Konstante = 1 False ist eine Konstante = 0 Jetzt hast du wieder zwei globale Variabeln gespart. ![]() MfG |
||
![]() |
Mogologo |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe NOCH die Demo von BlitzBasic3D aber ich bin echt begeistert von BB3D und werde es mir dan wohl auch kaufen aber nur wenn man keine Kreditkarte benötigt.
Ihr werdet es nicht glauben aber bis vor einem halben jahr hatte ich nur einen C64 und einen Amiga 500 auf den ich ,zu mindestens auf dem c64, in Basic programmierte. So was wie hier kannte ich bis dato nur von Freunden. Der haubt grund warum ich BB3D so gut finde ist das es ein Basic Dialekt ist und dass das programmieren einfach spass macht. bis dann |
||
![]() |
ChrisAttack |
![]() Antworten mit Zitat ![]() |
---|---|---|
Einen C64????
Wie alt ist der jetzt eigentlich? |
||
B3D
MSVC++ DX9SDK |
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
MasterK hat Folgendes geschrieben: erklär mir mal, wo da irgendeine ersparniss von code liegt? bzw wo da auch nur irgendein vorteil liegt? du verwendest eigentlich dann ja NUR globale variablen, allein das ist ja schon ein graus. in ein paar monaten siehst du durch deinen code nicht mehr durch. dein argument der ersparniss von code ist also ziemlich wacklig. zum einen brauchst du ein sprunglabel, zum anderen auch ein return. ganz zu schweigen von deinen kommentaren, um einen sub-block zu kennzeichnen. keine angst, ich weiss wovon ich rede. ich habe früher in QB genauso programmiert wie du, weil ich es einfach nicht besser wusste. viele solcher unterprogramme habe ich mir geschrieben, zB eins, das eine box auf den bildschirm zeichnet. und schon damals habe ich mich geärgert, dass ich vorher umständlich die parameter festlegen muss. 1. Ich habe nicht behauptet, Gosubs seien besser und viel vorteilhafter als Functions. Mein Standpunkt ist, daß die beiden gleichwertig sind und keiner der Beiden große Vorteile gegenüber den Anderen haben. Da Gosubs noch vor Functions da waren, bevorzuge ich Gosubs. Es gibt nämlich keinen Grund Functions zu benutzen. Wie gesagt, früher hatte man nur Gosubs. (Ich habe zu erst Ende der 80-er Jahren auf Sinclair Spectrum mit Basic angefangen). Als ich vor etwa 1,5 Jahren BltizBasic kennengelernt habe, habe ich mir die für mich neue Functions angeschaut und dabei festgestellt, daß sie eigentlich keine nennenswerte Vorteile haben und somit überflüssig sind. Ich pflege nicht etwas was alt ist für etwas neues auszutauschen, nur weil das Neue neu ist und das Alte alt ist. Das Neue muß auch tatsächlich vorteilhaft sein, damit es das Alte ersetzen kann. (Ich weiß, in unserer Gesellschaft läuft das Heute allgemein nicht so wie ich es sehe.) 2. "ein paar monaten siehst du durch deinen code nicht mehr durch. " Hmm, ich arbeite an meinem Code seit mehr als einem Jahr und es ist schon seeeehr groß und nahe der Fertigstellung und bisher habe ich einen wunderbare Übersicht und keine Probleme. Es läuft super. In Gegenteil zu deiner Annahme lege ich sehr großen Wert auf eine übersichtliche und verständliche Programmierung. Wenn das nicht so wäre, wäre ich garantiert nicht so weit gekommen. Ich weiß es auch wovon ich rede. 3."dein argument der ersparniss von code ist also ziemlich wacklig. zum einen brauchst du ein sprunglabel, zum anderen auch ein return. ganz zu schweigen von deinen kommentaren, um einen sub-block zu kennzeichnen. " Wie schon gesagt, ich rede nicht von großem Ersparnis, lediglich von Gleichstand. Ich brauche ein Sprunglabel ? Ja. Dafür braucht eine Function eine Zeile wo sie definiert wird, das ist doch das Gleiche. Ich brauche ein Return ? Ja. Dafür braucht eine Function am Ende eine End Function, das ist das Gleiche. 4."schon damals habe ich mich geärgert, dass ich vorher umständlich die parameter festlegen muss" Ich weiß nicht wo da das Problem sein soll. Ich muß nicht die Parameter umständlich festlegen, oder zumindest kein bißchen umständlicher als bei Functions. Die Parameter weiß der Code wenn der zu meiner Subrutine springt, weil die sich aus dem Code zwangsweise ergeben. Du mußt bei Benutzung einer Function die Parameter auch aktuallisieren und das kommt auf das Gleiche hinaus. Da ist kein grundlegender Unterschied. 5. "ganz zu schweigen von deinen kommentaren, um einen sub-block zu kennzeichnen" Die Kommentare zum Kennzeichnen des sub-blocks sind nicht von der Verwendung oder nicht Verwendung von Functions abhängig. Die dienen zur Herstellung eines besseren Übersichtes. Ein Function ohne zusätzliche Kennzeichnungskommenttierung sieht genauso unauffällig aus wie eine labeled Subrutine. Die Labels sind hier den Functions sogar ein wenig überlegen, da ein Label-Name ein echter Name sein kann, der sofort als nicht-Basic-Befehl ins Auge fällt und auch deswegen weil der Labelname weiß dargestellt wird und nicht türkis wie die Befehle wie Function. Wenn man also auf zusätzliche Kennzeichnung verzichtet, dann ist das bei der Verwendung von Functions sogar noch mehr zum Nachteil. Mein Fazit: Man kann Functions benutzen wenn man will, aber die sind alles andere als für eine übersichtliche und effektive Programmierung notwendig. Ohne Functions kann man genauso gut auskommen. Durch Functions wird das Programm nicht kürzer oder übersichtlicher oder schneller. |
||
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
D2006 hat Folgendes geschrieben: Anmerkung am Rande:
True ist eine Konstante = 1 False ist eine Konstante = 0 Jetzt hast du wieder zwei globale Variabeln gespart. ![]() MfG Ich kenne die Bedeutung von True und False und ganz selten benutze ich sie auch. Ich bevorzuge JA und NEIN deshalb, weil diese Wörter für mich noch deutlicher ausdrücken was ich ausdrücken will. (Es liegt wohl daran, daß ich viel besser Deutsch als Englisch kann und weil ich das Wort Ja schon sehr viel öfters gehört und benutzt habe als true.) Der Sinn des ganzen ist es, die Zeit die ich brauche um die Bedeutung einer Zeile möglichst wahrheitsgetreu zu begreifen zu verkürzen. Es geht hier aber meistens nur um Sekunden oder Millisekunden. Ansonsten könnt eich auch bei 0 und 1 bleiben. Ich verwende gerne Mischwörter aus Deutsch und Englisch wenn es darum geht, neue, einzigartige Begriffe zu kreieren. So kann ich einen Namen erfinden, der den Inhalt ausdrückt und dabei auch einmalig ist. |
||
MasterK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Omenaton_2 hat Folgendes geschrieben: Da Gosubs noch vor Functions da waren, bevorzuge ich Gosubs. Es gibt nämlich keinen Grund Functions zu benutzen. falsch. funktionen gab es in anderen sprachen wesentlich eher. um nun aber nicht den durchschnittlichen basic-programmieren mit seinen globalen variablen und spaghetti-code zu überfordern, hat man die krücke gosub eingeführt.
aber hier nochmal die vorteile von funktionen zusammengefasst: - sie sind äusserst leicht exportiertbar, wenn man mit localen variablen (wie es sich gehört) arbeitet. funktion markieren, kopieren, fertig. - der aufruf IST kürzer, da man wie im beispiel nicht vorher irgendwelche variablen setzen muss - man vergisst auch nicht variablen entsprechend zu setzen und sucht dann wie blöde nach dem fehler, denn die funktion erwartet ja direkt eine variable - funktionen können werte zurückliefern, mit denen man direkt weiter arbeiten, verkürzt den quellcode erneut. - deine farbformatierung ist dir nur im entsprechenden editor von vorteil. gute editoren ziehen heutzutage übrigens waagerechte trennlinie zwischen funktionen - arbeiten mehrere leute an einem projekt, kannst du dich mit deiner "stilfibel" erschiessen - willst du dich mit diesem "wissen" über funktionen und gosubs mal in einer firma bewerben, könnte das äusserst peinlich werden. aber ich denke mal, das willst du nicht willst du später bmax nutzen, wirst du um funktionen kaum herumkommen, soweit ich gehört habe, soll das ja mehr in richtung OOP gehen. im übrigen muss ich sagen, spricht es nicht gerade für dich dass du seit ende der 80er programmierst und funktionen nicht kennst bzw sie nicht sinnvoll einsetzen kannst. ach ja, und noch was zu deinem case-block: der is auch recht deftig. du solltest dich noch einmal genauer mit dem konzept der arrays auseinandersetzen. |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
MasterK hat Folgendes geschrieben: - der aufruf IST kürzer, da man wie im beispiel nicht vorher irgendwelche variablen setzen muss
Falsch, der Aufruf selber ist bei Funktionen "zeitraubender" als bei Subs und Sprungmarken. Allerdings sind Funktionen klar übersichtlicher, da man lokale Variabeln benutzen kann. Ausserdem ist es keine grosse Sache, mit Funktionen Werte zu übergeben und zurückzugeben. Nebenbei: Ich bin sehr zufrieden mit BlitzBasic, da ich früher einige Zeit mit QBasic programmiert habe, war ich schon von BlitzBasic überzeugt als ich schon nur den Artikel darüber gelesen habe ![]() |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Ich bevorzuge JA und NEIN deshalb, weil diese Wörter für mich noch deutlicher ausdrücken was ich ausdrücken will. (Es liegt wohl daran, daß ich viel besser Deutsch als Englisch kann und weil ich das Wort Ja schon sehr viel öfters gehört und benutzt habe als true.)
hehe mir ist gar nicht aufgefallen - sag blos dein Code ist kompl. Deutsch/English? Das macht man doch nicht... Dadurch sieht es verkrüppelt aus... Ich persönlich schreibe sogar Kommentare auf English, damit alles einheitlich ist. Ein guter Code sollte so aussehen: Code: [AUSKLAPPEN] ;--------------------------------------------------------------------- ;bank: input bank handle ;offset: bank offset ;max: max chars ;RETURN: text string ;--------------------------------------------------------------------- Function memory_peekstr$(bank,offset,max) Local char Local i Local txt$ For i=0 To max-1 char=PeekByte(bank,offset+i) If char=0 Then Return txt$ txt$=txt$+Chr$(char) Next Return txt$ End Function |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
MasterK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Holzchopf hat Folgendes geschrieben: Falsch, der Aufruf selber ist bei Funktionen "zeitraubender" als bei Subs und Sprungmarken. du weisst, dass diese unterschiede heutzutage wahrscheinlich im nanosekundenbereich liegen? das könnte man sinnlose optimierung nennen. optimierung auf kosten der lesbarkeit mit keinem echten effekt
|
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Naja Blitz3D ( kenne die anderen net wirklich - kann sein dass es da auch is ) hat einen doch beträchtlichen Speed Flaschenhals und das is die
For bla.Type = each type next abfrage. Hab das ganze ma über ne eigene LineareListe organisiert und bei 5 mio durchläufen und ner einfachen überprüfung eines wertes kam es zu fast 60s für das oben im vergleich zu 122ms für die LineareListe ... denke das liese sich auf jeden fall noch optimieren ... Davon abgesehen komme ich von DB / DBP was ich nu 3 Jahre genutzt habe bis mir der Geduldsfaden hopps gegangen is, sowie PureBasic, und muss sagen, dass ich mit Blitz3D sehr sehr zufrieden bin ![]() |
||
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
So, und jetzt nennst Du uns ein praktisches Anwendungsbeispiel in Blitz3D bei dem 5Mio Instanzen eines Types durchlaufen werden müssen. | ||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
Gehe zu Seite Zurück 1, 2, 3, 4 Weiter
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group