Aktuelle Zeit: 22.09.2019 14:19

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 25 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3  Nächste
Autor Nachricht
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 25.01.2016 15:58 
Offline
Ein Admin
Benutzeravatar

Registriert: 29.08.2004 20:20
Wohnort: Saarbrücken
Am schlimmsten ist es, wenn man irgendwann mal um einen Bug herum programmieren musste, aber nicht mehr daran denkt. Dann vereinfacht man den Code und wundert sich, warum es nicht mehr funktioniert. Dann sucht man den Bug im Forum und merkt, dass man ihn damals selbst gemeldet hatte. :mrgreen:

_________________
Freakscorner.de - Der Bastelkeller | Neustes Video: Neje DK - 1 Watt Laser Engraver
Ubuntu Gnome 18.04.1 LTS x64, PureBasic 5.60 x64 (außerdem 4.41, 4.50, 4.61, 5.00, 5.10, 5.11, 5.21, 5.22, 5.30, 5.31, 5.40, 5.50)
"Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen – Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 25.01.2016 17:23 
Offline
Benutzeravatar

Registriert: 14.08.2007 15:41
Wohnort: Lelbach
Kurzer hat geschrieben:
Keine Sorge STARGÅTE, ab einem bestimmten Alter kehrt sich das ganze dann auch wieder um. :lol: :wink:

Da sitzt Du dann vor einer Problemstellung, die Du vor x Jahren mal eben aus der Hüfte gelöst hast und bekommst es nicht mehr gebacken.

Volle 100 Punkte :allright:

Btw: Werde dieses Jahr meinen 60. "feiern" (OMG...dann gehe ich auf die "70" zu :cry: )

_________________
- alles was ich hier im Forum sage/schreibe ist lediglich meine Meinung und keine Tatsachenbehauptung
- unkommentierter Quellcode = unqualifizierter Müll


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 25.01.2016 19:30 
Offline
Benutzeravatar

Registriert: 23.12.2005 15:00
Wohnort: Alling (bei FFB)
NicTheQuick hat geschrieben:
Dann sucht man den Bug im Forum und merkt, dass man ihn damals selbst gemeldet hatte. :mrgreen:


Oh ja, das ist mir auch passiert, wahrscheinlich öfter als mich über alte komplizierte Lösungen zu wundern.

Was ich schaffe: Ich beschließe spontan etwas kleines mathematisches zu schreiben. Z.B. einen Muttertagsgruß für meine Mutter, der Blumen wachsen lässt.
Hock mich mitten in der Nacht hin, lege los und werde um 3 Uhr fertig.
Jahre später denk ich mir, wäre doch schön das nochmal anzusehen.
Doch ich bekomme es nicht hin, den Code auf aktuellem PB laufen zu lassen, geschweige denn, ihn zu verstehen :lol:

Edit: Der Code läuft wieder :D Zum verstehen bräuchte ich wohl noch etwas ;)
Wen Interesse besteht, kann ich das Kunstwerk hier reinstellen.

_________________
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 25.01.2016 20:02 
Offline
Benutzeravatar

Registriert: 24.11.2004 13:12
Wohnort: Germany
Bei mir kann ich die gesammelten Werke der letzten 11 Jahre von Purebasic zu 90% wegwerfen. Ist eh nicht ordentlich Dokumentiert.
Macht oft Sinn neu anzufangen...

Was ich aber bei mir merke, das ich in meinen Programmierspiel immer mehr Konservativ werden und kaum noch was ändere...
Muss am Alter liegen.

Arbeite jetzt auch schon seit über 20 Jahre als Programmierer und Anwendungsentwickler in der Industrie und verwende meisten irgendwelche Hantierungs Bausteine für PLC´s die ich vor Jahren mal entwickelt habe und kaum noch anpasse.
Manchmal denke ich man könnte mal was elementares ändern. Aber wo zu. Funktionieren doch in duzenden von Anlagen.

Muss auch am Alter liegen...

Vielleicht sollte man mal was anderes machen. Hab aber nichts gescheites gelernt :mrgreen:

_________________
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul / OPC-Helper DLL
PB v3.30 / v5.4x - OS Mac Mini OSX 10.xx / Window 10 Pro. (X64) /Window 7 Pro. (X64) / Window XP Pro. (X86) / Ubuntu 14.04
Downloads auf Webspace


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 25.01.2016 23:59 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
@Macros: Ja gerne zeig mal.

