Interessante Sicht auf die PLO - Seite 5

 
Igor Makanu:

Wenn sich die Frage auf mein Beispiel bezieht - zumindest verbergen Sie die Implementierung (sogar vor sich selbst) - d.h. Sie schreiben nur die Logik der Berechnungen, das ist bequem, es ist lesbar, es erlaubt Ihnen, logische Fehler zu vermeiden


SZZY: In Bezug auf den Handel - ich schrieb und experimentiere immer noch mit Auftragsrastern, wobei ich die Logik der Auftragsvergabe als A + B - C schreibe, wobei A, B und C - also Aufträge mit vordefinierten Parametern - sehr nützlich für genetische Algorithmen sind - interessantes Thema

Wrapper sind eine gute und logische Lösung. Wenn es dem Zweck dient. Und ich denke, Wrapper sind eine Innovation in der prozeduralen Sprache. Genau im Sinne von Neuartigkeit und Nützlichkeit.

 
Igor Makanu:

Was den Handel betrifft, so habe ich Experimente mit Auftragsrastern geschrieben und führe sie immer noch durch, wobei ich die Logik der Auftragsplatzierung als A + B - C schreibe, wobei A, B und C Aufträge mit vordefinierten Parametern sind.

A, B und C mit vordefinierten Parametern- als Phänotyp für genetische Algorithmen?

 
Valeriy Yastremskiy:

Die Verkapselung bietet Namensfreiheit. Und wenn dieses Problem durch Namenslogik gelöst wird. Das ist natürlich kostspielig. dann kann Python in Funktionen geschrieben werden. aber es wird keine marktfähige Lösung sein. ABER ES IST MÖGLICH.

In Python ist jede Funktion ein Objekt, genau wie eine Variable)

 
Maxim Dmitrievsky:

Ein Beispiel für kontinuierliche OOP ist übrigens Python. Dort weiß eigentlich niemand, dass es etwas anderes als OOP gibt.

es gibt Closures und man kann ganz ohne OOP schreiben, zumindest in der alten Version, was auch immer man will.

 
Maxim Dmitrievsky:

in Python ist jede Funktion, wie eine Variable, ein Objekt)

Alles, was Sie tun können, ist Referenzen zu verwenden, um alles zu lösen, solange sich die Namen nicht überschneiden. Eine Funktion ist natürlich ein Objekt, aber ihr Ergebnis ist intern vereinheitlicht, und nur in global und public kann man hineinschauen. ich mag Pythons Logik)))

 
Andrei Trukhanovich:

es gibt Schließungen und es ist möglich, überhaupt ohne oop zu schreiben, zumindest in der alten Version, was auch immer man möchte

Ja, das kann man, aber der minimale Baustein ist immer noch ein Objekt.

 
Maxim Kuznetsov:

Ich habe ihn schon lange nicht mehr gesehen...

Hat er wirklich einen anderen Benutzernamen angenommen?

Nein, das ist nicht Peter, das ist ein anderer Schreibstil.

 

die stark unternehmensorientierte OOP ist Java. In unserem Bereich ist Du* *opy vertreten (gestreut, um sich nicht zu verzetteln). Wenn Sie wollen, Objekt Schönheit - versuchen nüchtern zu verstehen und zu erinnern, ihre API, zum Glück ist das Thema bekannt :-)

Aber das ist alles Blödsinn...

Um Ihre Programmierkenntnisse zu verbessern, möchten Sie vielleicht etwas lernen, das Ihnen den Kopf verdreht. Zum Beispiel gibt es Rebol/Red ( https://www.red-lang.org/)- eine tolle Sache, es ist nicht ganz klar, aber es ist cool.

oder ein Klassiker, Smalltalk(https://pharo.org/). Sie können es sogar in der Produktion verwenden.

Und dieses ganze "Lasst uns A+B in verschiedenen Stilen schreiben" ist ein Kinderspiel, ganz ehrlich.

Und dann werden alle Fragen, wer cooler ist, OOP oder FP, von selbst verschwinden.

Red/System: New Features
  • 2020.08.20
  • Nenad Rakocevic
  • www.red-lang.org
In the past months, many new features were added to Red/System, the low-level dialect embedded in Red. Here is a sum up if you missed them. Subroutines During the work on the low-level parts of the new Red lexer, the need arised for intra-function factorization abilities to keep the lexer code as DRY as possible. Subroutines were introduced to...
 
Maxim Dmitrievsky:

Ja, das kann man, aber der Mindestbaustein ist immer noch die Einrichtung.

das Objekt war ein Durchbruch.

 
Mikhail Mishanin:

Wo OOP bequemer ist, verwende ich OOP, wo ich Speicher und Zeit sparen und für mich selbst programmieren muss, bleibe ich bei prozeduralem Code. Bin gerade auf einen Artikel gestoßen, wollte mal Meinungen hören, wo/was besser ist). Ergebnis - ich habe in meiner Ansprache viele verschiedene Dinge gehört, nicht über Programmierung) Alles wie immer.

Es wird Ihnen also niemand etwas Neues erzählen. Verwenden Sie das, womit Sie sich wohlfühlen, das ist alles.

Um Fehler zu minimieren, gibt es ein ganzes Gebiet, das als beweiskräftige Programmierung bezeichnet wird (insbesondere die formale Verifikation).

Als Teilmaßnahme zur Verbesserung der Codequalität können Sie vorschlagen, einem gängigen Codestil zu folgen (z.B. google codestyle), Assertions, Constraints (const, override, access specifiers) zu verwenden, die zwar keinen Einfluss auf die Ausführung haben, aber bei falscher Verwendung Kompilierungsfehler verursachen, sich mit den Ansätzen im Design im Allgemeinen vertraut zu machen

Abgesehen von kritischen Programmierbereichen ist es in der Regel wichtiger, die Produktionsversion schnell fertigzustellen, als die Qualität des Codes zu verbessern, was schlecht, aber wahr ist.
Grund der Beschwerde: