Eine Frage an die OOP-Experten. - Seite 12

 
Я!!! Hat eine tolle Sache gemacht, die niemand wollte, auf eine tolle Art und Weise, die niemand wollte.
 
TheXpert:
Я!!! Hat eine tolle Sache gemacht, die niemand wollte, auf eine tolle Art und Weise, die niemand wollte.
Wir schreiben das Jahr 2019... Sicherlich hat jemand vor über 500 Jahren Leonardo Da Vinci auf ähnliche Weise veräppelt. )))
 
Georgiy Merts:

Ein Beispiel wurde bereits oben genannt - es ist ein Fehler aufgetreten, aus irgendeinem Grund wurde die Variable nicht korrekt geändert. Und auf die Variable wird von verschiedenen Stellen im Programm aus zugegriffen. Wie fängt man einen Ort, wo Fehler ? Bei der OOP-Kapselung ist es ganz einfach: Wir setzen einen Haltepunkt in der Schnittstellenfunktion, die die Variable ändert, und sobald eine falsche Änderung auftritt, halten wir an und sehen anhand der Aufrufhierarchie sofort, wo die falsche Änderung vorgenommen wurde.Und mit deinem Ansatz, Peter, müssen wir den gesamten Code durchforsten, alle Stellen suchen, an denen ein Verweis auf diese Variable vorkommt, überall Haltepunkte setzen und alle Aufrufe analysieren, nicht nur die fehlerhaften.

Nun, Debugger erlauben es, Variablenänderungen zu verfolgen und im Falle einer Änderung anzuhalten (ich weiß nicht, wie es bei µl ist), aber das ist im Allgemeinen kein Argument.


Generell verstehe ich nicht, was Sie hier tun? Peter, denkt der Autor bei der Entwicklung digitaler Schaltungen über die genaue Struktur von Operationsverstärkern und Logikelementen nach? Nein, er nimmt einfach vorgefertigte Blöcke und verwendet sie, um zum Beispiel Ihren Computer zu bauen, damit Sie ihn nicht manuell mit Strom versorgen müssen, um ihn einzuschalten; Sie haben einen einfachen Knopf ohne Details. Sie können diesen Computer auch nehmen und zum Beispiel eine Videoüberwachung einrichten (ohne irgendetwas über Betriebsverstärker zu wissen). Genauso verhält es sich mit der Codierung - wir erstellen Blöcke mit einer einfachen Schnittstelle, aus denen wir wiederum Blöcke mit einer einfachen Schnittstelle bauen. Dies ermöglicht eine ständige Verkomplizierung, ohne sich in Details zu verzetteln. Und alle möglichen Sprachkonstrukte sorgen dafür, dass wir nicht über das Backend in das Objekt eindringen können. Ich denke, Sie werden zustimmen, wenn Sie Ihren eigenen Code satt haben und alles neu schreiben wollen (seltsam, dass der Wunsch noch nicht aufgekommen ist). Am Anfang hatte ich einmal pro Woche den Drang dazu).

Und versuchen Sie nicht, eine Hierarchie von allem aus allem zu erstellen (das habe ich schon durchgemacht), das ist überhaupt nicht notwendig (wie diese unsinnige Idee - alle Entitäten in einem Programm müssen miteinander verbunden sein). Und oop ist nicht gleichbedeutend mit Polymorphismus mit virtuellen Funktionen, wie man beim Lesen vieler Bücher den Eindruck gewinnt.

 
Реter Konow:
Wir schreiben das Jahr 2019... Sicherlich hat jemand vor über 500 Jahren Leonardo Da Vinci auf ähnliche Weise auf die Schippe genommen. )))

Peter, was ist mit der Grafik-Engine? Welche Neuigkeiten?

 
Neue Erfindungen können nicht aus den Blöcken eines anderen zusammengesetzt werden. Wenn man sich immer die Ideen anderer leiht, werden sie dominieren und verhindern, dass man etwas erfindet. Es gibt den Ehrgeiz des Entwicklers, des Erfinders, des Innovators, der seinen Arbeitsbereich von den Ideen anderer abschirmen muss, um etwas Neues zu schaffen.
 