@mk-soft:
mk-soft hat geschrieben:
Bei mir kann ich die gesammelten Werke der letzten 11 Jahre von Purebasic zu 90% wegwerfen. Ist eh nicht ordentlich Dokumentiert.Macht oft Sinn neu anzufangen...
Jo ich habe auch so einen Ordner, der nennt sich "Archiv", wobei der noch nicht gezippt ist^^.
In dem Archiv ist aber noch ein Ordner "AlteProjekte" in dem die Projekt schon gezippt sind.
mk-soft hat geschrieben:
Manchmal denke ich man könnte mal was elementares ändern. Aber wo zu. Funktionieren doch in duzenden von Anlagen.

So ähnlich geht es mir mit einigen meine Includes.
Selbst in aktuellen Projekten, verwende ich noch Includes, deren Code nach meiner "heutigen" Sicht veraltet ist.
Dennnoch erfüllen sie ihre Aufgabe und ich sage mir auch, wozu noch mal drüber nachdenken.

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 26.01.2016 00:27 
Offline
Admin
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Deutschland::Berlin()
Das ist der Vorteil und die Aufgabe von automatisierten, fertig geschriebenen, wiederverwendbaren Prozeduren.
Es ist nicht so sinnvoll, wenn man in neueren Projekten immer wieder die gleichen Funktionen neu schreibt, obwohl diese bereits in alten Projekten existieren.
Das Zauberwort lautet Wiederverwendbarkeit. Wenn die Funktionen/Prozeduren/Includes fehlerfrei und gut mit Parametern einsetzbar sind, dann muss man das Rad nicht ständig neu erfinden und man kann diese Funktionen wiederverwenden. Deshalb spielt es keine Rolle, wie alt die Funktionen sind. Solange sie automatisiert und gut anwendbar sind, ist das ein großer Vorteil und man spart viel Zeit beim Entwickeln eines neuen Projektes.
Ich habe inzwischen auch sehr viele Funktionen, die ich erstellt habe, und muss diese in einem neuen Projekt nur anwenden und das Projekt ist schon halb fertig.

_________________
BildBildBildBild BildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 26.01.2016 00:46 
Offline
Benutzeravatar

Registriert: 23.12.2005 15:00
Wohnort: Alling (bei FFB)
@STARGÅTE Wie du willst ;)

Alles möglichst originalgetreu gehalten.
Code:
InitSprite()
InitKeyboard()

OpenScreen(1024,768,32,"test")
id=LoadFont(1,"Magic the Gathering",50)


If CreateSprite(1,1024,768)=0
  End
EndIf

Procedure DrawFl(x,y,col)
  Circle(x,y-5,6,col)
  If col=$1AF4E5
    Circle(x,y-5,3,$3E4A75)
  Else
    Circle(x,y-5,3,$ffff)
  EndIf
EndProcedure

Structure pf
  x.l
  y.l
  ux.l
  uy.l
  col.f
  sp.l
EndStructure

Structure fl
  x.l
  y.l
  x2.l
  y2.l
  fl.l
  col.l
EndStructure

Global Dim flower.fl(50,100)
NewList p.pf()

Procedure deleteflowers()
  For a=0 To 50
    For b=0 To 100
      flower(a,b)\x=0
      flower(a,b)\y=0
      flower(a,b)\x2=0
      flower(a,b)\y2=0
      flower(a,b)\fl=0
      flower(a,b)\col=0
    Next
  Next
EndProcedure


delay=1000
state=1

