Reimplementierung

Aus Programmieren-Wiki
🚧 Diese Seite befindet sich in Bearbeitung 🚧
🤓 Diese Seite ist eine Bewertungsrichtlinie, die ab Blatt 2 annotiert und ab Blatt 3 abgezogen wird. 🤓

Beschreibung

Manchmal ist es notwendig, komplexere Datenstrukturen, Algorithmen oder ähnliches zu implementieren. Dabei sollte insbesondere darauf geachtet werden, zuerst zu prüfen, ob diese Funktionalitäten nicht schon von der Java API bereitgestellt werden.

Zum einen muss nicht auf Korrektheit der Strukturen und Algorithmen geachtet werden, zum anderen ist das nur mehr Quellcode, der ggf. unnötig anderweitig fehleranfällig werden kann.

Es könnte zusätzlich auch dazu führen, dass Personen, die den Quellcode dann verwenden, nicht wissen, was an dem eigenen Quellcode unterschiedlich ist zu dem der Java API. Es gibt also mehrere Strukturen, die gleich sind, aber ggf. sogar anders benannt wurden. Das führt insgesamt zu einer sehr instabilen Gesamtstruktur, die zudem auch sehr undurchsichtig ist.


Negativbeispiel

public static void main(String[] args) {
	int[] unsorted = {5, 7, 9, 1, 3, 7, 2, 4, 0};
	int[] sorted = bubbleSort(unsorted);
}

public int[] bubbleSort(int[] numbers) {
	for (int i = 0; i < numbers.length - 1; i++) {
		for (int j = 0; j < numbers.length - i - 1; j++) {
			if (numbers[j] > numbers[j + 1]) {
                int temp = numbers[j];
                numbers[j] = numbers[j + 1];
                numbers[j + 1] = temp;
            }
		}
	}
}

Positivbeispiel

public static void main(String[] args) {
	int[] unsorted = {5, 7, 9, 1, 3, 7, 2, 4, 0};
	int[] sorted = Arrays.sort(unsorted);
}


Wenn du diese Seite interessant fandest, findest du hier noch mehr Seite(n) dazu:
Komplexität