Vasiliy Sokolov:

Peter, was ist mit der Grafik-Engine? Welche Neuigkeiten?

Ja, das ist in Ordnung. Alles funktioniert. Nur die Motivation für die weitere Entwicklung ist weg. Niemand hier braucht sie. Ich habe es gleich nach dem ersten Posting in der Codebase gefunden. Ich hatte eine Erleuchtung.))
 
Реter Konow:
Neue Erfindungen können nicht aus den Blöcken eines anderen zusammengesetzt werden. Wenn man sich immer die Ideen anderer leiht, werden sie dominieren und verhindern, dass man etwas erfindet. Es gibt den Ehrgeiz des Entwicklers, des Erfinders, des Innovators, der seinen Arbeitsbereich von den Ideen anderer abschirmen muss, um etwas Neues zu schaffen.

Dann ist es besser, mit dem eigenen Strom, dem eigenen Computer, dem eigenen Betriebssystem und der eigenen Sprache zu beginnen, und da kommt der Motor ins Spiel! Der Algorithmus ist interessant, aber er ist vielleicht nicht lebendig genug.

 
Vict:

Nun, dann ist es besser, mit der Selbsterzeugung von Strom zu beginnen, einen eigenen Computer, ein Betriebssystem, eine Sprache, und dort bereits den Motor zu schreiben! Der Algorithmus ist interessant, aber er hält vielleicht nicht ein Leben lang.

Das Leben ist definitiv nicht genug. Es geht also darum, einen eigenen Standort zu wählen. Für mich ist es ein Programmieransatz. Alles, was darunter liegt (Elektrizität, Computer, Sprache), wird akzeptiert. Aber der Ansatz selbst ist meine Plattform. Ziel ist es, das Potenzial der Kernel-Bewegungsidee in der Programmentwicklung zu testen. Makro-Aufgabe ist es, zur Software-Selbstentwicklung zu kommen. Wie realistisch das ist, weiß ich nicht, aber durch KI ist es sicher möglich.


ZS. Und lass sie nicht denken, dass ich aufgegeben habe, geweint habe und ein Verlierer bin, wenn sie meine Arbeit hier nicht wollen).

 
Реter Konow:
Neue Erfindungen können nicht aus den Blöcken eines anderen zusammengesetzt werden. Wenn man sich immer die Ideen anderer leiht, werden sie dominieren und verhindern, dass man etwas erfindet. Es gibt den Ehrgeiz des Entwicklers, des Erfinders, des Innovators, der seinen Arbeitsbereich von den Ideen anderer abschirmen muss, um etwas Neues zu schaffen.
Woher haben Sie das? Sie benötigen ein dynamisches Array. Ups, und das geht nicht in C/S++. Das heißt, wenn Sie die Größe erhöhen, müssen Sie einen Teil des benötigten Speichers zuweisen, ihn vom alten in den neuen Speicherplatz kopieren und den alten Speicherplatz freigeben. Wir fangen also an, alles digital zu beschreiben und erhalten eine Ausgabe, die der von std::vector sehr ähnlich ist. Wozu also dieses ganze Hin und Her, wenn wir das alles schon haben? Das ist der Sinn von Bibliotheken, nicht immer wieder das gleiche Fahrrad zu erfinden).
 
Vladimir Simakov:
Wie kommst du darauf? Sie benötigen ein dynamisches Array. Ups, das kann man in C/S++ nicht machen. Das heißt, wenn Sie die Größe erhöhen, müssen Sie einen benötigten Speicherplatz zuweisen, ihn vom alten an den neuen Ort kopieren und den alten Speicherplatz freigeben. Wir fangen also an, alles digital zu beschreiben und erhalten eine Ausgabe, die der von std::vector sehr ähnlich ist. Wozu also dieses ganze Hin und Her, wenn wir das alles schon haben? Das ist der Sinn von Bibliotheken, nicht immer wieder das gleiche Fahrrad zu erfinden.
Lassen Sie uns nützliche Dinge verwenden.
Grund der Beschwerde: