Nauka Javy. Wprowadzenie do tworzenia aplikacji do rzeczywistych zastosowań. Wydanie V
- Autorzy:
- Marc Loy, Patrick Niemeyer, Daniel Leuck
- Wydawnictwo:
- Helion
- Ocena:
- 4.0/6 Opinie: 1
- Stron:
- 464
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis książki: Nauka Javy. Wprowadzenie do tworzenia aplikacji do rzeczywistych zastosowań. Wydanie V
Twórcy Javy od początku historii tego języka śmiało wprowadzali kolejne awangardowe innowacje, a pisane w niej aplikacje miały swój udział w napędzaniu internetowego postępu. Obecnie Java jest uważana za najpopularniejszy język programowania na świecie, a miliony deweloperów wciąż tworzą za jej pomocą oprogramowanie dla niemal każdego urządzenia wyposażonego w procesor. Java jest wyjątkowo wszechstronnym narzędziem: pozwala napisać zarówno prostą aplikację mobilną, jak i złożony system internetowy. Pozostaje przy tym stosunkowo prosta w nauce - co sprawia, że jest idealnym językiem dla początkujących, którzy mają ambicję dojścia do profesjonalnego poziomu.
Ta książka jest praktycznym przewodnikiem dla każdego, kto chce zdobyć doświadczenie w tworzeniu rzeczywistych aplikacji w Javie. To również znakomity kurs programowania obiektowego dla początkujących, umożliwiający gruntowne zrozumienie podstaw języka Java i jego interfejsów API. Wyczerpująco opisano tu biblioteki klas, techniki programowania oraz idiomy. Nie zabrakło zaawansowanych zagadnień, takich jak wyrażenia lambda czy serwlety. W tym przejrzanym i zaktualizowanym wydaniu ujęto zmiany wprowadzone zarówno w wersji 11 Javy, jak i w przeglądowych wersjach 12, 13 i 14. Przedstawiono więc takie nowości jak interferencja typów w typach sparametryzowanych, ulepszenia w obsłudze wyjątków czy nowe środowisko testowe jshell.
W książce między innymi:
- przygotowanie środowiska pracy i konfiguracja przydatnych narzędzi
- typy, instrukcje, wyrażenia oraz obiekty w Javie
- obsługa wątków i pakiet współbieżności Javy
- błędy i wyjątki
- interfejs API wyrażeń regularnych
- tworzenie zaawansowanych aplikacji i usług sieciowych
Java: niezawodny kod, aplikacja, która działa!
Wybrane bestsellery
-
Po przyswojeniu zagadnień związanych z językiem C# i aplikacjami konsoli dowiesz się, jak tworzyć praktyczne aplikacje i usługi z wykorzystaniem biblioteki ASP.NET Core, a także wzorzec MVC i technologię Blazor. Zapoznasz się z metodami stosowania wielozadaniowości do poprawy wydajności i skalowa...
C# 10 i .NET 6 dla programistów aplikacji wieloplatformowych. Twórz aplikacje, witryny WWW oraz serwisy sieciowe za pomocą ASP.NET Core 6, Blazor i EF Core 6 w Visual Studio 2022 i Visual Studio Code. Wydanie VI C# 10 i .NET 6 dla programistów aplikacji wieloplatformowych. Twórz aplikacje, witryny WWW oraz serwisy sieciowe za pomocą ASP.NET Core 6, Blazor i EF Core 6 w Visual Studio 2022 i Visual Studio Code. Wydanie VI
(0,00 zł najniższa cena z 30 dni)95.40 zł
159.00 zł(-40%) -
Ta książka jest praktycznym i wyczerpującym przewodnikiem, dzięki któremu w pełni wykorzystasz możliwości Kali Linux. Opisano w niej wiele interesujących zagadnień związanych z przeprowadzaniem testów penetracyjnych. Dowiesz się, jak zbudować nowoczesne środowisko testowe z użyciem kontenerów Doc...(0,00 zł najniższa cena z 30 dni)
59.40 zł
99.00 zł(-40%) -
Oto intuicyjny przewodnik dla średnio zaawansowanych programistów Pythona, pomyślany tak, by przyswajać zasady programowania zorientowanego obiektowo podczas praktycznych ćwiczeń. Dowiesz się, jakie problemy wiążą się z zastosowaniem podejścia proceduralnego i jak dzięki podejściu obiektowemu pis...
Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika
(0,00 zł najniższa cena z 30 dni)53.40 zł
89.00 zł(-40%) -
Dzięki temu praktycznemu przewodnikowi komfortowo rozpoczniesz pracę z platformą streamingową Apache Kafka. Poznasz najlepsze praktyki w zakresie jej wdrażania i konfiguracji, aby zapewnić sobie możliwość strumieniowego przetwarzania dużych ilości danych. Zaznajomisz się z AdminClient API Kafki, ...
Kafka w praktyce. Przetwarzanie strumieniowe i potoki danych o dużej skali. Wydanie II Kafka w praktyce. Przetwarzanie strumieniowe i potoki danych o dużej skali. Wydanie II
(0,00 zł najniższa cena z 30 dni)59.40 zł
99.00 zł(-40%) -
Trzech poważanych architektów oprogramowania omawia cały cykl życia, prezentując praktyczne wskazówki, metody stosowane przez ekspertów i sprawdzone modele przydatne w każdym projekcie niezależnie od poziomu jego złożoności. Dowiesz się, jak za pomocą architektury radzić sobie z coraz większymi w...
Architektura oprogramowania w praktyce. Wydanie IV Architektura oprogramowania w praktyce. Wydanie IV
(0,00 zł najniższa cena z 30 dni)59.40 zł
99.00 zł(-40%) -
Ta książka jest przeznaczona dla osób chcących zrozumieć działanie łańcucha bloków i rozważających praktyczne zastosowanie tej technologii. Skorzystają z niej i menedżerowie, i specjaliści IT. Omówiono tu ewolucję blockchaina i najróżniejsze sposoby jego użycia — przy czym to wyjaśnienie wy...
Blockchain. Przewodnik po technologii łańcucha bloków. Kryptowaluty, inteligentne kontrakty i aplikacje rozproszone Blockchain. Przewodnik po technologii łańcucha bloków. Kryptowaluty, inteligentne kontrakty i aplikacje rozproszone
(0,00 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
Ta książka jest przeznaczona dla doświadczonych programistów, którzy chcą zdobyć lub pogłębić wiedzę o metodologiach i dobrych praktykach tworzenia złożonego oprogramowania. Stanowi interesująco napisany zbiór heurystyk i technik ułożonych w kolejności stosowania podczas rozwijania projektu progr...
Zrównoważony kod. Dobre praktyki i heurystyki dla inżynierów oprogramowania Zrównoważony kod. Dobre praktyki i heurystyki dla inżynierów oprogramowania
(0,00 zł najniższa cena z 30 dni)59.40 zł
99.00 zł(-40%) -
Dave Thomas i Andy Hunt napisali pierwsze wydanie tej wpływowej książki w 1999 roku, aby pomóc swoim klientom tworzyć lepsze oprogramowanie i na nowo odnaleźć radość z kodowania. Nauki płynące z tamtego wydania pomogły wielu pokoleniom programistów zbadać istotę rozwoju oprogramowania, niezależni...
Pragmatyczny programista. Od czeladnika do mistrza. Wydanie II Pragmatyczny programista. Od czeladnika do mistrza. Wydanie II
(0,00 zł najniższa cena z 30 dni)46.20 zł
77.00 zł(-40%) -
W tej książce znajdziesz zasady definiujące rzemiosło, jakim jest wytwarzanie oprogramowania. Zebrano w niej procedury, standardy i normy etyczne, dzięki którym tworzony kod będzie niezawodny i efektywny, a całe oprogramowanie stanie się powodem do dumy. Zawarto tutaj szereg pragmatycznych wskazó...
Rzemiosło w czystej formie. Standardy i etyka rzetelnych programistów Rzemiosło w czystej formie. Standardy i etyka rzetelnych programistów
(0,00 zł najniższa cena z 30 dni)59.40 zł
99.00 zł(-40%) -
Wiernym czytelnikom publikacji spod znaku wydawnictwa Helion Piotra Wróblewskiego przedstawiać nie trzeba. Dość wspomnieć, że jest on autorem wielu publikacji poświęconych głównie programowaniu i obsłudze komputerów. Jego najnowsza książka, Algorytmy w Pythonie. Techniki programowania dla praktyk...
Algorytmy w Pythonie. Techniki programowania dla praktyków Algorytmy w Pythonie. Techniki programowania dla praktyków
(0,00 zł najniższa cena z 30 dni)71.40 zł
119.00 zł(-40%)
O autorach książki
3 Marc Loy, Patrick Niemeyer, Daniel LeuckMarc Loy jest programistą i szkoleniowcem. Specjalizuje się w projektowaniu doświadczeń użytkownika i tworzeniu aplikacji mobilnych.
Patrick Niemeyer jest niezależnym konsultantem. Pisze książki techniczne dotyczące sieci i aplikacji rozproszonych.
Daniel Leuck jest dyrektorem generalnym spółki Ikayzo, firmy z oddziałami w Tokio i Honolulu, zajmującej się interaktywnym projektowaniem oprogramowania między innymi dla Sony, Oracle, Nomury i PIMCO.
Marc Loy, Patrick Niemeyer, Daniel Leuck - pozostałe książki
-
W tym podręczniku do praktycznej nauki programowania w języku C szczególną uwagę zwrócono na pisanie kodu umożliwiającego uzyskanie wysokiej wydajności w środowiskach o bardzo małych zasobach. Znalazło się tu gruntowne omówienie podstaw dobrego programowania w języku C. Opisano struktury kontroln...
Język C dla małych urządzeń. Krótki kod o wielkich możliwościach Język C dla małych urządzeń. Krótki kod o wielkich możliwościach
(40.20 zł najniższa cena z 30 dni)40.20 zł
67.00 zł(-40%) -
For makers looking to use the smallest microcontrollers or to wring the highest performance out of larger ones, the C language is still the best option. This practical book provides a solid grounding in C basics for anyone who tinkers with programming microcontrollers. You'll explore the many way...(29.90 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł(-15%) -
If you’re new to Java—or new to programming—this best-selling book will guide you through the language features and APIs of Java 11. With fun, compelling, and realistic examples, authors Marc Loy, Patrick Niemeyer, and Daniel Leuck introduce you to Java fundamentals—includ...
Learning Java. An Introduction to Real-World Programming with Java. 5th Edition Learning Java. An Introduction to Real-World Programming with Java. 5th Edition
(29.90 zł najniższa cena z 30 dni)237.15 zł
279.00 zł(-15%) -
GNU Emacs is the most popular and widespread of the Emacs family of editors. It is also the most powerful and flexible. Unlike all other text editors, GNU Emacs is a complete working environment--you can stay within Emacs all day without leaving. Learning GNU Emacs, 3rd Edition tells readers how ...
Learning GNU Emacs. A Guide to Unix Text Processing. 3rd Edition Learning GNU Emacs. A Guide to Unix Text Processing. 3rd Edition
(29.90 zł najniższa cena z 30 dni)143.65 zł
169.00 zł(-15%)
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Szczegóły książki
- Tytuł oryginału:
- Learning Java: An Introduction to Real-World Programming with Java, 5th Edition
- Tłumaczenie:
- Lech Lachowski, Rafał Jońca
- ISBN Książki drukowanej:
- 978-83-283-7128-6, 9788328371286
- Data wydania książki drukowanej:
- 2021-02-16
- ISBN Ebooka:
- 978-83-283-7129-3, 9788328371293
- Data wydania ebooka:
-
2021-02-16
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@helion.pl.
- Format:
- 168x237
- Numer z katalogu:
- 124149
- Rozmiar pliku Pdf:
- 6.1MB
- Rozmiar pliku ePub:
- 8.6MB
- Rozmiar pliku Mobi:
- 20.6MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
- Zgłoś erratę
- Kategorie:
Programowanie » Java - Programowanie
- Serie wydawnicze: O'Reilly
Spis treści książki
- Java 17
- Pochodzenie Javy 18
- Okres dojrzewania 19
- Maszyna wirtualna 20
- Java a inne języki programowania 23
- Bezpieczeństwo projektowania 26
- Upraszczaj, upraszczaj i jeszcze raz upraszczaj 26
- Bezpieczeństwo typów i wiązanie metod 27
- Realizacja przyrostowa 28
- Dynamiczne zarządzanie pamięcią 28
- Obsługa błędów 29
- Wątki 30
- Skalowalność 30
- Bezpieczeństwo implementacji 31
- Weryfikator 32
- Ładowarka klas 33
- Zarządca bezpieczeństwa 34
- Bezpieczeństwo na poziomie aplikacji i użytkownika 35
- Harmonogram Javy 35
- Przeszłość: Java 1.0 - Java 11 36
- Teraźniejszość: Java 14 38
- Przyszłość 39
- Dostępność 40
- Narzędzia i środowisko Javy 41
- Instalowanie JDK 42
- Instalowanie OpenJDK w systemie Linux 43
- Instalowanie OpenJDK w systemie macOS 43
- Instalowanie OpenJDK w systemie Windows 44
- Konfigurowanie środowiska IntelliJ IDEA i tworzenie projektu 46
- Uruchomienie projektu 50
- Pobieranie przykładów kodu 51
- HelloJava 51
- Klasy 54
- Metoda main() 55
- Klasy i obiekty 56
- Zmienne i typy klasowe 56
- HelloComponent 57
- Dziedziczenie 58
- Klasa JComponent 59
- Relacje i szukanie winnego 59
- Pakiety i importowanie 60
- Metoda paintComponent() 62
- HelloJava2: drugie podejście 63
- Zmienne instancyjne 64
- Konstruktory 65
- Zdarzenia 67
- Metoda repaint() 69
- Interfejsy 70
- Żegnaj i ponownie witaj 71
- Środowisko JDK 73
- Maszyna wirtualna Javy 74
- Uruchamianie aplikacji Javy 74
- Właściwości systemowe 76
- Ścieżka klas (classpath) 76
- Narzędzie javap 78
- Moduły 78
- Kompilator Javy 78
- Natychmiastowe sprawdzanie działania kodu Javy 80
- Pliki JAR 85
- Kompresja plików 85
- Narzędzie jar 86
- Narzędzie pack200 88
- Czas przygotowań 89
- Kodowanie tekstu 92
- Komentarze 94
- Komentarze javadoc 94
- Zmienne i stałe 96
- Typy 98
- Typy proste 99
- Typy referencyjne 103
- Inferencja typów 104
- Przekazywanie referencji 105
- Kilka słów na temat obiektów String 106
- Instrukcje i wyrażenia 106
- Instrukcje 107
- Wyrażenia 115
- Tablice 120
- Typy tablicowe 121
- Tworzenie i inicjowanie tablicy 121
- Używanie tablic 123
- Tablice anonimowe 125
- Tablice wielowymiarowe 125
- Typy, klasy i tablice, o rany! 127
- Klasy 129
- Deklarowanie klas i tworzenie ich instancji 131
- Uzyskiwanie dostępu do pól i metod 132
- Składowe statyczne 137
- Metody 139
- Zmienne lokalne 140
- Przesłanianie 141
- Metody statyczne 142
- Inicjowanie zmiennych lokalnych 144
- Przekazywanie argumentów i referencje 145
- Klasy opakowujące dla typów prostych 146
- Przeciążanie metod 148
- Tworzenie obiektów 149
- Konstruktory 150
- Praca z konstruktorami przeciążonymi 151
- Niszczenie obiektów 152
- Mechanizm odzyskiwania pamięci 153
- Pakiety 154
- Importowanie klas 154
- Pakiety niestandardowe 156
- Widoczność i dostępność składowych 157
- Kompilowanie pakietów 159
- Zaawansowane projektowanie klas 160
- Tworzenie podklas i dziedziczenie 160
- Interfejsy 165
- Klasy wewnętrzne 167
- Anonimowe klasy wewnętrzne 168
- Organizowanie zawartości i uwzględnianie występowania błędów 170
- Wyjątki 174
- Klasy błędów i wyjątków 174
- Obsługa wyjątków 176
- Bąbelkowanie 179
- Ślady stosu 180
- Wyjątki sprawdzane i niesprawdzane 181
- Rzucanie wyjątków 182
- Kłopotliwe try 185
- Klauzula finally 186
- try-with-resources 186
- Kwestie związane z wydajnością 188
- Asercje 188
- Włączanie i wyłączanie asercji 189
- Używanie asercji 190
- API rejestrowania 191
- Przegląd 191
- Poziomy rejestrowania 193
- Prosty przykład 194
- Właściwości konfiguracyjne rejestrowania 195
- Klasa Logger 197
- Wydajność 197
- Wyjątki w praktyce 198
- Kolekcje 199
- Interfejs Collection 200
- Typy kolekcji 201
- Interfejs Map 202
- Ograniczenia typów 204
- Kontenery, czyli budowanie lepszej pułapki na myszy 205
- Czy kontenery można naprawić? 206
- Wprowadzenie do typów i metod sparametryzowanych 206
- Kilka słów o typach 209
- "Łyżka nie istnieje" 210
- Wymazywanie 210
- Typy surowe 212
- Relacje typów sparametryzowanych 213
- Dlaczego List
nie jest typem List - Rzutowania 216
- Konwertowanie między kolekcjami a tablicami 217
- Iterator 217
- Działanie metody sort() 218
- Aplikacja: drzewa na planszy 219
- Podsumowanie 220
- Łańcuchy znaków - klasa String 223
- Konstruowanie łańcuchów znaków 224
- Tekstowe reprezentacje z różnych elementów 225
- Porównywanie łańcuchów znaków 226
- Wyszukiwanie 227
- Podsumowanie metod klasy String 227
- Różne elementy z tekstowych reprezentacji 229
- Parsowanie liczb prostych 229
- Tokenizacja tekstu 230
- Wyrażenia regularne 232
- Notacja wyrażeń regularnych 232
- Interfejs API java.util.regex 238
- Narzędzia matematyczne 242
- Klasa java.lang.Math 243
- Duże i dokładne liczby 246
- Daty i godziny 248
- Lokalne daty i godziny 248
- Porównywanie oraz zmiana dat i godzin 249
- Strefy czasowe 250
- Parsowanie i formatowanie dat i godzin 251
- Błędy parsowania 253
- Znaczniki czasu 254
- Inne przydatne narzędzia 254
- Wprowadzenie do wątków 258
- Klasa Thread i interfejs Runnable 258
- Sterowanie wątkami 261
- "Śmierć" wątku 266
- Synchronizacja 268
- Szeregowanie dostępu do metod 268
- Uzyskiwanie dostępu do zmiennych klasowych i instancyjnych z wielu wątków 273
- Planowanie i priorytety 274
- Stany wątku 275
- Podział czasu 276
- Priorytety 277
- Oddawanie sterowania 278
- Wydajność wątków 279
- Koszt synchronizacji 279
- Wykorzystywanie zasobów wątku 279
- Narzędzia do obsługi współbieżności 280
- Przyciski, suwaki oraz pola tekstowe, o rety! 284
- Hierarchie komponentów 284
- Architektura Model-Widok-Kontroler 284
- Etykiety i przyciski 286
- Komponenty tekstowe 292
- Inne komponenty 299
- Kontenery i układy 303
- Ramki i okna 303
- Klasa JPanel 305
- Menedżery układu 306
- Zdarzenia 314
- Zdarzenia myszy 315
- Zdarzenia działań 318
- Zdarzenia zmian 320
- Inne zdarzenia 321
- Okna modalne i wyskakujące okienka 322
- Okna dialogowe z komunikatami 322
- Okna dialogowe z potwierdzeniem 325
- Okna dialogowe z danymi wejściowymi 326
- Rozważania na temat obsługi wątków 326
- Klasa SwingUtilities i aktualizacje komponentów 327
- Minutniki 330
- Kolejne kroki 332
- Menu 333
- Preferencje 335
- Komponenty niestandardowe oraz Java2D 335
- JavaFX 335
- Interfejs użytkownika i doświadczenie użytkownika 336
- Strumienie 337
- Podstawowe operacje we-wy 339
- Strumienie znaków 341
- Klasy opakowujące dla strumieni 342
- Klasa java.io.File 346
- Strumienie plików 351
- Klasa RandomAccessFile 353
- Interfejs API plików NIO 354
- Klasy FileSystem i Path 355
- Operacje interfejsu plików NIO 356
- Pakiet NIO 360
- Asynchroniczne operacje we-wy 360
- Wydajność 361
- Pliki zmapowane i zablokowane 361
- Kanały 361
- Bufory 362
- Kodery i dekodery znaków 365
- FileChannel 367
- Programowanie sieciowe 370
- Gniazda 372
- Klienty i serwery 373
- Klient DateAtHost 376
- Gra rozproszona 378
- Więcej do odkrycia 387
- Adresy URL 389
- Klasa URL 390
- Strumień danych 391
- Pobieranie zawartości jako obiektu 392
- Zarządzanie połączeniami 393
- Procedury obsługi w praktyce 394
- Przydatne frameworki procedur obsługi 394
- Komunikacja z aplikacjami internetowymi 395
- Korzystanie z metody GET 395
- Korzystanie z metody POST 396
- Obiekt HttpURLConnection 399
- SSL i bezpieczna komunikacja internetowa 400
- Aplikacje internetowe Javy 400
- Cykl życia serwletu 402
- Serwlety 402
- Serwlet HelloClient 404
- Odpowiedź serwletu 405
- Parametry serwletu 406
- Serwlet ShowParameters 408
- Zarządzanie sesjami użytkowników 409
- Serwlet ShowSession 410
- Kontenery serwletów 412
- Konfigurowanie za pomocą pliku web.xml oraz adnotacji 413
- Mapowania wzorców adresów URL 416
- Wdrażanie serwletu HelloClient 416
- WWW - sieć na cały świat rozległa 417
- Wydania Javy 419
- JCP i JSR 420
- Wyrażenia lambda 420
- Modernizacja kodu 421
- Rozszerzanie Javy poza podstawowe funkcjonalności 426
- Końcowe podsumowanie i kolejne kroki 427
Przedmowa 11
1. Nowoczesny język 17
2. Pierwsza aplikacja 41
3. Narzędzia pracy 73
4. Język Java 91
5. Obiekty w Javie 129
6. Obsługa błędów i rejestrowanie 173
7. Kolekcje oraz typy i metody sparametryzowane 199
8. Praca z tekstem i podstawowe narzędzia 223
9. Wątki 257
10. Aplikacje desktopowe 283
11. Obsługa sieci i operacje we-wy 337
12. Programowanie aplikacji internetowych 389
13. Rozszerzanie Javy 419
A. Przykłady kodu i program IntelliJ IDEA 429
Słowniczek 443
Oceny i opinie klientów: Nauka Javy. Wprowadzenie do tworzenia aplikacji do rzeczywistych zastosowań. Wydanie V Marc Loy, Patrick Niemeyer, Daniel Leuck (1)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(0)
(0)
(1)
(0)
(0)
(0)
Data dodania: 2021-04-09 Ocena: 4 Opinia potwierdzona zakupem