Projekt z Paradygmatów Programowania: "Optymalizacja kodu źródłowego – porównanie czasów działania".
Jest to aplikacja desktopowa napisana w języku programowania Java która przedstawia zalety optymalizacji kodu źródłowego. Do jej uruchomienia wymagane jest zainstalowane środowisko Java Runtime Environment 8.
- Porównanie algorytmów sortowania (Selection Sort, Bubble Sort, Insertion Sort) z domyślnym algorytmem Quicksort zaimplementowanym w pakiecie Arrays.sort.
- Porównanie czasu działania pętli o złożonościach O(n), O(n^2), O(n^3) wraz z opracją sortowania na strukturze danych: tablicy.
- Porównanie czasu działania osobnych pętli dla każdej funkcjonalności vs jedna pętla z całą funkcjonalnością (operacja na strukturze danych: tablica; Arrays.sort, Arrays.binarySearch, hashCode, toString).
- Porównanie czasów działania dla funkcji posiadających niepotrzebny kod kontra optymalny kod (operacja dodawania, mnożenia, łączenia tablic).
- Kod odpowiedzialny za uruchomienie strony internetowej kontra kod uruchamiający stronę internetową z dodatkowym malware obciążającym procesor na 100%.
- Porównanie czasu działania pętli for a do-while.
- Porównanie różnic skończonych a mnożenia.
- Zagadnienie silnej redukcji dla wyrażeń matematycznych.
- Generowane wykresów dla sortowań oraz pętli o różnych złożonościach obliczeniowych.
Najnowsza wersja aplikacji dostępna jest do pobrania z zakładki Release.
Do generowania wykresów została użyta biblioteka JFreeChart.
Stworzone dla UŚ oraz WIiNoM z ♥
By Adrian Rupala