Jarosław Czub

Ogólnie o rozwou, programowaniu i nie tylko…

Tag: java (Page 2 of 3)

Java 8 – Strumienie – java.util.stream

Strumienie (te związane z danymi a nie do obsługi plików) w Javie 8 to potężne narzędzie do rzucania danymi w lewo i prawo. Do ich przekształcania, filtracji, itd., dlatego warto je wziąć na tapetę i trochę się nimi pobawić. Najprościej strumień można sobie wyobrazić jako potok danych na których wykonujemy operację w różnych krokach, aż […]

Java 8 – sortowanie i komparatory

Implementacje typu TreeSet i TreeMap umożliwiają porządkowanie danych, gdyż są one układane w kolekcji według operacji porównywania. Domyślnie w TreeSet i TreeMap dane są sortowane według porządku naturalnego (w kolejności: A B C D…). Jeżeli chcemy zastosować inny rodzaj sortowania powinniśmy użyć własnego komparatora podczas tworzenia instancji obiektu TreeSet lub TreeMap. Warto zauważyć ze w Javie 8 rozbudowano klasę komparatorów […]

Java 8 – Kolekcje cz. 2 – przykłady List, Set, Map

Parę małych przykładów z użyciem kolekcji: Operacje na listach // // Tworzenie listy z tablicy // List<String> list1 = Arrays.asList(new String[]{"Pierwszy", "Drugi", "Trzeci", "Czwarty", "Piąty"});   // // Standartowe tworzenie listy // List<String> list2 = new ArrayList<>(); list2.add("Pozycja 1"); list2.add("Pozycja 2"); list2.add("Pozycja 3"); list2.add("Pozycja 4"); list2.add("Pozycja 5");   // Dodajemy duplikat list2.add("Pozycja 4");   // […]

Java 8 – Kolekcje cz. 1 – Interfejsy, klasy, metody

Kolekcje w Javie oraz klasy narzędziowe z biblioteki java.util.Collections to bardzo potężne narzędzia do operowania na danych. Można stwierdzić za prawidłowe dobranie struktur danych oraz ich sposobów przechowywania, może bardzo zoptymalizować i przyśpieszyć działania programu. Czasami bardziej skutecznie niż „wysublimowane algorytmy i optymalizacje kodu”. Przy używaniu kolekcji należy brać pod uwagę, nie tylko typ i […]

Java 8: Wielowątkowość cz1. – wstęp, theread, synchronizacja

Wielowątkowość w programowaniu to nie jest łatwy temat, źle użyta jest przyczyną bardzo wielu kłopotów. Ten temat będzie podzielony na parę części: Wielowątkowość cz1. – wstęp, theread, synchronizacja Wielowątkowość cz2. – komunikacja międzywątkowa, synchronizacja poprzez kolejkę Wielowątkowość cz3. – egzekutory, pule wątków, Future i Callable Wielowątkowość cz4. – framerwork Fork/Join Wielowątkowość cz5. – klasy wspomagające […]

Java 8: Lambda

Dawno nie było pisania technicznego :(, troszkę jest rzeczy na głowie. Dzisiaj na tapetę idzie Java 8 i jej jeden z ficzerów operator Lambda. Co to są Lambdy? Jest to uproszczony sposób zapis metod anonimowych, tylko taki bardziej czytelniejszy. Lambda nawiązuje do języków funkcyjnych, gdzie tak jak w matematyce kładzie się nacisk na obliczanie wartości […]

Panie u mnie działa …. a u mnie nie chce … Google Web Tolkit, SoundManager i libGdx

Multiplatformowość, wszędzie teoretycznie jest bez problemu i zawsze działa … ale w teorii. Mam projekt nad którym pracuję w wolnych chwilach od produkcyjnego kodowania, wykorzystującą libGdx’a, z założenia do wykonywania aplikacji wieloplatformowych Windows, Linux, MacOS, Android, oraz HTML/WebGL oraz dużo rzeczy wspomaga. I któreś to podejście do kompilacji projektu do Weba przy pomocy GWT i […]

Wzorzec – Observer (Obserwator)

Z życia wzięte: … napięte terminy, ciasny czas, każdy co chwilę czegoś chce. Takie coś przeszkadza i co chwilę odrywa mnie od projektu, w końcu się lekko wkurzam i mówię „tu jest kartka, proszę zostawcie swoje telefony, jak skończę bieżący temat to zawiadomię was” … To jest przykład działania wzorca obserwatora, tak w realnym życiu. […]

Wzorzec – Singleton

Singleton – konstrukcyjny wzorzec projektowy którego zadaniem jest ograniczenie ilości instancji obiektu w systemie oraz zapewnienie globalnego dostępu do stworzonego obiektu. Wydawało by się, że prosto jest tylko stworzyć obiekt, ale ten wzorzec ma swoje zalety: Tworzenie instancji klasy jest niewidoczne dla użytkownika Lazy loading – obiekt jest tworzony kiedy następuje jego próba pierwszego użycia […]

Wzorzec – Composite (Kompozyt)

Composite (Kompozyt) – strukturalny wzorzec projektowy, którego zadaniem jest łączenie obiektów w strukturę tak, że reprezentują hierarchię części-całość, unifikując dostęp do kolekcji jak i pojedynczego obiektu. Umożliwia to klientom jednolite traktowanie pojedynczych obiektów i również ich kompozycji. Tego wzorca używałem w klasach np. w tym projekcie, gdzie poszczególne efekty mogły być uzyskane tylko przy pomocy […]

© 2024 Jarosław Czub — Powered by WordPress