Als «functional-programming» getaggte Fragen

Funktionale Programmierung ist ein Paradigma, das versucht, Rechenprobleme durch die verkettete Bewertung von Funktionen zu lösen, deren Ausgabe eher durch ihre Eingaben als durch den Programmzustand bestimmt wird. Bei dieser Art der Programmierung sind Nebenwirkungen und veränderbare Daten veraltet und normalerweise streng isoliert.


4
Was soll ich aus dem Programm lernen?
Ich habe mich gefragt, welche einzigartigen Funktionen ich aus Scheme lernen kann, um ein besserer Programmierer zu werden. Ich habe viel Erfahrung in Mainstream-Sprachen und möchte meinen Horizont erweitern und etwas über funktionale Aspekte lernen, die in anderen Sprachen fehlen. Ich bin mit Verschlüssen aus Javascript, Lambda-Ausdrücken aus C # …

2
Verbieten funktionale Programmiersprachen Nebenwirkungen?
Laut Wikipedia, funktionale Programmiersprachen , die deklarativ sind, verbieten sie Nebenwirkungen. Deklarative Programmierung im Allgemeinen versucht, Nebenwirkungen zu minimieren oder zu beseitigen. Laut Wikipedia hängt ein Nebeneffekt auch mit Zustandsänderungen zusammen. Funktionale Programmiersprachen eliminieren in diesem Sinne tatsächlich Nebenwirkungen, da sie keinen Zustand speichern. Zusätzlich hat eine Nebenwirkung eine andere …



3
Summentypen vs Polymorphismus
Im vergangenen Jahr habe ich den Sprung gewagt und eine funktionale Programmiersprache (F #) gelernt. Eines der interessantesten Dinge, die ich gefunden habe, ist, wie sich dies auf die Art und Weise auswirkt, wie ich OO-Software entwerfe. Die beiden Dinge, die mir in OO-Sprachen am meisten fehlen, sind Mustervergleich und …

5
Best Practice - Wrapping, wenn um Funktionsaufruf herum, vs Hinzufügen eines frühen Exits, wenn Guard in Funktion ist
Ich weiß, dass dies sehr anwendungsfallspezifisch sein kann, aber ich frage mich viel zu oft. Gibt es eine allgemein bevorzugte Syntax? Ich frage nicht, was der beste Ansatz ist, wenn ich in einer Funktion bin. Ich frage, ob ich vorzeitig beenden oder die Funktion einfach nicht aufrufen soll. Wrap, wenn …

3
Warum wird von der Verwendung von Zuweisungsoperatoren oder Schleifen bei der funktionalen Programmierung abgeraten?
Wenn meine Funktion die folgenden zwei Anforderungen erfüllt, kann die Funktion Sum , die die Summe der Elemente in einer Liste zurückgibt, in der das Element für eine bestimmte Bedingung als wahr ausgewertet wird, als reine Funktion bezeichnet werden, nicht wahr ? 1) Für einen gegebenen Satz von i / …

6
Was kann im Zusammenhang mit der funktionalen Programmierung schief gehen, wenn mein Objekt veränderlich ist?
Ich kann sehen, dass die Vorteile von veränderlichen gegenüber unveränderlichen Objekten wie unveränderlichen Objekten aufgrund des gemeinsamen und beschreibbaren Status viele schwer zu behebende Probleme bei der Multithread-Programmierung beseitigen. Im Gegenteil, veränderbare Objekte helfen dabei, mit der Identität des Objekts umzugehen, anstatt jedes Mal eine neue Kopie zu erstellen, und …

2
Wie kann ich funktionalen JavaScript-Code lesen?
Ich glaube, ich habe einige / viele / die meisten Grundkonzepte gelernt, die der funktionalen Programmierung in JavaScript zugrunde liegen. Ich habe jedoch Probleme beim spezifischen Lesen von Funktionscode, selbst von Code, den ich geschrieben habe, und frage mich, ob mir jemand Hinweise, Tipps, Best Practices, Terminologie usw. geben kann, …

1
Ist es sinnvoll, die Prinzipien in Redux auf OO-Sprachen anzuwenden?
Redux ist im Wesentlichen eine funktionale Programmierung und macht sehr viel Sinn. Wenn ich in einem anderen Projekt zu einer Nicht-Javascript-OOP-Sprache zurückkehre, möchte ich dieselben Prinzipien anwenden, z. B. ein einzelnes Zustandsobjekt, Reduzierungen, die auf Teile dieses Zustands wirken, eine Geschäftsschicht semantischer Aktionen zum Ändern des Zustands. Mein Projekt ist …


3
Wird eine Funktion, die einen Wert von einer anderen Funktion erhält, als rein betrachtet?
Ich versuche herauszufinden, wie ich mit Standardvariablenwerten umgehen kann, wenn ich Funktionen ohne Nebenwirkungen mache, und habe Folgendes erreicht: function getDefaultSeparator() { return ':'; } function process(input, separator) { var separator = separator || getDefaultSeparator(); // Use separator in some logic return output; } Das Standardtrennzeichen wird in anderen Funktionen …

3
Was ist die funktionale Programmierantwort auf typbasierte Invarianten?
Mir ist bewusst, dass das Konzept der Invarianten über mehrere Programmierparadigmen hinweg existiert. Beispielsweise sind Schleifeninvarianten für die OO-, funktionale und prozedurale Programmierung relevant. Eine sehr nützliche Art in OOP ist jedoch eine Invariante der Daten eines bestimmten Typs. Dies nenne ich im Titel "typbasierte Invarianten". Zum Beispiel Fractionkönnte ein …

1
Welche Beziehung besteht zwischen „Fluss“ und rein funktionaler reaktiver Programmierung?
Flux ist meines Wissens eine Technik, mit der der Datenfluss einer Anwendung unidirektional behandelt wird, wobei der Status in schreibgeschützten, in sich geschlossenen "Speichern" vom Rest des Programms isoliert bleibt, die durch Abhören ihren eigenen Status ändern können "Aktionen", die von Ansichten ausgegeben und von Dispatchern ausgelöst werden. Oder kurz …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.