Frage

Ich habe die folgende Frage zu lesen - Wie sicher wäre es funktional-java verwenden Schließungen Projekt zu einem Java-Produktion hinzufügen? und ich hatte gedacht, die die Verwendung von Functional Java-Projekt als auch in meinem aktuellen Projekt. Ich habe mich gefragt, was Stack-Überlauf des sind Anwender Erfahrungen mit dem Functional Java-Projekt mit? Insbesondere bin ich über einige dieser Besonderheiten neugierig:

  • Haben erhöhen sie die Qualität des Codes oder Klarheit?
  • Steigern Sie Ihre Produktivität?
  • Reduzieren Sie potenzielle Fehlerquellen?
  • Schlagleistung?
War es hilfreich?

Lösung

Ich habe auf einem Team gewesen, das die FJ-Bibliothek verwendet, und ich weiß von anderen. Auf einem Team wurde als Ersatz für eine home-grown-Bibliothek verwendet, die weniger poliert war, auf eine andere es Google Kollektionen ersetzt. Ich weiß auch, einige Leute, die den Quellcode von FJ Nachahmer auf ihre eigene Implementierung zu rollen.

Meiner Meinung nach, wenn Sie Java verwenden müssen, sollten Sie so etwas wie Functional Java verwenden, um Ihr Leben leichter zu machen.

  

Haben sie erhöhen die Qualität des Codes oder Klarheit?

-Code in einem funktionalen Stil geschrieben ist prägnanter, daher klarer. Die Bibliothek kommt mit und fördert die Verwendung von unveränderlichen Datenstrukturen, die Qualität verbessert. Die Bibliothek fördert auch die Komposition der Vererbung, die die Wiederverwertbarkeit des Codes verbessert.

  

Steigerung der Produktivität?

Auf jeden Fall. Entwickler mit leistungsfähigeren Tools sind produktiver. Nach meiner Erfahrung Entwickler das Gefühl, dass erstklassige Funktionen Programmierung einfacher und angenehmer zu machen. Glückliche Programmierer sind produktive Programmierer.

  

reduziert potenzielle Fehlerquellen?

Eine funktionelle Art der Programmierung schreckt wandelbar Staat, der eine große Klasse von Bugs beseitigt. Auch leistungsstärkere Abstraktionen führen zu weniger Wiederholungen, die die Anzahl der Plätze reduziert, wo etwas falsch ist.

  

Schlagleistung?

Es gibt keinen Grund, dass die Leistung zu glauben, würde die eine oder die andere beeinflusst werden. Die zur Verfügung gestellten Datenstrukturen sind für einfache Bedienung und Ausdruckskraft gestaltet, statt Leistung, aber sie sind geschrieben optimal für das, was sie sind. Wie bei jedem anderen, wie Sie fahren ist wichtiger als das, was Sie fahren. Zum Beispiel ist fj.data.List eine verknüpfte Liste, so hat es O (n) mit wahlfreiem Zugriff und Verkettung, deshalb vermeiden Sie es für diese Zwecke. fj.data.Stream hat O (1) Verkettung durch Vergleich.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top