OOP vs. prozedurale Programmierung - Seite 43

 
Реter Konow:
Ich stimme zu, Intellisense ist eine sehr praktische Sache, aber wie viel von einem Argument ist es? Hängt Intellisense von OOP ab? Würde es nicht auch ohne OOP funktionieren? Was mich betrifft, so erscheint eine Liste aller ähnlichen Funktionsnamen, sobald man auf der Tastatur zu tippen beginnt. Immer.

Versuchen Sie dann, ein paar Funktionen zu nehmen, sie zu verpacken und sie dann in eine Datei einzufügen, um zu sehen, ob Intellisense funktioniert oder nicht. Ich bin ehrlich gesagt zu faul, alles auszuprobieren. Aber auch wenn es das Ende der Funktion ausgibt, müssen Sie den Anfang ihres Namens eingeben, d.h. der Funktionsname muss wieder in Erinnerung gerufen werden. Bei der Klasse gibt es so etwas nicht, schreiben Sie den Variablennamen und nach dem Punkt erscheint die ganze Liste der verfügbaren Funktionen.

p.s. es ist nicht so, dass ich versuche, dich zu überreden, oop zu benutzen, ich sitze nur gerade im Forum, um zu sehen, was interessant ist und ich kann eine Weile herumtrollen :)

 
Alexey Oreshkin:

Versuchen Sie dann, einige Funktionen in einen Wrapper zu packen und mit der Datei zu verbinden, um zu sehen, ob die Intelligenz funktioniert oder nicht. Ich bin ehrlich gesagt zu faul, alles auszuprobieren. Aber auch wenn sie das Ende der Funktion ausgibt, müssen Sie dafür den Anfang ihres Namens eingeben, d.h. der Funktionsname muss wieder in Erinnerung gerufen werden. Das ist bei der Klasse nicht der Fall, schreiben Sie den Variablennamen und nach dem Punkt erscheint die ganze Liste der verfügbaren Funktionen.

p.s. ich versuche nicht, dich zu überreden, oop zu benutzen, ich sitze nur gerade im Forum und schaue mir an, was interessant ist und ich kann eine Weile herumstöbern :)

Wenn sich der Funktionsaufruf in einer Datei und die Funktion selbst in einer anderen Datei befindet und diese beiden Dateien keine gemeinsame Verbindung haben, zeigt intelligence bei der Eingabe des Namens in der Datei mit dem Aufruf nicht den Namen der Funktion an, deren Definition sich in einer anderen, nicht mit ihr verbundenen Datei befindet.
 
Реter Konow:

Das klingt nach einem echten Argument. Aber das ergibt für mich nicht viel Sinn. Ich verwende fast nie statische Variablen in Funktionen. Es mag für jemanden wichtig sein.


Wir können eine Funktion nehmen, die einen neuen Balken mit einer statischen Variablen darin definiert, die die Zeit des Balkens speichert. Wir sollten versuchen, diese Funktion mehr als 1 Mal innerhalb derselben Kerze zu verwenden. Alle Zeiten, außer der ersten, funktionieren nicht.

 
Alexey Oreshkin:

Sie können eine Funktion nehmen, die einen neuen Balken definiert, in dem eine statische Variable enthalten ist, die die Zeit des Balkens speichert. Und versuchen Sie, diese Funktion mehr als 1 Mal während einer Kerze aufzurufen. Alle Zeiten außer der ersten werden nicht funktionieren.

Warum klappt es nicht?
 
Реter Konow:
Warum klappt es nicht?

weil die statische Variable bereits aktualisiert wird. Die Funktion wird funktionieren, aber sie wird nicht sagen, dass eine neue Kerze eingetroffen ist.

Übrigens ist es nicht möglich, Java, C# usw. ohne ein Oop zu schreiben.
99 % aller lohnenden Stellenangebote werden ohne EoP abgeschlossen.
Ohne AoP können Sie keine eigene Verbindung zum Exchanger oder sogar zu unserem über plaza2 schreiben.

 
Alexey Oreshkin:

Die Funktion wird funktionieren, aber sie wird Ihnen nicht mitteilen, dass eine neue Kerze eingetroffen ist.

Übrigens ist es unmöglich, in Java, c# usw. ohne oop zu schreiben.
99% aller Arbeitsangebote als Programmierer werden ohne OOP abgeschlossen.
Es ist nicht möglich, irgendeinen Anschluss an den Tauscher zu schreiben, auch nicht an unseren über plaza2.

