ASP.NET MVC 5, Bootstrap i Knockout.js. Tworzenie dynamicznych i elastycznych aplikacji internetowych
- Autor:
- Jamie Munro
- Ocena:
- 2.4/6 Opinie: 5
- Stron:
- 232
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis ebooka: ASP.NET MVC 5, Bootstrap i Knockout.js. Tworzenie dynamicznych i elastycznych aplikacji internetowych
W tej książce przedstawiono wyjątkowo udane połączenie trzech technologii, czyli środowiska ASP.NET MVC 5 umożliwiającego budowę zaawansowanych aplikacji internetowych, interakcję z bazą danych oraz dynamiczne renderowanie kodu HTML, środowiska Bootstrap pozwalającego na tworzenie ładnych i elastycznych widoków, a także biblioteki Knockout.js, która łączy te technologie, a jednocześnie rozszerza elastyczny projekt aplikacji internetowej dzięki dynamicznym interakcjom po stronie klienta, sterowanym przez serwerową aplikację internetową.
Książka, którą trzymasz w dłoniach, to podręcznik, który umożliwi Ci płynne tworzenie aplikacji zgodnych z wzorcem MVC (Model, View, Controller) za pomocą trzech technologii: ASP.NET MVC 5 , środowiska Bootstrap i biblioteki Knockout.js. Poznasz sposoby, które pozwolą Ci napisać projekty bardzo dobrze zorganizowane i łatwe w utrzymaniu.
Dowiedz się, jak:
- tworzyć dobrze zorganizowane i łatwe w utrzymaniu aplikacje internetowe za pomocą platformy ASP.NET MVC 5, środowiska Bootstrap i biblioteki Knockout.js
- budować serwerowe aplikacje internetowe na platformie ASP.NET MVC 5, korzystać z baz danych i w dynamiczny sposób renderować strony HTML
- tworzyć elastyczne widoki za pomocą środowiska Bootstrap i umożliwiać ich renderowanie na przeróżnych nowoczesnych urządzeniach
- ulepszać projekt elastycznej aplikacji internetowej za pomocą biblioteki Knockout.js z wykorzystaniem szybkich interakcji po stronie klienta
Jamie Munro, autor książki, prezentuje te oraz inne powiązane technologie, zapewniając możliwość korzystania z zaawansowanych formularzy internetowych. W ostatniej części książki zarówno doświadczeni, jak i aspirujący do tej grupy projektanci aplikacji internetowych, dowiedzą się, w jaki sposób zbudować kompletny koszyk zakupów. Na jego przykładzie zostanie zademonstrowane, jak te technologie prowadzą ze sobą interakcję w ramach ładnej, dynamicznej i elastycznej aplikacji internetowej.
- Utwórz dobrze zorganizowane i łatwe w utrzymaniu aplikacje internetowe, umożliwiając platformie ASP.NET MVC 5, środowisku Bootstrap i bibliotece Knockout.js zrealizowanie złożonych operacji.
- Użyj platformy ASP.NET MVC 5 do budowania serwerowych aplikacji internetowych, interakcji z bazą danych i dynamicznego renderowania stron HTML.
- Utwórz elastyczne widoki za pomocą środowiska Bootstrap, które są renderowane na przeróżnych nowoczesnych urządzeniach. Być może nigdy więcej nie będziesz tworzyć kodu CSS.
- Dodaj bibliotekę Knockout.js, aby ulepszyć projekt elastycznej aplikacji internetowej z wykorzystaniem szybkich interakcji po stronie klienta opartych na serwerowej aplikacji internetowej.
„Książka jest znakomitym źródłem informacji dla każdego, kto zaczyna projektować aplikacje internetowe!”
Matthew Spence, Projektant oprogramowania serwerowego, Fuel Youth Engagement
Wybrane bestsellery
-
Nasz kurs bowiem pozwala zdobyć kompleksową wiedzę i umiejętności, jakich potrzebujesz do tego, by zbudować swoją pierwszą aplikację internetową przy użyciu platformy ASP.NET Core 6. Stworzysz aplikację od początku do końca w sposób maksymalnie praktyczny, wspomagając się w tym celu zintegrowanym...
ASP.NET Core 6. Kurs video. Rozwijaj aplikacje webowe z Entity Framework Core ASP.NET Core 6. Kurs video. Rozwijaj aplikacje webowe z Entity Framework Core
(39.90 zł najniższa cena z 30 dni)98.45 zł
179.00 zł(-45%) -
Wykorzystaj swoje umiejętności programowania w języku C#, aby tworzyć składniki interfejsu użytkownika i środowiska klienckiego za pomocą platformy .NET. Dzięki temu praktycznemu przewodnikowi można dowiedzieć się, jak korzystać z Blazor WebAssembly do tworzenia interfejsów internetowych n...
Poznaj Blazor. Buduj jednostronicowe aplikacje przy pomocy WebAssembly i C# Poznaj Blazor. Buduj jednostronicowe aplikacje przy pomocy WebAssembly i C#
(45.49 zł najniższa cena z 30 dni)71.82 zł
79.80 zł(-10%) -
Obecne czasy upływają informatykom pod znakiem aplikacji internetowych. Powstają one jedna po drugiej, w dziesiątkach, setkach tysięcy. Ich tworzenie daje pracę programistom zatrudnionym lub wynajmowanym przez mniejsze i większe przedsiębiorstwa. Sen z powiek spędzają im jednak problemy związane ...
Microsoft Azure. Kurs video. Aplikacje internetowe w ASP.NET Core Microsoft Azure. Kurs video. Aplikacje internetowe w ASP.NET Core
(39.90 zł najniższa cena z 30 dni)67.05 zł
149.00 zł(-55%) -
Ta książka jest gruntownie uaktualnionym przewodnikiem po ASP.NET Core 3, przeznaczonym dla profesjonalnych programistów, którzy chcą w swoich projektach wykorzystać w pełni potencjał technologii Microsoftu. Wydanie zawiera kompletne i praktyczne omówienie ASP.NET Core 3. Znalazły się tu przydatn...
ASP.NET Core 3. Zaawansowane programowanie. Wydanie VIII ASP.NET Core 3. Zaawansowane programowanie. Wydanie VIII
(39.90 zł najniższa cena z 30 dni)99.50 zł
199.00 zł(-50%) -
Internet stał się naszą drugą, nie tyle alternatywną, ile raczej równoległą, rzeczywistością. W wielu sytuacjach jest rzeczywistością pierwszą - korzystamy z niego, gdy chcemy zdobyć jakieś informacje, dla rozrywki, do komunikacji i wykonywania praktycznych czynności, jak płatności, praca, nauka ...
Bezpieczeństwo w ASP.NET Core. Kurs video. Podstawy kryptografii Bezpieczeństwo w ASP.NET Core. Kurs video. Podstawy kryptografii
(39.90 zł najniższa cena z 30 dni)99.49 zł
199.00 zł(-50%) -
There are various ways to fix an ASP.NET Core web application security flaw. However, very few books share expert advice relating to which approaches work best for ASP.NET Core apps – unlike this book. The ASP.NET Core Secure Coding Cookbook is your guide to tackling the most common ASP.NE...
ASP.NET Core 5 Secure Coding Cookbook. Practical recipes for tackling vulnerabilities in your ASP.NET web applications ASP.NET Core 5 Secure Coding Cookbook. Practical recipes for tackling vulnerabilities in your ASP.NET web applications
-
ASP.NET Core and Vue.js is a practical web application development book that will help you develop modern full-stack web apps, which can withstand scale and performance challenges. You’ll learn all the core aspects and effectively implement them using best practices in coding and project s...
ASP.NET Core and Vue.js. Build real-world, scalable, full-stack applications using Vue.js 3, TypeScript, .NET 5, and Azure ASP.NET Core and Vue.js. Build real-world, scalable, full-stack applications using Vue.js 3, TypeScript, .NET 5, and Azure
-
By covering the impressive capabilities of ASP.NET Core 5 and Angular 11, right from project setup through to the deployment phase, this fully revised and updated edition will help you develop your skills effectively.
ASP.NET Core 5 and Angular. Full-stack web development with .NET 5 and Angular 11 - Fourth Edition ASP.NET Core 5 and Angular. Full-stack web development with .NET 5 and Angular 11 - Fourth Edition
-
Microsoft’s ASP.NET Core is a powerful web framework full of hidden features that this book will help you to understand. You’ll get hands-on with customizing ASP.NET Core to suit your application development needs with the help of practical examples and best practices.
Customizing ASP.NET Core 5.0. Turn the right screws in ASP.NET Core to get the most out of the framework Customizing ASP.NET Core 5.0. Turn the right screws in ASP.NET Core to get the most out of the framework
-
ASP.NET Core is a powerful framework for a scalable backend. With React at the frontend, you can build robust full-stack web applications. This book shows .NET developers how to harness the full potential of React using ASP.NET Core as the backbone
ASP.NET Core 5 and React. Full-stack web development using .NET 5, React 17, and TypeScript 4 - Second Edition ASP.NET Core 5 and React. Full-stack web development using .NET 5, React 17, and TypeScript 4 - Second Edition
Jamie Munro - pozostałe książki
-
Bring dynamic server-side web content and responsive web design together to build websites that work and display well on any resolution, desktop or mobile. With this practical book, you’ll learn how by combining the ASP.NET MVC server-side language, the Bootstrap front-end framework, and Kn...
ASP.NET MVC 5 with Bootstrap and Knockout.js. Building Dynamic, Responsive Web Applications ASP.NET MVC 5 with Bootstrap and Knockout.js. Building Dynamic, Responsive Web Applications
(80.73 zł najniższa cena z 30 dni)80.73 zł
94.99 zł(-15%) -
Use Knockout.js to design and build dynamic client-side web applications that are extremely responsive and easy to maintain. This example-driven book shows you how to use this lightweight JavaScript framework and its Model-View-ViewModel (MVVM) pattern. You’ll learn how to build your own da...
Knockout.js. Building Dynamic Client-Side Web Applications Knockout.js. Building Dynamic Client-Side Web Applications
(63.74 zł najniższa cena z 30 dni)63.74 zł
74.99 zł(-15%) -
Gain hands-on experience with the amazing PhoneGap library, using the practical recipes in this handy guide. With these solutions, you can enable your mobile web apps to interact with device-specific features such as the accelerometer, GPS, camera, and address book. Learn how to use your knowledg...
20 Recipes for Programming PhoneGap. Cross-Platform Mobile Development for Android and iPhone 20 Recipes for Programming PhoneGap. Cross-Platform Mobile Development for Android and iPhone
(46.74 zł najniższa cena z 30 dni)50.91 zł
59.90 zł(-15%) -
There's no need to reinvent the wheel every time you run into a problem with ASP.NET's Model-View-Controller (MVC) framework. This concise cookbook provides recipes to help you solve tasks many web developers encounter every day. Each recipe includes the C# code you need, along with a complete wo...
20 Recipes for Programming MVC 3. Faster, Smarter Web Development 20 Recipes for Programming MVC 3. Faster, Smarter Web Development
(63.74 zł najniższa cena z 30 dni)63.74 zł
74.99 zł(-15%)
Zobacz pozostałe książki z serii O'Reilly
-
Ta książka będzie świetnym uzupełnieniem wiedzy o Flutterze i Darcie, sprawdzi się również jako wsparcie podczas rozwiązywania konkretnych problemów. Znalazło się tu ponad sto receptur, dzięki którym poznasz tajniki pisania efektywnego kodu, korzystania z narzędzi udostępnianych przez framework F...
Flutter i Dart. Receptury. Tworzenie chmurowych aplikacji full stack Flutter i Dart. Receptury. Tworzenie chmurowych aplikacji full stack
(41.40 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
Ten przewodnik, który docenią programiści i architekci, zawiera wyczerpujące omówienie zagadnień projektowania, funkcjonowania i modyfikowania architektury API. Od strony praktycznej przedstawia strategie budowania i testowania API REST umożliwiającego połączenie oferowanej funkcjonalności na poz...
Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API
(41.40 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
W tej książce omówiono ponad 20 najprzydatniejszych wzorców projektowych, dzięki którym tworzone aplikacje internetowe będą łatwe w późniejszej obsłudze technicznej i w trakcie skalowania. Poza wzorcami projektowymi przedstawiono wzorce generowania i wydajności działania, których znaczenie dla uż...
Wzorce projektowe w JavaScripcie. Przewodnik dla programistów JavaScriptu i Reacta. Wydanie II Wzorce projektowe w JavaScripcie. Przewodnik dla programistów JavaScriptu i Reacta. Wydanie II
(41.40 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
To gruntownie zaktualizowane i uzupełnione wydanie praktycznego przewodnika po wdrażaniu i testowaniu kontenerów Dockera. Przedstawia proces przygotowania pakietu aplikacji ze wszystkimi ich zależnościami, a także jego testowania, wdrażania, skalowania i utrzymywania w środowiskach produkcyjnych....
Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie III Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie III
(52.20 zł najniższa cena z 30 dni)56.55 zł
87.00 zł(-35%) -
To książka przeznaczona dla osób, które pracują ze zbiorami danych. Jest praktycznym przewodnikiem po koncepcjach algebry liniowej, pomyślanym tak, by ułatwić ich zrozumienie i zastosowanie w użytecznych obliczeniach. Poszczególne zagadnienia przedstawiono za pomocą kodu Pythona, wraz z przykłada...
Praktyczna algebra liniowa dla analityków danych. Od podstawowych koncepcji do użytecznych aplikacji w Pythonie Praktyczna algebra liniowa dla analityków danych. Od podstawowych koncepcji do użytecznych aplikacji w Pythonie
(46.20 zł najniższa cena z 30 dni)50.05 zł
77.00 zł(-35%) -
Ta książka stanowi wszechstronne omówienie wszystkich bibliotek Pythona, potrzebnych naukowcom i specjalistom pracującym z danymi. Znalazł się tu dokładny opis IPythona, NumPy, Pandas, Matplotlib, Scikit-Learn i innych narzędzi. Podręcznik uwzględnia przede wszystkim ich aspekty praktyczne, dzięk...
Python Data Science. Niezbędne narzędzia do pracy z danymi. Wydanie II Python Data Science. Niezbędne narzędzia do pracy z danymi. Wydanie II
(77.40 zł najniższa cena z 30 dni)83.85 zł
129.00 zł(-35%) -
Oto kolejne wydanie zwięzłego podręcznika dla programistów Javy, który ma ułatwić maksymalne wykorzystanie technologii tego języka w wersji 17. Treść została skrupulatnie przejrzana i uzupełniona o materiał dotyczący nowości w obiektowym modelu Javy. Pierwsza część książki obejmuje wprowadzenie d...(53.40 zł najniższa cena z 30 dni)
57.84 zł
89.00 zł(-35%) -
Oto zwięzły i praktyczny przewodnik po usłudze GA4 i jej integracji z chmurą. Szczególnie skorzystają z niego analitycy danych, biznesu i marketingu. Opisano tu wszystkie istotne kwestie dotyczące tego nowego, potężnego modelu analitycznego. Szczególną uwagę poświęcono bardziej zaawansowanym funk...
Google Analytics od podstaw. Analiza wpływu biznesowego i wyznaczanie trendów Google Analytics od podstaw. Analiza wpływu biznesowego i wyznaczanie trendów
(41.40 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
Dzięki tej książce dowiesz się, w jaki sposób uczynić architekturę oprogramowania wystarczająco plastyczną, aby mogła odzwierciedlać zachodzące zmiany biznesowe i technologiczne. W nowym wydaniu rozbudowano pojęcia zmiany kierowanej i przyrostowej, a także przedstawiono najnowsze techniki dotyczą...
Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian. Wydanie II Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian. Wydanie II
(40.20 zł najniższa cena z 30 dni)43.55 zł
67.00 zł(-35%) -
Właśnie w tym celu powstał ten przewodnik po filozofii oprogramowania. Znajdziesz w nim 21 pragmatycznych reguł, którymi kierują się najlepsi programiści. Dzięki spostrzeżeniom zawartym w książce zmienisz podejście do programowania i szybko się przekonasz, że pozwoli Ci to na pisanie lepszego, cz...(47.40 zł najniższa cena z 30 dni)
51.35 zł
79.00 zł(-35%)
Ebooka "ASP.NET MVC 5, Bootstrap i Knockout.js. Tworzenie dynamicznych i elastycznych aplikacji internetowych" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox 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 "ASP.NET MVC 5, Bootstrap i Knockout.js. Tworzenie dynamicznych i elastycznych aplikacji internetowych" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "ASP.NET MVC 5, Bootstrap i Knockout.js. Tworzenie dynamicznych i elastycznych aplikacji internetowych" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- Tytuł oryginału:
- ASP.NET MVC 5 with Bootstrap and Knockout.js: Building Dynamic Responsive Web Applications
- Tłumaczenie:
- Piotr Pilch
- ISBN Książki drukowanej:
- 978-83-283-2050-5, 9788328320505
- Data wydania książki drukowanej:
- 2016-03-18
- ISBN Ebooka:
- 978-83-283-2053-6, 9788328320536
- Data wydania ebooka:
- 2016-03-18 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@ebookpoint.pl.
- Format:
- 168x237
- Numer z katalogu:
- 41501
- Rozmiar pliku Pdf:
- 2.7MB
- Rozmiar pliku ePub:
- 3.8MB
- Rozmiar pliku Mobi:
- 8.4MB
- 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ę
- Serie wydawnicze: O'Reilly
Spis treści ebooka
- Tworzenie pierwszego projektu (17)
- Analizowanie kontrolera HomeController (19)
- Analizowanie widoków (21)
- Struktura adresu URL (23)
- Podsumowanie (24)
- Analizowanie menu domyślnego (25)
- Menu z elementami rozwijanymi i polem wyszukiwania (28)
- Przyciski (30)
- Alerty (32)
- Kompozycje (32)
- Podsumowanie (33)
- Instalowanie biblioteki Knockout.js (35)
- Prosty przykład (36)
- Czym jest MVVM? (39)
- Tworzenie modeli widoku (40)
- Podsumowanie (42)
- Wprowadzenie do środowiska Entity Framework (43)
- Przepływ Code First (45)
- Przepływ Database First (48)
- Tworzenie danych testowych (51)
- Podsumowanie (54)
- Użycie mechanizmu scaffolding dla modelu Author (57)
- Sortowanie autorów (63)
- Stronicowanie autorów (68)
- Podsumowanie (72)
- Integrowanie biblioteki Knockout.js z formularzem (73)
- Współużytkowanie widoku i modelu widoku (79)
- Usuwanie przy użyciu okna modalnego (85)
- Wyświetlanie pustych tabel (89)
- Podsumowanie (91)
- Dlaczego tworzone są serwerowe modele widoku? (93)
- Model widoku autorów (94)
- Aktualizowanie listingu autorów (95)
- Aktualizowanie formularza dodawania/edytowania (97)
- Aktualizowanie okna dialogowego usuwania (98)
- Podsumowanie (99)
- Instalowanie komponentu Web API (101)
- Aktualizowanie listy autorów (103)
- Aktualizowanie formularza służącego do dodawania/edytowania danych autorów (111)
- Podsumowanie (114)
- Filtry uwierzytelniania (117)
- Filtry autoryzacji (118)
- Filtry akcji (118)
- Filtry wyniku (118)
- Filtry wyjątku (118)
- Globalne sprawdzanie poprawności komponentu Web API (118)
- Automatyczne odwzorowywanie przy użyciu filtru wyniku (122)
- Obsługa błędów komponentu Web API (125)
- Obsługa błędów wzorca MVC (127)
- Podsumowanie (130)
- Przegląd uwierzytelniania (131)
- Przegląd procesu autoryzacji (132)
- Implementowanie filtru uwierzytelniania (133)
- Implementowanie filtru autoryzacji (140)
- Podsumowanie (143)
- Podstawy routingu za pomocą atrybutów (145)
- Prefiksy trasy (148)
- Ograniczenia routingu (149)
- Podsumowanie (152)
- Separacja zagadnień (153)
- Usługi i zachowania (156)
- Podsumowanie (162)
- Wymagania koszyka zakupów (165)
- Projekt koszyka zakupów (166)
- Tworzenie pakietów i minifikacja kodu JavaScript (166)
- Podsumowanie (168)
- Modele przepływu Code First (169)
- Definiowanie kontekstu DbContext i inicjowanie danych (172)
- Modele widoku (175)
- Podsumowanie (177)
- Układ współużytkowany (179)
- Podsumowanie koszyka zakupów (180)
- Menu kategorii (187)
- Podsumowanie (190)
- Strona główna (191)
- Wyróżnione książki (192)
- Książki filtrowane według kategorii (194)
- Podsumowanie (197)
- Szczegóły dotyczące książki (199)
- Komponenty i wiązania niestandardowe (203)
- Zapisywanie pozycji koszyka (209)
- Podsumowanie (211)
- Szczegóły koszyka (213)
- Użycie biblioteki Knockout.js do obsługi szczegółów koszyka (216)
- Finalizowanie koszyka zakupów (220)
- Podsumowanie (223)
Przedmowa (9)
Wprowadzenie (13)
CZĘŚĆ I. PIERWSZE KROKI (15)
1. Wprowadzenie do wzorca architektury MVC (17)
2. Wprowadzenie do środowiska Bootstrap (25)
3. Wprowadzenie do biblioteki Knockout.js (35)
4. Praca z bazą danych (43)
CZĘŚĆ II. PRACA Z DANYMI (55)
5. Tworzenie listy, sortowanie i stronicowanie tabel (57)
6. Użycie formularzy (73)
7. Serwerowe modele widoku (93)
8. Wprowadzenie do komponentu Web API (101)
CZĘŚĆ III. ARCHITEKTURA KODU (115)
9. Tworzenie filtrów globalnych (117)
10. Dodawanie uwierzytelniania i autoryzacji (131)
11. Routing adresów URL przy użyciu atrybutów (145)
12. Złożony model i prosty kontroler (153)
CZĘŚĆ IV. PRAKTYCZNY PRZYKŁAD (163)
13. Tworzenie koszyka zakupów (165)
14. Budowanie modelu danych (169)
15. Implementowanie układu (179)
16. Listy książek (191)
17. Dodawanie pozycji do koszyka (199)
18. Aktualizowanie i usuwanie pozycji koszyka (213)
Skorowidz (225)
Oceny i opinie klientów: ASP.NET MVC 5, Bootstrap i Knockout.js. Tworzenie dynamicznych i elastycznych aplikacji internetowych Jamie Munro (5) 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)
(1)
(0)
(1)
(1)
(2)
więcej opinii