Repeat
  ExamineKeyboard()
  FlipBuffers()



  If delay<0
    state+1
    delay=1000
  Else
    delay-10
  EndIf

  If state>2 Or state=1
    draw=1
  Else
    draw=0
  EndIf
  If oldstate=4 And state=5
    count=0
  EndIf
  If oldstate=6 And state=7
    sin.f=0
    count=0
  EndIf
  If State=8 And oldstate=7
    deleteflowers()
    For a=1 To 50
      flower(a,0)\x=Random(1004)+10
      flower(a,0)\y=680+Random(20)-10
      flower(a,0)\x2=flower(a,0)\x+Random(10)-5
      flower(a,0)\y2=flower(a,0)\y-5-Random(10)

    Next

  EndIf
  If state=4 And oldstate=3
    ForEach p()
      If p()\col<>$ff
        DeleteElement(p())
      EndIf
    Next
  EndIf
  oldstate=state

  If draw=1
    If StartDrawing(SpriteOutput(1))=0
      Debug "No Sprite drawing"
    EndIf
    start=1
    If claus=0
      Box(0,0,1024,768,0)
    EndIf
  EndIf

  Select state
    Case 1
      DrawingMode(1)
      DrawingFont(id)
      DrawText(105,105,"Alles Gute zum Muttertag",$00ff,0)
      claus=1
    Case 2
      ClearList(p())
      StartDrawing(SpriteOutput(1))
      For x=0 To 1023
        For y=0 To 700
          tmp=Point(x,y)
          If tmp<>0 And tmp<>$ff00
            AddElement(p())
            p()\x=x
            p()\y=y
            p()\ux=x
            p()\uy=y
            p()\col=tmp
            If tmp=$ff
              p()\sp=Random(2)+2
            Else
              p()\sp=Random(2)+4
              If Random(1)=0 Or Random(2)=0
                DeleteElement(p())
              EndIf
            EndIf
          EndIf
        Next
      Next
      StopDrawing()
      claus=0
      state+1
    Case 3
      ForEach  p()
        If p()\y<700 Or p()\col<>$ff
          p()\y+p()\sp
        EndIf
        If p()\y>766
          DeleteElement(p())
        Else
          current=ListIndex(p())
          currenty=p()\y
          currentx=p()\x
          If Random(1)=1
            Plot(p()\x,p()\y,p()\col)
          EndIf
        EndIf
      Next

      delay+7
    Case 4
      delay+6
      count+1
      sin.f+0.005/Round(count/12,1)
      ForEach  p()
        p()\y=700-Abs(Sin((p()\ux+300)/p()\uy/3*sin)*700)
        p()\x=p()\ux-Abs(Sin(Cos(p()\ux/1000*sin)*Sin(p()\uy/1000*sin)*5)*p()\ux)
        Plot(p()\x,p()\y,p()\col)
        p()\col=RGB(Abs(Cos(sin+p()\y/100)*255),Abs(Sin(sin+p()\x/100)*255),Abs(Cos(sin+p()\y/100-p()\x/100)*255))
      Next
    Case 5
      delay+6
      count+1
      sin.f-0.005/Round(count/12,1)
      ForEach  p()
        p()\y=700-Abs(Sin((p()\ux+300)/p()\uy/3*sin)*700)
        p()\x=p()\ux-Abs(Sin(Cos(p()\ux/1000*sin)*Sin(p()\uy/1000*sin)*5)*p()\ux)
        Plot(p()\x,p()\y,p()\col)
        p()\col=RGB(Abs(Cos(sin+p()\y/100)*255),Abs(Sin(sin+p()\x/100)*255),Abs(Cos(sin+p()\y/100-p()\x/100)*255))
      Next
    Case 6
      delay+7
      sin.f+0.05
      ForEach  p()
        If p()\y>p()\uy
          p()\y-p()\sp*2+Sin(sin+p()\x/100)*2
          Plot(p()\x+Sin(sin+p()\x/100)*30,p()\y-Cos(sin+p()\y/100)*30,p()\col)
          p()\col=RGB(Abs(Cos(sin+p()\y/100)*255),Abs(Sin(sin+p()\x/100)*255),Abs(Cos(sin+p()\y/100-p()\x/100)*255))
        Else
          Plot(p()\x+Sin(sin+p()\x/100)*30,p()\uy,p()\col)
        EndIf
      Next
    Case 7
      ForEach p()
        p()\x=p()\ux
        p()\y=p()\uy
      Next
      state+1
    Case 8

      ForEach  p()
        Plot(p()\x,p()\y,p()\col)
      Next
      delay+9
      claus=1
      b=0
      For a=1 To 50
        Repeat
          LineXY(flower(a,b)\x,flower(a,b)\y,flower(a,b)\x2,flower(a,b)\y2,$ff00+$ff*flower(a,b)\fl)
          b+1
        Until flower(a,b)\x=0 Or b>98

        If Random(15)=1
          If Random(4)=1
            in$=Str(Val(in$)+1)
            flower(a,b)\x=flower(a,b-1)\x2
            flower(a,b)\y=flower(a,b-1)\y2
            flower(a,b)\x2=flower(a,b)\x+Random(20)-10
            flower(a,b)\y2=flower(a,b)\y-2-Random(4)
            flower(a,b)\fl=1
            Select Random(3)
              Case 0
                flower(a,b)\col=$ff66ff
              Case 1
                flower(a,b)\col=$1AF4E5
              Case 2
                flower(a,b)\col=$C0E93F
              Case 3
                flower(a,b)\col=$1643E9
            EndSelect
            b+1
            bstep=1
          EndIf
          flower(a,b)\x=flower(a,b-1-bstep)\x2
          flower(a,b)\y=flower(a,b-1-bstep)\y2
          flower(a,b)\x2=flower(a,b)\x+Random(10)-5
          flower(a,b)\y2=flower(a,b)\y-5-Random(10)
          bstep=0
        EndIf
        b=0
      Next

      For a=1 To 50
        Repeat
          If flower(a,b)\fl
            DrawFl(flower(a,b)\x2,flower(a,b)\y2,flower(a,b)\col)
          EndIf
          b+1
        Until flower(a,b)\x=0 Or b>98
        b=0
      Next
    Case 9
      delay+6
    Case 10
      state=1

    Default
      End
  EndSelect


  If start=1
    StopDrawing()
    start=0
  EndIf
  DisplaySprite(1,0,0)