Wenn eine Funktion mit einer statischen Variablen immer an derselben Stelle aufgerufen wird, speichert die Variable immer ihren Wert. Bei Queranrufen werden die Werte nicht gespeichert.

In solchen Situationen deklariere ich einfach eine globale Variable anstelle einer statischen Variable. Es ist eine einfache Lösung.


Das zweite Argument ist stichhaltig, aber für den Entwicklungsprozess irrelevant. Sie können ihn auch in anderen Sprachen schreiben.

Ich weiß nicht, wie es mit dem Stecker aussieht. Kann man das nicht in C++ mit dem prozeduralen Ansatz schreiben?

 
Реter Konow:

Wenn eine Funktion mit einer statischen Variablen immer an derselben Stelle aufgerufen wird, speichert die Variable immer ihren Wert. Bei Queranrufen werden die Werte nicht gespeichert.

In diesen Situationen deklariere ich einfach eine globale Variable anstelle einer statischen Variable. Eine einfache Lösung. - Das ist schon schlecht, und zweitens müssen Sie diese globalen Variablen auch noch so oft anlegen, wie Sie die Funktion an verschiedenen Stellen aufrufen.

ReTeg Konow:

Das zweite Argument ist wichtig, hat aber nichts mit Entwicklung zu tun. Sie können auch in anderen Sprachen schreiben.

Wen interessiert schon, in welchen Sprachen man schreibt. OOP ist überall.



Konow-Tag:

Ich weiß nicht, wie es mit dem Stecker aussieht. Kann man das nicht in C++ mit dem prozeduralen Ansatz schreiben?


Sie können es in jeder Sprache schreiben, aber um Dokumentation, API usw. zu verstehen, müssen Sie mit OOP vertraut sein. Übrigens, ich weiß nicht viel über Plaza, aber wenn ich eine Verbindung zu IB in Amerika herstellen möchte, wie kann ich dann alle Beispiele verstehen, die sie geben, ohne etwas über OOP zu verstehen?

 
Alexey Oreshkin:


Um in einer beliebigen Sprache zu schreiben, aber um Dokumentation, API usw. zu verstehen, muss man mit OOP vertraut sein. Übrigens, Sie wissen nicht viel über Plaza, aber wenn Sie eine Verbindung zu IB auf Amerika herstellen wollen, wie können Sie dann alle Beispiele verstehen, die sie geben, ohne etwas über OOP zu verstehen?

Es ist notwendig, OOP zu kennen. Sie nur dann zu verwenden, wenn es wirklich notwendig ist. Das Leben soll nicht umsonst kompliziert sein. Imho.
 
Реter Konow:

....

In solchen Situationen deklariere ich einfach eine globale Variable anstelle einer statischen Variable. Eine einfache Lösung.

...


Das Beispiel mit der statischen Variable wurde als Möglichkeit zur Vermeidung globaler Variablen angeführt. Aber Sie fordern eine Rückkehr in die Steinzeit.

Je mehr unabhängige Aufgaben Sie in ein allgemeines Problem unterteilen können, desto leichter ist es zu lösen, und Sie schlagen vor, zurückzugehen und alles auf einen Haufen zu werfen. Schließlich haben Sie nicht die Phantasie, um sich Variablennamen auszudenken.

 
Renat Fatkhullin:

Um der Freude willen - R ist in einem absolut ekelhaften "alles in einem Mülleimer ohne Differenzierung des Zugriffs" Modus geschrieben. Ein veralteter Ansatz von vor zwanzig Jahren, ohne Bereiche der Sichtbarkeit, des Schutzes oder der Multisession. Ich schreibe, als ob ich der Einzige wäre. So wurde das Projekt unter einer Person von unprofessionellen Entwicklern geboren. Sie muss von Grund auf neu geschrieben werden. Wenigstens einmal.

Ich hatte die Idee, aus MQL5 eine normale Schnittstelle in R zu machen, aber nachdem ich mich näher damit beschäftigt hatte, entschied ich mich sofort dagegen, sie zu integrieren. Das System ist kategorisch nicht in der Lage, Daten und Sitzungen zu schützen.


Renat, eine Frage:

Sind sich diese "Amateure" vom Consortium R, die R massiv in ihren kommerziellen Produkten einsetzen, bewusst, wie "ekelhaft" es ist? Sie sollten ihnen etwas Licht geben. Sonst wären sie am Boden zerstört.

Sie sind gut darin, Menschen zu überraschen.

Tut mir leid, dass ich vom Thema abgekommen bin, aber ich konnte nicht darüber hinwegsehen.

Viel Glück!