Пожалуйста, войдите в систему, чтобы принять участие в дискуссии (добавить собственные рецензию, или комментарий)
Цитировать эту публикацию
%0 Journal Article
%1 kreft2016redundanten
%A Kreft, Klaus
%A Langer, Angelika
%D 2016
%J javamagazin
%K execute-around-pattern
%N 8
%P 12-19
%T Redundanten Code vermeiden - so geht's! - Java 8: Low-Level-Aspekte beim API Design mit Lambdas
%U https://entwickler.de/leseproben/execute-around-250834.html
%X Der Artikel zeigt am Beispiel der Prüfung von Klasseninvarianten wie sich das Execute-Around-Pattern anwenden lässt.
@article{kreft2016redundanten,
abstract = {Der Artikel zeigt am Beispiel der Prüfung von Klasseninvarianten wie sich das Execute-Around-Pattern anwenden lässt.},
added-at = {2019-05-12T18:40:25.000+0200},
author = {Kreft, Klaus and Langer, Angelika},
biburl = {https://www.bibsonomy.org/bibtex/28ae46f8e1eeba720013c6b14f8ef9f9e/huluvu424242},
description = {Klasseninvarianten beschreiben den gültigen Zustand eines Objektes, welcher nach der Objekterzeugung stets gelten soll. Insbesondere gelten diese Bedingungen stets vor und nach der Ausführung einer Methode. So müsste also beim Betreten und Verlassen jeder Methode der gleiche Kode zur Prüfung aufgerufen werden.
Ein erster Schritt ist die Auslagerung der Prüfung in eine eigene Methode welche dann jeweils am Anfang und Ende jeder Methode der Klasse aufgerufen wird, wie auch am Ende des Konstruktors.
Dabei entsteht redundanter Kode welcher durch das Excecute-Around-Pattern vermieden werden kann. Das Pattern verwendet eine Methode welche die Invariantenprüfung vornimmt und dieser wird der eigentliche Methodenkode als Lamdbda übergeben. Ein sehr interessanter Ansatz welcher aus der funktionalen Programmierung nun auch den Weg in die Objektorientierte Programmierung gefunden hat. },
interhash = {c222303b30a34767742074974a384ff4},
intrahash = {8ae46f8e1eeba720013c6b14f8ef9f9e},
journal = {javamagazin},
keywords = {execute-around-pattern},
language = {Deutschland},
number = 8,
pages = {12-19},
timestamp = {2019-05-12T18:40:41.000+0200},
title = {Redundanten Code vermeiden - so geht's! - Java 8: Low-Level-Aspekte beim API Design mit Lambdas},
url = {https://entwickler.de/leseproben/execute-around-250834.html},
year = 2016
}