Java

Radosław Szmit

3 minute read

Czas na rozwiązanie ostatniego wyzwania z programowania w języku Java. Tym razem chcieliśmy byście użyli funkcjonalności dostępnych od JDK w wersji 8 to przetworzenia zbioru filmów z portalu MovieLens (zbiór MovieLens 20M Dataset, plik movies.csv). Programowanie funkcyjne dla wielu początkujących osób bywa bardzo trudne oraz wymaga praktyki, dlatego pozostawiliśmy tą część języka Java na sam koniec. Gdybyście chcieli rozszerzyć wiedzę z tego zakresu, oprócz dokumentacji i materiałów dostępnych w internecie, na rynku można znaleźć wiele książek dotyczących programowania funkcyjnego w Javie 8, jak choćby Functional Programming in Java której autorem jest Venkat Subramaniam, bardzo popularny prezenter na konferencjach programistycznych w Polsce i na świecie lub Java 8.

Radosław Szmit

8 minute read

Do tej pory cały czas mówiliśmy, że Java jest językiem obiektowym. Poświęciliśmy temu zagadnieniu dwa dedykowane wyzwania, choć tak naprawdę już od pierwszego programu, gdyż użyliśmy słowa kluczowego class programowaliśmy obiektowo w Javie. Tak naprawdę tylko typy proste, ze względu na pewne optymalizacje, nie są obiektami, czyli jak już wiemy z poprzednich wyzwań, nie dziedziczą po java.lang.Object. Jednak programowanie obiektowe, nie jest jedynym paradygmatem programowania jaki może wykorzystywać język programowania.

Radosław Szmit

3 minute read

W dzisiejszym poście chciałbym przedstawić kilka książek które według mnie każdy kto chce zawodowo programować w Javie powinien przeczytać. Nie będą to oczywiście książki do nauki samego języka, tylko wiedza dużo szersza, choć wcale nie musisz być niezwykle doświadczonym programistą by zacząć je czytać, wręcz przeciwnie, niejeden młodszy programista może znacząco poprawić wynik swojej rozmowy kwalifikacyjnej po tej lekturze. Część z tych książek została wydana w polskim tłumaczeniu, jednak podam nazwy oryginalnych wydań.

Radosław Szmit

1 minute read

Czas na rozwiązanie kolejnego wyzwania. Ten program także można było rozwiązać na wiele sposobów, wykorzystując różne możliwości języka Java. Poniżej jedno z możliwych rozwiązań: package pl.kodolamacz.io; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; import java.text.MessageFormat; import java.util.List; import java.util.Scanner; public class Exercise { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Proszę podać nazwę pliku wejściowego: "); String userSourceFilePath = scanner.nextLine(); System.out.println("Proszę podać nazwę pliku wynikowego: "); String userResultFilePath = scanner.

Radosław Szmit

9 minute read

W dzisiejszym poście chcielibyśmy porozmawiać o operacjach wejścia wyjścia w Javie. Do tej pory nasze programy były zamknięte na świat, nie wykonywały żadnej komunikacji poza wyświetlaniem w konsoli informacji dla użytkownika i wczytywanie wprowadzonych przez niego danych. Jednak to zdecydowanie za mało, nasz program musi umieć robić takie rzeczy jak obsługa plików, komunikacja z bazami danych, przesyłanie i odbieranie danych po sieci czy integracja z innymi systemami lub urządzeniami.