Until KeyboardPushed(#PB_Key_Escape)

_________________
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 26.01.2016 10:41 
Offline
Benutzeravatar

Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg
Bisonte hat geschrieben:
xXRobo_CubeXx hat geschrieben:
Warum sollte es umgekehrt sein wen man älter wird? Wegen Alzheimer?
Das Leben...

Man verändert sich und seine Denkweisen.... auch wenn man es nicht glauben will....
Das hat mit vergessen nicht wirklich etwas zu tun.
Ja, genauso erlebe ich das auch und so hatte ich es gemeint. Auch die persönlichen Prioritäten ändern sich im Laufe des Lebens und Wichtigkeit mancher Dinge, die einen früher beeindruckt und motiviert haben.

@Macros: Schöne Muttertagsdemo, gefällt mir. :allright: Ich hoffe sie konnte die Art der Arbeit, die da drin steckt, entsprechend nachvollziehen und honorieren.

_________________
"Never run a changing system!"
PB 5.62, OS: Windows 7 Pro x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Ich bin Baujahr 1968, also aktuell 51.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 29.01.2016 20:12 
Offline
Benutzeravatar

Registriert: 29.08.2004 16:31
Wohnort: Münsterland
STARGÅTE hat geschrieben:
... und man fragt sich
Warum hab ich damals diese Vereinfachung nicht "gesehen"?


Ganz einfach: Nö. Mir ist völlig Klar, dass ich morgen eine Erkenntnis gewonnen habe, die ich heute noch nicht hatte. Leben ist lernen und neues Schaffen bringt Zerstörung.

STARGÅTE hat geschrieben:
Hab ich möglicherweise "jetzt" etwas übersehen, was die Vereinfachung damals garnicht möglich machte?


... und wenn ja, warum habe ich das damals nicht ausreichend kommentiert? Ja, diese Frage nagt :mrgreen:

STARGÅTE hat geschrieben:
Wie spät war es damals?^^


Nö, eher "wie früh war es damals?". Quelltexte spätabends sind immer besser als früh morgens. Daher hör ich mir auch gerne die Sprüche an vonwegen "Spätschichtler". :lol:

STARGÅTE hat geschrieben:
Wie spät ist es heute?^^

Nö. Ich hab ja ne Uhr, aber dem Glücklichen schlägt keine Stunde und PB programmieren ist Glück pur :mrgreen:


Gegenfrage: Kennt ihr das "Ach, hätte ich das doch damals in einer anderen Sprache geschrieben", weil ihr es gern auf eine andere Plattform portieren würdet (Smartphone, Embedded System etc. etc.)? :wink:


Mfg

Franky

_________________
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Die große Erkenntnis
BeitragVerfasst: 11.05.2016 17:45 
Offline
Benutzeravatar

Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Ich kenne eher den folgenden Fall:

- Man schaut sich einen alten Code an und fragt sich "Wieso habe ich das denn SO gemacht?"
- Dann versucht man ihn umzuschreiben
- Dann startet man ihn und merkt, er funktioniert nicht mehr
- Dann versucht man, das umgeschriebene Stueck fuer Stueck zu korrigieren
- Auf einmal versteht man wieder ganz genau, wieso man das damals SO gemacht hat...

_________________
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 25 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye