Form of Work
Książki
(13)
Publikacje fachowe
(10)
E-booki
(2)
ebookpoint BIBLIO
(2)
Publikacje dydaktyczne
(1)
Status
available
(12)
unknown
(1)
Branch
Wypożyczalnia
(13)
Author
Górczyński Robert
(3)
Zatorska Joanna
(3)
Brown Ethan
(1)
Burns Brendan (1976- )
(1)
Błażewicz Grzegorz
(1)
Coleman Jason
(1)
Evenson Lachlan
(1)
Freeman Adam (1972- )
(1)
Grinberg Miguel
(1)
Górczyńska Agnieszka
(1)
Hanchett Erik
(1)
Herron David
(1)
Hoffman Andrew
(1)
Jońca Rafał
(1)
Listwon Benjamin
(1)
McDonald Malcolm
(1)
Melé Antonio
(1)
Meryk Radosław
(1)
Messenlehner Brian
(1)
Moch Wojciech
(1)
Pamuła Teresa
(1)
Prasad Prakhar
(1)
Rajca Piotr (1970- )
(1)
Rychlicki-Kicior Krzysztof
(1)
Scott Adam D
(1)
Sochacki Tomasz
(1)
Strebel Dave
(1)
Villalba Eddie
(1)
Walczak Tomasz
(1)
Year
2020 - 2022
(11)
2010 - 2019
(4)
Time Period of Creation
2001-
(11)
Country
Poland
(15)
Language
Polish
(15)
Subject
Aplikacja internetowa
(11)
Języki programowania
(4)
Aplikacje internetowe
(2)
Bezpieczeństwo informacyjne
(2)
Framework (platforma programistyczna)
(2)
JavaScript
(2)
Programowanie (informatyka)
(2)
Python (język programowania)
(2)
Baza danych
(1)
Delphi
(1)
Django (framework)
(1)
E-mail marketing
(1)
Flask (platforma programistyczna)
(1)
Haking
(1)
Internet
(1)
Java Servlet
(1)
Kubernetes (program komputerowy)
(1)
Marketing
(1)
Marketing elektroniczny
(1)
Marketing społecznościowy
(1)
Nauczanie na odległość
(1)
Node.js
(1)
Ochrona danych
(1)
Oprogramowanie open source
(1)
Projektowanie stron WWW
(1)
Sieć komputerowa
(1)
Systemy zarządzania treścią
(1)
Vue.js 2 (framework)
(1)
WordPress
(1)
Subject: time
2001-
(1)
Genre/Form
Podręcznik
(9)
Poradnik
(2)
Domain
Informatyka i technologie informacyjne
(11)
15 results Filter
Book
In basket
Aplikacje w Delphi : przykłady / Teresa Pamuła. - Wyd. 3. - Gliwice : Helion, 2011. - 412 , [4] s. : tab., rys. ; 24 cm.
ISBN: 978-83-246-2851-3
Rozdział 1.: Projektowanie aplikacji w Delphi, Rozdział 2.: Podstawowe składniki aplikacji, Rozdział 3.: Menu główne i podręczne, pasek narzędzi, Rozdział 4.: Wprowadzanie danych, formatowanie i wyświetlanie na ekranie, Rozdział 5.: Okienka komunikatów, Rozdział 6.: Okienka dialogowe z karty Dialogs, Rozdział 7.: Listy wyboru - TListBox i TComboBox, Rozdział 8.: Prosty edytor - komponent TMemo, Rozdział 9.: Grupowanie komponentów, Rozdział 10.: Komponenty do wyboru daty i czasu TDateTimePicker i TMonthCalendar, Rozdział 11.: Zakładki TTabControl i TPageControl, Rozdział 12.: Odmierzanie czasu - komponent TTimer, Rozdział 13.: Grafika w Delphi - korzystanie z metod obiektu TCanvas, Rozdział 14.: Wyświetlanie obrazów- komponent TImage, Rozdział 15.: Tabelaryzacja danych-komponenty TStringGrid, TDrawGrid i TValueListEditor, Rozdział 16.: Graficzna prezentacja danych - komponent TChart, Rozdział 17.: Współpraca programu z plikami dyskowymi, Rozdział 18.: Drukowanie w Delphi, Rozdział 19.: Programy z wieloma oknami, Rozdział 20.: Posługiwanie się wieloma komponentami tego samego typu. Operatory Is i As, Rozdział 21.: Przykłady wykorzystania mechanizmu OLE w Delphi, Rozdział 22.: Dynamiczne tworzenie komponentów, Rozdział 23.: Definiowanie nowych klas komponentów, Rozdział 24.: Podstawowe operacje na bazach danych, Rozdział 25.: Delphi i multimedia.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (1 egz.)
Book
In basket
ISBN: 978-83-283-7005-0
1. Historia bezpieczeństwa oprogramowania. Początki hakerstwa. Enigma - ok. 1930 r. Automatyczne łamanie kodu Enigmy - ok. 1940 r. Phreaking telefonów - ok. 1950 r. Technologia antyphreakingowa - ok. 1960 r. Początki hakowania komputerów - ok. 1980 r. Rozwój sieci WWW - ok. 2000 r. Hakerzy w nowoczesnej erze - po ok. 2015 r. Podsumowanie. CZĘŚĆ I. ROZPOZNANIE. 2. Wstęp do rekonesansu aplikacji internetowych. Zbieranie informacji. Mapowanie aplikacji internetowej. Podsumowanie. 3. Struktura nowoczesnej aplikacji internetowej. Nowoczesne aplikacje kontra aplikacje starszego typu. API typu REST. JavaScript Object Notation. JavaScript. Platformy SPA. Systemy uwierzytelniania i autoryzacji. Serwery WWW. Bazy danych po stronie serwera. Magazyny danych po stronie klienta. Podsumowanie. 4. Znajdowanie subdomen. Wiele aplikacji na domenę. Wbudowane w przeglądarkę narzędzia do analizy sieci. Wykorzystanie rekordów publicznych. Ataki transferu stref. Szukanie subdomen metodą brute force. Ataki słownikowe. 5. Analiza API. Wykrywanie punktu końcowego. Mechanizmy uwierzytelniania. Struktury punktów końcowych. Podsumowanie. 6. Znajdowanie zewnętrznych zależności. Wykrywanie platform po stronie klienta. Wykrywanie platform po stronie serwera. Podsumowanie. 7. Identyfikowanie słabych punktów w architekturze aplikacji. Sygnały świadczące o bezpiecznej lub niezabezpieczonej architekturze. Wiele warstw bezpieczeństwa. Zapożyczenia i ponowne odkrywanie. Podsumowanie. 8. Podsumowanie części I. CZĘŚĆ II. OFENSYWA. 9. Wstęp do hakowania aplikacji internetowych. Sposób myślenia hakera. Rozpoznanie stosowane. 10. Ataki Cross-Site Scripting (XSS). Wykrywanie i eksploatacja XSS. Zapisane ataki XSS. Odbite ataki XSS. Ataki XSS oparte na hierarchii DOM. Ataki XSS oparte na mutacji. Podsumowanie. 11. Cross-Site Request Forgery (CSRF). Manipulowanie parametrami zapytania. Inne dane wysyłane żądaniami GET. Ataki CSRF na punkty końcowe POST. Podsumowanie. 12. XML External Entity (XXE). Bezpośrednie ataki XXE. Pośrednie ataki XXE. Podsumowanie. 13. Wstrzykiwanie. Wstrzykiwanie SQL-a. Wstrzykiwanie kodu. Wstrzykiwanie polecenia. Podsumowanie. 14. Denial of Service (DoS). Ataki DoS wykorzystujące wyrażenia regularne (ReDoS). Logiczne ataki DoS. Rozproszone ataki DoS. Podsumowanie. 15. Ataki z wykorzystaniem zewnętrznych zależności. Metody integracji. Menedżery pakietów. Baza danych Common Vulnerabilities and Exposures. Podsumowanie. 16. Podsumowanie części II. CZĘŚĆ III. OBRONA. 17. Zabezpieczanie nowoczesnych aplikacji internetowych. Defensywna architektura oprogramowania. Wyczerpujące inspekcje kodu. Wykrywanie luk. Analiza luk. Zarządzanie lukami. Testy regresyjne. Strategie łagodzenia ryzyka. Rekonesans stosowany i techniki ofensywne. 18. Architektura bezpiecznej aplikacji. Analizowanie wymagań dotyczących funkcji. Uwierzytelnianie i autoryzacja. Dane osobowe i finansowe. Wyszukiwanie. Podsumowanie. 19. Przegląd kodu pod kątem bezpieczeństwa. Jak zacząć inspekcję kodu. Archetypowe luki kontra błędy we własnej logice. Od czego zacząć inspekcję pod kątem bezpieczeństwa. Antywzorce bezpiecznego kodowania. Podsumowanie. 20. Wykrywanie luk. Automatyzacja bezpieczeństwa. Programy odpowiedzialnego ujawniania luk. Programy dla łowców błędów. Zewnętrzne testy penetracyjne. Podsumowanie. 21. Zarządzanie lukami. Odtwarzanie luk. Ocena dotkliwości luki. Common Vulnerability Scoring System. Zaawansowana punktacja luk. Poza selekcją i oceną punktową. Podsumowanie. 22. Obrona przed atakami XSS. Najlepsze praktyki tworzenia kodu odpornego na ataki XSS. Czyszczenie danych wpisanych przez użytkownika CSS. Zasady Content Security Policy stosowane w celu zapobiegania atakom XSS. Podsumowanie. 23. Obrona przed atakami CSRF. Weryfikacja nagłówka. Tokeny CSRF. Najlepsze praktyki zapobiegające atakom CSRF. Podsumowanie. 24. Obrona przed atakami XXE. Weryfikacja innych formatów danych. Zaawansowane ryzyka XXE. Podsumowanie. 25. Ochrona przed wstrzykiwaniem. Ochrona przed wstrzykiwaniem SQL-a. Ogólne metody ochrony przed wstrzykiwaniem/ Podsumowanie. 26. Ochrona przed atakami DoS. Ochrona przed atakami DoS na funkcje parsujące wyrażenia regularne. Ochrona przed atakami DoS wymierzonymi w logikę. Ochrona przed atakami DDoS. Podsumowanie. 27. Zabezpieczanie zewnętrznych zależności. Ocena drzewa zależności. Techniki bezpiecznej integracji. Podsumowanie. 28. Podsumowanie części III. Historia bezpieczeństwa oprogramowania. Rekonesans aplikacji internetowych. Ofensywa, Obrona. 29. Podsumowanie.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
Book
In basket
ISBN: 978-83-283-6743-2
1. Wprowadzenie do technologii Express. JavaScriptowa rewolucja. Wprowadzenie do technologii Express. Aplikacje działające po stronie serwera i aplikacje działające po stronie klienta. Krótka historia platformy Express. Node - nowy rodzaj serwera WWW. Ekosystem Node. Licencje. Podsumowanie. 2. Pierwsze kroki w Node. Pobieranie Node. Użycie terminala. Edytory. Npm. Prosty serwer WWW z użyciem Node. Przejdźmy do platformy Express. 3. Oszczędność czasu dzięki Expressowi. Tworzenie szkieletu aplikacji. Witryna WWW Meadowlark Travel. Wstępne kroki. Podsumowanie. 4. Porządki. Struktura plików i katalogów. Najlepsze praktyki. Kontrola wersji. Jak używać systemu Git wraz z tą książką? Pakiety npm. Metadane projektu. Moduły Node. Podsumowanie. 5. Zapewnienie jakości. Plan zapewnienia jakości. QA: czy warto? Logika kontra prezentacja. Rodzaje testów. Przegląd technik zapewniania jakości. Instalowanie i konfigurowanie platformy Jest. Testy jednostkowe. Testy integracyjne. Lintowanie. Ciągła integracja. Podsumowanie. 6. Obiekty żądania i odpowiedzi. Elementy URL. Metody żądania http. Nagłówki żądań. Nagłówki odpowiedzi. Internet Media Type. Ciało żądania. Obiekt żądania. Obiekt odpowiedzi. Znajdowanie dodatkowych informacji. Najważniejsze funkcje. Podsumowanie. 7. Tworzenie szablonów za pomocą silnika Handlebars. Nie ma absolutnych zasad z wyjątkiem tej jednej. Wybór silnika szablonów. Pug, czyli inne podejście. Podstawy silnika Handlebars. Podsumowanie. 8. Przetwarzanie formularzy. Wysyłanie danych klienta na serwer. Formularze HTML. Kodowanie. Inne sposoby obsługi formularzy. Przetwarzanie formularzy w platformie Express. Wysyłanie danych formularza za pomocą funkcji fetch. Przesyłanie plików. Ulepszamy interfejs użytkownika formularza do przesyłania plików. Podsumowanie. 9. Obiekty cookie i sesje. Przeniesienie danych dostępowych na zewnątrz. Obiekty cookie w Expressie. Sprawdzanie zawartości cookie. Sesje. Użycie sesji do implementowania wiadomości typu flash. Przeznaczenie sesji. Podsumowanie. 10. Oprogramowanie pośredniczące. Zasady dotyczące oprogramowania pośredniczącego. Przykłady oprogramowania pośredniczącego. Często wykorzystywane oprogramowanie pośredniczące. Oprogramowanie pośredniczące od zewnętrznych producentów. Podsumowanie. 11. Wysyłanie wiadomości e-mail. SMTP, MSA i MTA. Otrzymywanie poczty elektronicznej. Nagłówki poczty elektronicznej. Formaty wiadomości e-mail. E-mail w formacie HTML. Nodemailer. Lepsze opcje wysyłania masowych wiadomości. Wysyłanie poczty w formacie HTML. Podsumowanie. 12. Kwestie produkcyjne. Środowiska wykonywania. Konfiguracja specyficzna dla środowiska. Uruchamianie procesów Node. Skalowanie witryny WWW. Monitorowanie witryny WWW. Testy wytrzymałościowe. Podsumowanie. 13. Trwałość. Trwałość z wykorzystaniem systemu plików. Trwałość z wykorzystaniem chmury. Trwałość z wykorzystaniem baz danych. Baza danych jako magazyn sesji. Podsumowanie. 14. Trasowanie. Trasy i SEO. Subdomeny. Funkcje obsługi tras są elementami oprogramowania pośredniczącego. Ścieżki tras i wyrażenia regularne. Parametry trasy. Porządkowanie tras. Deklarowanie tras w module. Logiczne grupowanie funkcji obsługi tras. Automatyczne renderowanie widoków. Podsumowanie. 15. API typu REST i JSON. JSON i XML. Tworzenie API. Zgłaszanie błędów API. Mechanizm Cross-Origin Resource Sharing. Testy. Udostępnianie API za pomocą platformy Express. Podsumowanie. 16. Aplikacje jednostronicowe. Krótka historia tworzenia aplikacji WWW. Technologie SPA. Tworzenie aplikacji za pomocą Reacta. Podstawy aplikacji tworzonych za pomocą Reacta. Podsumowanie. 17. Treści statyczne. Kwestie wydajnościowe. Systemy dostarczania treści. Projektowanie z myślą o CDN. Zapisywanie zasobów statycznych w pamięci podręcznej. Zmiana treści statycznych. Podsumowanie. 18. Bezpieczeństwo. HTTPS. Ataki Cross-Site Request Forgery. Uwierzytelnianie. Podsumowanie. 19. Integracja z zewnętrznymi API. Serwisy społecznościowe. Geokodowanie. Dane o pogodzie. Podsumowanie. 20. Debugowanie. Pierwsza zasada debugowania. Wykorzystanie REPL i konsoli. Użycie wbudowanego debuggera Node. Klienty inspekcji Node. Debugowanie funkcji asynchronicznych. Debugowanie kodu platformy Express. Podsumowanie. 21. Publikacja. Rejestracja domeny i hosting. Podsumowanie. 22. Konserwacja. Zasady konserwacji. Ponowne wykorzystanie kodu i refaktoryzacja. Podsumowanie. 23. Dodatkowe zasoby. Dokumentacja online. Periodyki. Stack Overflow. Wkład w rozwój platformy Express. Podsumowanie.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
No cover
Book
In basket
ISBN: 978-83-283-6925-2
Wprowadzenie. 1. Tworzenie aplikacji internetowych w WordPressie. Czym jest witryna internetowa? Czym jest aplikacja? Czym jest aplikacja internetowa? Dlaczego WordPress? Kiedy nie używać WordPressa? WordPress jako framework aplikacji. Anatomia aplikacji internetowej WordPressa. 2. Podstawy WordPressa. Struktura katalogu WordPressa. Struktura bazy danych WordPressa. Zaczepy - akcje i filtry. Środowiska programistyczne i hostingowe. Rozszerzanie WordPressa. 3. Stosowanie wtyczek WordPressa. Licencja GPLv2. Instalowanie wtyczek WordPressa. Utworzenie własnej wtyczki. Struktura plików we wtyczce. Dodatki dla istniejących wtyczek. Przypadki użycia i przykłady. Wtyczki bezpłatne. Wtyczki premium. Wtyczki społecznościowe. 4. Motywy. Motyw kontra wtyczka. Hierarchia szablonu. Szablony strony. Funkcje WordPressa powiązane z motywem. Plik style.css. Plik functions.php. Motywy i niestandardowe typy postów. Popularne frameworki motywów. Tworzenie motywu potomnego dla Memberlite. Wykorzystanie frameworka Bootstrap w motywie aplikacji. Menu. Responsywny układ strony. 5. Niestandardowe typy postów, metadane postów i taksonomie. Domyślne i niestandardowe typy postów. Definiowanie i rejestrowanie niestandardowych typów postów. Co to jest taksonomia i jak należy z niej korzystać? Tworzenie niestandardowych taksonomii. Stosowanie niestandardowych typów postów i taksonomii we własnych motywach i wtyczkach. Metadane w niestandardowych typach postów. Opakowania klas dla niestandardowych typów postów. 6. Użytkownicy, role i uprawnienia. Pobieranie danych użytkownika. Dodawanie, uaktualnianie i usuwanie użytkowników. Zaczepy i filtry. Czym są role i uprawnienia? Rozszerzanie klasy WP_User. Dodanie właściwości rejestracji i profilu. Dostosowanie do własnych potrzeb tabeli użytkowników w panelu głównym. Wtyczki. 7. Praca z API WordPressa, obiektami i funkcjami pomocniczymi. API skrótów. API widżetów. API widżetów w panelu głównym WordPressa. API ustawień. API przepisywania adresów URL. WP-Cron. WP Mail. API nagłówka pliku. API Heartbeat. 8. Bezpieczny WordPress. Dlaczego bezpieczeństwo jest ważne? Podstawy zapewnienia bezpieczeństwa. Zabezpieczenie WordPressa. Certyfikaty SSL i HTTPS. Twórz kopię zapasową całości! Skanuj, skanuj i skanuj! Użyteczne wtyczki zapewnienia bezpieczeństwa. Tworzenie bezpiecznego kodu. 9. Frameworki JavaScript. Co to jest ECMAScript. jQuery i WordPress. Wywołania AJAX za pomocą WordPressa i jQuery. Zarządzanie wieloma żądaniami AJAX. API Heartbeat. Ograniczenia WordPressa związane z przetwarzaniem asynchronicznym. Frameworki JavaScript. 10. API REST WordPressa. Czym jest API REST? Dlaczego warto używać API REST WordPressa. Używanie wersji drugiej API REST WordPressa. Dodawanie własnych tras i punktów końcowych. Popularne wtyczki używające API REST WordPressa. 11. Projekt Gutenberg, bloki i niestandardowe typy postów. Edytor WordPressa. Wtyczka Classic Editor. Używanie bloków podczas tworzenia treści i projektu. Używanie bloków do tworzenia funkcjonalności. Tworzenie własnego bloku. Używanie bloków niestandardowych do tworzenia aplikacji. Podpowiedzi. 12. Sieć witryn internetowych WordPressa. Dlaczego sieć witryn internetowych. Dlaczego nie należy korzystać z sieci witryn. Alternatywy dla sieci witryn. Przygotowanie sieci witryn. Zarządzanie siecią witryn WordPressa. Struktura bazy danych sieci witryn. Mapowanie domeny. Wtyczki użyteczne w sieci witryn internetowych. Podstawowa funkcjonalność sieci witryn WordPressa. 13. Lokalizacja aplikacji WordPressa. Czy w ogóle zachodzi potrzeba lokalizacji aplikacji. Jak lokalizacja jest przeprowadzana w WordPressie. Definiowanie lokalizacji w WordPressie. Domeny tekstu. Przygotowanie ciągów tekstowych za pomocą funkcji tłumaczeń. Tworzenie i wczytywanie plików tłumaczeń. GlotPress. 14. Optymalizacja i skalowanie WordPressa. Terminologia. Źródło kontra krawędź. Testowanie. W3 Total Cache. Hosting. Buforowanie selektywne. Używanie JavaScriptu do poprawy wydajności działania. Tabele niestandardowe. Pominięcie WordPressa. 15. E-commerce. Wybór wtyczki. Bramki płatności. Konto sprzedawcy. Konfigurowanie modelu Saas przy użyciu wtyczki Paid Memberships Pro. Model SaaS. 16. Aplikacje mobilne na bazie WordPressa. Przypadki użycia aplikacji mobilnych. Natywne i hybrydowe aplikacje mobilne. 17. Biblioteki PHP, integracje usług sieciowych, migracje platform. Biblioteki PHP. Zewnętrzne API i usługi sieciowe. Migracje. 18. Przyszłość. Jak to było wcześniej. API REST. Projekt Gutenberg. Udział WordPressa w rynku będzie się zmieniał. WordPress stanie się znacznie popularniejszą platformą do tworzenia aplikacji mobilnych. WordPress wciąż będzie użyteczny podczas tworzenia różnych aplikacji internetowych.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
No cover
Book
In basket
ISBN: 978-83-283-7114-9
Wprowadzenie. 1. Środowisko programistyczne. Edytor tekstu. Terminal. Narzędzia powłoki i menedżer Homebrew (tylko w systemie macOS). Node.js i menedżer pakietów npm. MongoDB. Git. Expo. Prettier. ESLint. Ładny wygląd kodu w edytorze. Podsumowanie. 2. Wprowadzenie do API. Co będziemy budować? Jak zbudujemy nasze API? Rozpoczęcie pracy. Podsumowanie. 3. Aplikacja internetowa utworzona za pomocą Node.js i frameworka Express. Witaj, świecie! nodemon. Rozszerzone opcje portu. Podsumowanie. 4. Pierwsze API GraphQL. Zmiana serwera na API (mniej więcej). Podstawy GraphQL. Dostosowanie API do naszych potrzeb. Podsumowanie. 5. Baza danych. Rozpoczęcie pracy z MongoDB. Połączenie MongoDB z aplikacją. Odczytywanie i zapisywanie danych przez aplikację. Podsumowanie. 6. Operacje CRUD. Rozdzielenie schematu GraphQL i funkcji resolverów. Tworzenie schematu CRUD GraphQL. Funkcje resolverów CRUD. Data i godzina. Podsumowanie. 7. Konta użytkownika i uwierzytelnianie. Uwierzytelnianie w aplikacji. Szyfrowanie i tokeny. Integracja uwierzytelniania z naszym API. Dodawanie użytkownika do kontekstu funkcji resolvera. Podsumowanie. 8. Akcje użytkownika. Zanim zaczniesz. Dodawanie użytkownika do nowej notatki. Uprawnienia użytkownika w zakresie uaktualniania i usuwania notatek. Zapytania użytkownika. Oznaczanie notatki jako ulubionej. Zapytania zagnieżdżone. Podsumowanie. 9. Istotne szczegóły. Najlepsze praktyki podczas tworzenia aplikacji internetowej i aplikacji opartej na Express.js. Stronicowanie. Ograniczenia danych. Pozostałe aspekty tworzenia naszej aplikacji. Podsumowanie. 10. Wdrożenie naszego API. Hosting bazy danych. Wdrożenie aplikacji. Podsumowanie. 11. Interfejsy użytkownika i React. JavaScript i interfejs użytkownika. Interfejsy deklaratywne tworzone za pomocą JavaScriptu. Minimalna znajomość biblioteki React. Podsumowanie. 12. Budowa klienta internetowego za pomocą React. Co będziemy budować? Jak będziemy budować naszą aplikację? Rozpoczęcie pracy. Budowa aplikacji. Routing. Komponenty UI. Podsumowanie. 13. Nadawanie stylu aplikacji. Tworzenie komponentu układu. CSS. Podsumowanie. 14. Praca z klientem Apollo. Konfiguracja klienta Apollo. Wykonywanie zapytań do API. Zapytania dynamiczne. Stronicowanie. Podsumowanie. 15. Uwierzytelnianie i informacje o stanie. Utworzenie formularza rejestracyjnego. Przekierowania. Dołączanie nagłówków do żądania. Zarządzanie lokalnymi informacjami o stanie. Wylogowanie. Utworzenie formularza logowania. Trasy chronione. Podsumowanie. 16. Operacje tworzenia, odczytywania, uaktualniania i usuwania. Tworzenie nowych notatek. Odczytywanie notatek użytkownika. Uaktualnianie notatek. Usunięcie notatki. Zmiana ulubionych. Podsumowanie. 17. Wdrożenie aplikacji internetowej. Statyczna witryna internetowa. Procedura wdrożenia. Podsumowanie. 18. Aplikacje utworzone za pomocą frameworka Electron. Co zbudujemy? Jak utworzymy aplikację? Rozpoczęcie pracy. Nasza pierwsza aplikacja Electron. Szczegóły związane z oknem aplikacji w systemie macOS. Narzędzia programistyczne. API frameworka Electron. Podsumowanie. 19. Integracja istniejącej aplikacji internetowej z frameworkiem Electron. Integracja aplikacji internetowej. Konfiguracja. Polityka CSP. Podsumowanie. 20. Wdrożenie aplikacji frameworka Electron. Electron Builder. Kompilacja dla bieżącej platformy. Ikony aplikacji. Kompilacja aplikacji dla różnych platform. Podpisywanie kodu. Podsumowanie. 21. Tworzenie aplikacji mobilnych za pomocą React Native. Co będziemy tworzyć? W jaki sposób utworzymy aplikację? Rozpoczęcie pracy. Podsumowanie. 22. Tworzenie aplikacji mobilnej. Elementy konstrukcyjne React Native. Style i biblioteka Styled Components. Routing. Ikony. Podsumowanie. 23. GraphQL i React Native. Utworzenie widoków listy i przewijanej treści. GraphQL i klient Apollo. Dodanie paska postępu wczytywania danych. Podsumowanie. 24. Uwierzytelnianie w aplikacji mobilnej. Mechanizm uwierzytelniania. Utworzenie formularza logowania. Uwierzytelnienie za pomocą mutacji GraphQL. Uwierzytelnione zapytania GraphQL. Dodanie formularza rejestracji. Podsumowanie. 25. Dystrybucja aplikacji mobilnej. Konfiguracja pliku app.json. Ikony i ekrany wczytywania aplikacji. Publikowanie aplikacji za pomocą Expo. Tworzenie kompilacji natywnych. Dystrybucja aplikacji w sklepach Apple'a i Google'a. Podsumowanie. Zakończenie. A. Lokalne uruchomienie API. B. Lokalne uruchomienie aplikacji internetowej.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
Book
In basket
ISBN: 978-83-283-5734-1
CZĘŚĆ 1. POZNAJEMY VUE.JS. Rozdział 1. Wprowadzenie do Vue.js. 1.1. Na ramionach giganta. 1.2. Dlaczego Vue.js? 1.3. Dalsze przemyślenia. Podsumowanie. Rozdział 2. Instancja Vue. 2.1. Nasza pierwsza aplikacja. 2.2. Cykl życia Vue. 2.3. Wyświetlanie produktu. 2.4. Stosowanie filtrów wyjścia. Ćwiczenie. Podsumowanie. CZĘŚĆ 2. WIDOK I MODEL WIDOKU. Rozdział 3. Dodawanie interaktywności. 3.1. Początkiem danych koszyka jest dodanie tablicy. 3.2. Powiązania ze zdarzeniami DOM. 3.3. Dodanie przycisku koszyka i liczby produktów. 3.4. Dodawanie afordancji do przycisku. Ćwiczenie. Podsumowanie. Rozdział 4. Formularze i pola. 4.1. Stosowanie powiązań v-model. 4.2. Rzut oka na powiązania wartości. 4.3. Prezentacja modyfikatorów. Ćwiczenie. Podsumowanie. Rozdział 5. Dyrektywy warunkowe, pętle i listy. 5.1. Wyświetlanie komunikatu o stanie magazynu. 5.2. Przeglądanie listy produktów. 5.3. Sortowanie rekordów. Ćwiczenie. Podsumowanie. Rozdział 6. Stosowanie komponentów. 6.1. Czym są komponenty? 6.2. Zależności w komponentach. 6.3. Stosowanie właściwości props do przekazywania danych. 6.4. Definiowanie szablonu komponentu. 6.5. Stosowanie zdarzeń niestandardowych. Ćwiczenie. Podsumowanie. Rozdział 7. Zaawansowane zastosowania komponentów i trasowanie. 7.1. Stosowanie gniazd. 7.2. Rzut oka na gniazda nazwane. 7.3. Gniazda z zasięgiem. 7.4. Tworzenie aplikacji z komponentami dynamicznymi. 7.5. Tworzenie komponentów asynchronicznych. 7.6. Konwersja aplikacji składu dla zwierzaków z użyciem Vue-CLI. 7.7. Stosowanie tras. Ćwiczenie. Podsumowanie. Rozdział 8. Efekty przejść i animacje. 8.1. Podstawy efektów przejść. 8.2. Podstawy animacji. 8.3. Funkcje zwrotne animacji. 8.4. Efekty przejść dla komponentów. 8.5. Aktualizacja aplikacji składu dla zwierzaków. Ćwiczenie. Podsumowanie. Rozdział 9. Rozszerzanie Vue. 9.1. Wielokrotne stosowanie możliwości funkcjonalnych dzięki wstawkom. 9.2. Poznawanie dyrektyw niestandardowych na przykładach. 9.3. Funkcje renderujące i JSX. Ćwiczenie. Podsumowanie. CZĘŚĆ 3. MODELOWANIE DANYCH, KORZYSTANIE Z API I TESTOWANIE. Rozdział 10. Vuex. 10.1. Biblioteka Vuex - do czego może się przydać? 10.2. Stan i modyfikacje w bibliotece Vuex. 10.3. Akcesory get i akcje. 10.4. Dodawanie Vuex do aplikacji Vue-CLI na przykładzie składu dla zwierzaków. 10.5. Metody pomocnicze Vuex. 10.6. Krótka prezentacja modułów. Ćwiczenie. Podsumowanie. Rozdział 11. Komunikacja z serwerem. 11.1. Renderowanie po stronie serwera. 11.2. Wprowadzenie do Nuxt.js. 11.3. Komunikacja z serwerem na przykładzie Firebase i VuexFire. Ćwiczenie. Podsumowanie. Rozdział 12. Testowanie. 12.1. Tworzenie przypadków testowych. 12.2. Ciągła integracja, dostarczanie i wdrażanie. 12.3. Rodzaje testów. 12.4. Przygotowywanie środowiska. 12.5. Pisanie pierwszego przypadku testowego z użyciem vue-test-utils. 12.6. Testowanie komponentów. 12.7. Konfiguracja debuggera Chrome. Ćwiczenie. Podsumowanie. Dodatek A. Przygotowywanie środowiska. Dodatek B. Rozwiązania ćwiczeń.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
Book
In basket
ISBN: 978-83-283-5637-5
Rozdział 1. Wstęp: Dlaczego JavaScript?; Historia rozwoju JavaScript; Dla kogo przeznaczona jest książka?; Przygotowujemy środowisko; Uruchamianie kodu w przeglądarce; Edytor kodu JavaScript; Praca w środowisku Node.js; Rozdział 2. Podstawy ECMAScript: Podstawowe elementy składni; Nawiasy; Komentarze; Deklarowanie zmiennych i stałych; Typy zmiennych; Zmienne vs stałe w JavaScript; Operatory przypisania i matematyczne; Konkatenacja ciągów znakowych; Operatory porównania; Operatory logiczne; Instrukcja warunkowa if-else; Instrukcja warunkowa switch; Pętla for; Pętle for-in oraz for-of; Pętle while oraz do-while; Konwersja typów zmiennych; Tryb ścisły strict mode; Konieczność deklarowania zmiennych; Duplikowanie parametrów funkcji; Rozdział 3. Funkcje i obiekty: Czym są funkcje?; Definiowanie i wywoływanie funkcji; Tworzymy funkcje; Wartość zwracana przez funkcję; Zakresy i domknięcia w JavaScript; Zakres globalny; Zakres funkcyjny; Zakres blokowy; Funkcje, które od razu się wykonują; Parametry domyślne funkcji; Definiowanie obiektów; Modyfikowanie obiektów; Operatory spread i rest; Prototypy i dziedziczenie; Czym jest dziedziczenie prototypowe?; Nadpisywanie metod z prototypu; Dziedziczenie i typy proste...; Czym jest wskaźnik this?; Wskaźnik this i funkcje strzałkowe; Czym są metody call i apply?; Dobre praktyki podczas tworzenia funkcji i obiektów; Używaj języka angielskiego; Twórz sensowne nazwy funkcji i zmiennych; Dziel kod na małe, proste fragmenty; Bądź ostrożny z wieloma parametrami funkcji; Unikaj zwracania różnych typów przez jedną funkcję; Unikaj dynamicznej zmiany typów; Rozdział 4. Klasy w języku JavaScript: Zacznijmy od funkcji...; Dodanie metod do prototypu; Definiowanie klas w JavaScript; Rozszerzanie klas - słowa extends i super; Rozszerzanie klas i nadpisywanie metod klasy bazowej; Metody statyczne; Klasy z wieloma metodami; Metody prywatne i publiczne; Rozdział 5. Operacje na ciągach znakowych; Tworzenie ciągów znakowych; Modyfikacje wielkości znaków; Wycinanie fragmentu ciągu; Sprawdzanie początku i końca ciągu znakowego; Przeszukiwanie ciągu znakowego; Metoda includes; Wyszukiwanie metodą indexOf; Metoda lastIndexOf do analizy ciągów znakowych; Podział ciągu na tablicę; Rozdział 6. Tablice w języku JavaScript: Podstawowe operacje na tablicach; Definiowanie tablic w JavaScript; Dodawanie elementów na końcu tablicy; Dodawanie elementów na początku tablicy; Dodawanie elementów wewnątrz tablicy; Usuwanie elementów z tablicy; Sprawdzanie czy obiekt jest tablicą; Konwertowanie tablic do ciągów znakowych; Iterowanie po tablicach; Pętla for; Pętla for-in; Pętla for-of; Metoda forEach; Przetwarzanie i filtrowanie tablic; Metoda map; Metoda map vs forEach; Metoda filter; Metody reduce i reduceRight; Metoda flat; Metoda reverse; Wyszukiwanie elementów w tablicy; Metoda indexOf i lastIndexOf; Metoda includes; Metoda find i findIndex; Metoda some i every; Sortowanie elementów tablicy; Rozdział 7. Liczby w JavaScript: Czym właściwie jest typ numer; Liczby i nie-liczby; Jak sprawdzić czy wartość to NaN?; Konwertowanie ciągów znakowych do typu numer; Operacje na liczbach zmiennoprzecinkowych; Metody toFixed i toPrecision; Obiekt globalny Math; Przydatne stałe obiektu Math; Szukanie wartości największej i najmniejszej; Zaokrąglanie liczb; Liczby losowe; Inne przydatne metody obiektu Math; Rozdział 8. Praca z datami w JavaScript: Tworzenie obiektu Date; Obiekt Date i znacznik czasu timestamp; Odczyt parametrów obiektu daty; Problem stref czasowych; Wyświetlanie daty dostosowanej do lokalnych ustawień przeglądarki; Modyfikowanie obiektu Date; Rozdział 9. Ćwiczenia praktyczne: Wyznaczenie sumy kolejnych N liczb; Tablica unikalnych elementów; Wyznaczenie przecięcia dwóch tablic; Wyznaczenie różnicy dwóch tablic; Częstość występowania elementów w tablicy; Sprawdzenie czy podany rok jest rokiem przestępnym; Obliczenie ilości dni w danym miesiącu; Określanie wieku w latach; Generator liczb losowych; Walidacja numeru NIP; Walidacja numeru REGON; Wyznaczenie n-tego wyrazu ciągu Fibonacciego; Sprawdzenie czy liczba jest liczbą pierwszą; Obliczanie średniej oceny bez znajomości wszystkich ocen cząstkowych.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
Book
In basket
ISBN: 978-83-283-7232-0
Wprowadzenie; 1. Konfiguracja podstawowej usługi: Ogólne omówienie aplikacji; Zarządzanie plikami konfiguracyjnymi; Tworzenie usługi replikowanej za pomocą wdrożeń; Najlepsze praktyki dotyczące zarządzania obrazami kontenera; Tworzenie replikowanej aplikacji; Konfiguracja zewnętrznego przychodzącego ruchu sieciowego HTTP; Konfigurowanie aplikacji za pomocą zasobu ConfigMap; Zarządzanie uwierzytelnianiem za pomocą danych poufnych; Wdrożenie prostej bezstanowej bazy danych; Utworzenie za pomocą usług mechanizmu równoważenia obciążenia TCP; Przekazanie przychodzącego ruchu sieciowego do serwera pliku statycznego; Parametryzowanie aplikacji za pomocą menedżera pakietów Helm; Najlepsze praktyki dotyczące wdrożenia; Podsumowanie. 2. Sposób pracy programisty: Cele; Tworzenie klastra programistycznego; Konfiguracja klastra współdzielonego przez wielu programistów; Umożliwienie pracy programistom; Konfiguracja początkowa; Umożliwienie aktywnego programowania; Umożliwienie testowania i debugowania; Najlepsze praktyki dotyczące konfiguracji środowiska programistycznego; Podsumowanie. 3. Monitorowanie i rejestrowanie danych w Kubernetes: Wskaźniki kontra dzienniki zdarzeń; Techniki monitorowania; Wzorce monitorowania; Ogólne omówienie wskaźników Kubernetes; Które wskaźniki powinny być monitorowane?; Narzędzia do monitorowania; Monitorowanie Kubernetes za pomocą narzędzia Prometheus; Ogólne omówienie rejestrowania danych; Narzędzia przeznaczone do rejestrowania danych; Rejestrowanie danych za pomocą stosu EFK; Ostrzeganie; Najlepsze praktyki dotyczące monitorowania, rejestrowania danych i ostrzegania; Podsumowanie. 4. Konfiguracja, dane poufne i RBAC: Konfiguracja za pomocą zasobu ConfigMap i danych poufnych; Najlepsze praktyki dotyczące API zasobu ConfigMap i danych poufnych; RBAC; Podsumowanie. 5. Ciągła integracja, testowanie i ciągłe wdrażanie: System kontroli wersji; Ciągła integracja; Testowanie; Kompilacja kontenera; Oznaczanie tagiem obrazu kontenera; Ciągłe wdrażanie; Strategie wdrażania; Testowanie w produkcji; Stosowanie inżynierii chaosu i przygotowania; Najlepsze praktyki dotyczące technik ciągłej integracji i ciągłego wdrażania; Podsumowanie. 6. Wersjonowanie, wydawanie i wdrażanie aplikacji: Wersjonowanie aplikacji; Wydania aplikacji; Wdrożenia aplikacji; Połączenie wszystkiego w całość; Podsumowanie. 7. Rozpowszechnianie aplikacji na świecie i jej wersje robocze: Rozpowszechnianie obrazu aplikacji; Parametryzacja wdrożenia; Mechanizm równoważenia obciążenia związanego z ruchem sieciowym w globalnie wdrożonej aplikacji; Niezawodne wydawanie oprogramowania udostępnianego globalnie; Gdy coś pójdzie nie tak; Najlepsze praktyki dotyczące globalnego wdrożenia aplikacji; Podsumowanie. 8. Zarządzanie zasobami: Zarządca procesów w Kubernetes; Zaawansowane techniki stosowane przez zarządcę procesów; Zarządzanie zasobami poda; Najlepsze praktyki dotyczące zarządzania zasobami; Podsumowanie. 9. Sieć, bezpieczeństwo sieci i architektura Service Mesh: Reguły działania sieci w Kubernetes; Wtyczki sieci; Usługi w Kubernetes; Polityka zapewnienia bezpieczeństwa sieci; Architektura Service Mesh; Podsumowanie. 10. Bezpieczeństwo poda i kontenera: API PodSecurityPolicy; Izolacja zadania i API RuntimeClass; Pozostałe rozważania dotyczące zapewnienia bezpieczeństwa poda i kontenera; Podsumowanie. 11. Polityka i zarządzanie klastrem: Dlaczego polityka i zarządzanie są ważne?; Co odróżnia tę politykę od innych?; Silnik polityki natywnej chmury; Wprowadzenie do narzędzia Gatekeeper; Audyt; Najlepsze praktyki dotyczące polityki i zarządzania; Podsumowanie. 12. Zarządzanie wieloma klastrami: Do czego potrzebujesz wielu klastrów?; Kwestie do rozważenia podczas projektowania architektury składającej się z wielu klastrów; Zarządzanie wieloma wdrożeniami klastrów; Podejście GitOps w zakresie zarządzania klastrami; Narzędzia przeznaczone do zarządzania wieloma klastrami; Federacja Kubernetes; Najlepsze praktyki dotyczące zarządzania wieloma klastrami; Podsumowanie. 13. Integracja usług zewnętrznych z Kubernetes: Importowanie usług do Kubernetes; Eksportowanie usług z Kubernetes; Współdzielenie usług między Kubernetes; Narzędzia opracowane przez podmioty zewnętrzne; Najlepsze praktyki dotyczące nawiązywania połączeń między klastrami a usługami zewnętrznymi; Podsumowanie. 14. Uczenie maszynowe w Kubernetes: Dlaczego Kubernetes doskonale sprawdza się w połączeniu z uczeniem maszynowym?; Sposób pracy z zadaniami uczenia głębokiego; Uczenie maszynowe dla administratorów klastra Kubernetes; Obawy użytkowników zajmujących się analizą danych; Najlepsze praktyki dotyczące wykonywania w Kubernetes zadań związanych z uczeniem maszynowym; Podsumowanie. 15. Tworzenie wzorców aplikacji wysokiego poziomu na podstawie Kubernetes: Podejścia w zakresie tworzenia abstrakcji wysokiego poziomu; Rozszerzanie Kubernetes; Rozważania projektowe podczas budowania platformy; Najlepsze praktyki dotyczące tworzenia platform dla aplikacji; Podsumowanie. 16. Zarządzanie informacjami o stanie i aplikacjami wykorzystującymi te dane: Woluminy i punkty montowania; Pamięć masowa w Kubernetes; Aplikacje obsługujące informacje o stanie; Podsumowanie. 17. Sterowanie dopuszczeniem i autoryzacja: Sterowanie dopuszczeniem; Autoryzacja; Podsumowanie. 18. Zakończenie.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
Book
In basket
ISBN: 978-83-283-6383-0
Część I. Wprowadzenie do flaska. 1. Instalacja. Tworzenie katalogu aplikacji. Wirtualne środowiska. Tworzenie wirtualnego środowiska w pythonie 3. Tworzenie wirtualnego środowiska w pythonie 2. Praca z wirtualnymi środowiskami. Instalowanie pakietów pythona za pomocą narzędzia pip. 2. Podstawowa struktura aplikacji. Inicjalizacja. Trasy i funkcje widoku. Kompletna aplikacja. Roboczy serwer www. Trasy dynamiczne. Tryb debugowania. Opcje wiersza polecenia. Cykl żądanie – odpowiedź. Kontekst aplikacji i żądania Przesyłanie żądania. Obiekt żądania. Hooki w żądaniach. Odpowiedzi. Rozszerzenia flaska. 3. Szablony. Mechanizm szablonów jinja2. Renderowanie szablonów. Zmienne. Struktury sterujące. Integracja bootstrapa z flask-bootstrap. Niestandardowe strony błędów. Łącza. Pliki statyczne. Lokalizowanie dat i czasu za pomocą pakietu flask-moment. 4. Formularze internetowe. Konfiguracja. Klasy formularzy. Renderowanie formularzy html. Obsługa formularzy w funkcjach widoku. Przekierowania i sesje użytkownika. Wyświetlanie komunikatów. 5. Bazy danych. Bazy danych sql. Bazy danych nosql. Sql czy nosql? Frameworki baz danych w pythonie. Zarządzanie bazą danych za pomocą flask-sqlalchemy. Definicja modelu Relacje. Operacje na bazach danych. Tworzenie tabel. Wstawianie wierszy. Modyfikowanie wierszy. Usuwanie wierszy. Zapytanie o wiersze. Wykorzystanie bazy danych w funkcjach widoku. Integracja z powłoką pythona. Migrowanie baz danych za pomocą pakietu flask-migrate. Tworzenie repozytorium migracji. Tworzenie skryptu migracji. Aktualizacja bazy danych. Dodawanie kolejnych migracji. 6. Wiadomości e-mail. Obsługa e-mail za pomocą rozszerzenia flask-mail. Wysyłanie wiadomości e-mail z powłoki pythona. Integrowanie wiadomości e-mail z aplikacją. Asynchroniczne wysyłanie e-maila. 7. Struktura dużej aplikacji. Struktura projektu. Opcje konfiguracji. Pakiet aplikacji. Korzystanie z fabryki aplikacji. Implementacja funkcji aplikacji w projekcie. Skrypt aplikacji. Plik wymagań. Testy jednostkowe. Konfiguracja bazy danych. Uruchamianie aplikacji. Część II. Przykład: aplikacja do blogowania społecznościowego 8. Uwierzytelnianie użytkownika. Rozszerzenia uwierzytelnienia dla flaska. Bezpieczeństwo hasła. Haszowanie haseł za pomocą pakietu werkzeug. Tworzenie schematu uwierzytelnienia. Uwierzytelnianie użytkownika za pomocą flask-login. Przygotowywanie modelu user na potrzeby logowania. Ochrona tras. Dodawanie formularza logowania. Logowanie użytkowników. Wylogowywanie użytkowników. Jak działa flask-login? Testowanie. Rejestrowanie nowego użytkownika. Tworzenie formularza rejestracji użytkownika. Rejestracja nowych użytkowników. Potwierdzenie konta. Generowanie tokenów potwierdzających za pomocą pakietu itsdangerous. Wysyłanie wiadomości e-mail z potwierdzeniem. Zarządzanie kontem. 9. Role użytkowników. Reprezentacja ról w bazie danych. Przypisanie ról. Weryfikacja roli. 10. Profile użytkowników. Informacje o profilu. Strona profilu użytkownika. Edytor profilu. Edytor profilu z poziomu użytkownika. Edytor profilu z poziomu administratora. Awatary użytkownika. 11. Posty na blogu. Przesyłanie i wyświetlanie postów na blogu. Wpisy na blogach na stronach profilu. Stronicowanie długich list postów na blogu. Tworzenie fałszywych danych w postach na blogu. Renderowanie na stronach. Dodawanie widżetu stronicowania. Posty z formatowaniem przy użyciu pakietów markdown i flask-pagedown. Korzystanie z pakietu flask-pagedown. Obsługa tekstu sformatowanego na serwerze. Stałe linki do postów na blogu. Edytor postów. 12. Obserwatorzy. I znowu relacje w bazach danych. Relacje typu wiele-do-wielu. Relacje samoreferencyjne. Zaawansowane relacje wiele-do-wielu. Obserwujący na stronie profilu. Uzyskiwanie śledzonych postów za pomocą operacji join. Wyświetlanie obserwowanych postów na stronie głównej. 13. Komentarze użytkowników. Zapisywanie komentarzy w bazie danych. Przesyłanie i wyświetlanie komentarzy. Moderowanie komentarzy. 14. Interfejsy programowania aplikacji. Wprowadzenie do architektury rest. Zasoby są wszystkim. Metody żądania. Treści żądań i odpowiedzi. Kontrola wersji. Flask i usługi sieciowe typu rest. Tworzenie schematu interfejsu api. Obsługa błędów. Uwierzytelnianie użytkownika za pomocą flask-httpauth. Uwierzytelnianie za pomocą tokenów. Serializacja zasobów do i z formatu json. Implementacja punktów końcowych dla zasobów. Podział dużych kolekcji zasobów na strony. Testowanie usług internetowych za pomocą httpie. Część III. Ostatnie kroki 15. Testowanie. Uzyskiwanie raportów pokrycia kodu. Klient testowy flaska. Testowanie aplikacji internetowych. Testowanie usług internetowych. Kompleksowe testy z użyciem selenium. Czy warto? 16. Wydajność. Niska wydajność bazy danych. Profilowanie kodu źródłowego. 17. Wdrożenie. Etapy prac wdrożenia. Protokołowanie błędów na produkcji. Wdrożenie w chmurze. Platforma heroku. Przygotowanie aplikacji. Testowanie z wykorzystaniem heroku local. Wdrażanie za pomocą polecenia git push. Wdrażanie aktualizacji. Kontenery na platformie docker. Instalowanie dockera. Budowanie obrazu kontenera. Uruchamianie kontenera. Sprawdzanie działającego kontenera. Przekazywanie obrazu kontenera do rejestru zewnętrznego. Korzystanie z zewnętrznej bazy danych. Orkiestracja kontenerów za pomocą docker compose. Sprzątanie starych kontenerów i obrazów. Korzystanie z platformy docker podczas produkcji. Tradycyjne wdrożenia. Konfiguracja serwera. Importowanie zmiennych środowiskowych. Konfigurowanie protokołowania . 18. Dodatkowe zasoby. Korzystanie ze zintegrowanego środowiska programistycznego (ide). Wyszukiwanie rozszerzeń. Uzyskiwanie pomocy. Angażowanie się w społeczność flaska.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
Book
In basket
ISBN: 978-83-283-7803-2
Wstęp. O tej książce. Kto powinien przeczytać tę książkę. Krótka historia internetu. Zawartość książki. 1. Hakowanie strony internetowej. Ataki na oprogramowanie i ukryta sieć. Jak zhakować stronę internetową. CZĘŚĆ I. PODSTAWY. 2. Jak działa internet. Zbiór protokołów internetowych. Protokoły warstwy aplikacji. Połączenia stanowe. Szyfrowanie. Podsumowanie. 3. Jak działają przeglądarki. Renderowanie strony internetowej. JavaScript. Przed renderowaniem i po renderowaniu: co jeszcze robi przeglądarka. Podsumowanie. 4. Jak działają serwery WWW. Zasoby statyczne i dynamiczne. Zasoby statyczne. Zasoby dynamiczne. Podsumowanie. 5. Jak pracują programiści. Etap 1. Projekt i analiza. Etap 2. Pisanie kodu. Etap 3. Testowanie przed publikacją. Etap 4. Proces publikacji. Etap 5. Testowanie i obserwacje po publikacji. Zarządzanie zależnościami. Podsumowanie. CZĘŚĆ II. ZAGROŻENIA. 6. Ataki przez wstrzykiwanie. Wstrzykiwanie SQL-a. Dodatkowa metoda obrony: obrona w głąb. Wstrzykiwanie polecenia. Zdalne wykonywanie kodu. Luki związane z przesyłaniem plików. Podsumowanie. 7. Ataki cross-site scripting. Zapisane ataki cross-site scripting. Odbite ataki cross-site scripting. Ataki cross-site scripting oparte na hierarchii DOM. Podsumowanie. 8. Ataki cross-site request forgery. Anatomia ataku CSRF. Pierwsza metoda obrony: przestrzeganie zasad REST. Druga metoda obrony: implementacja cookie z tokenami CSRF. Trzecia metoda obrony: użycie atrybutu cookie SameSite. Dodatkowa metoda obrony: wymagaj ponownego uwierzytelnienia w przypadku wrażliwych operacji. Podsumowanie. 9. Naruszanie uwierzytelniania. Implementacja uwierzytelniania. Pierwsza metoda obrony: uwierzytelnianie zewnętrzne. Druga metoda obrony: integracja pojedynczego logowania. Trzecia metoda obrony: zabezpieczenie własnego systemu uwierzytelniania. Podsumowanie. 10. Przechwytywanie sesji. Jak działają sesje. Jak hakerzy przechwytują sesje. Podsumowanie. 11. Uprawnienia. Eskalacja uprawnień. Kontrola dostępu. Directory traversal. Podsumowanie. 12. Wycieki informacji. Pierwsza metoda obrony: usunięcie wymownych nagłówków serwera. Druga metoda obrony: użycie czystych adresów URL. Trzecia metoda obrony: użycie ogólnych parametrów cookie. Czwarta metoda obrony: wyłączenie raportowania błędów po stronie klienta. Piąta metoda obrony: minifikacja lub obfuskacja plików JavaScriptu. Szósta metoda obrony: czyszczenie plików po stronie klienta. Śledź informacje o lukach w zabezpieczeniach. Podsumowanie. 13. Szyfrowanie. Szyfrowanie w protokole internetowym. Włączanie HTTPS. Atakowanie HTTP (i HTTPS). Podsumowanie. 14. Zewnętrzne biblioteki. Zabezpieczanie zależności. Zabezpieczanie konfiguracji. Zabezpieczanie używanych usług. Usługi jako wektor ataku. Podsumowanie. 15. Ataki na XML-a. Użycie XML-a. Walidacja XML-a. Bomby XML-a. Ataki XML External Entity. Zabezpieczanie parsera XML-a. Inne uwarunkowania. Podsumowanie. 16. Nie bądź narzędziem. Fałszowanie poczty elektronicznej. Kamuflowanie złośliwych linków w wiadomościach e-mail. Clickjacking. Server-side request forgery. Botnety. Podsumowanie. 17. Ataki denial-of-service. Ataki typu denial-of-service. Ochrona przed atakami denial-of-service. Podsumowanie. 18. Podsumowanie.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
No cover
Book
In basket
ISBN: 978-83-283-7250-4
Rozdział 1. Utworzenie aplikacji bloga. Instalacja Django. Utworzenie odizolowanego środowiska Pythona. Tworzenie pierwszego projektu. Projekt schematu danych dla bloga. Tworzenie witryny administracyjnej dla modeli. Praca z obiektami QuerySet i menedżerami. Przygotowanie widoków listy i szczegółów. Utworzenie szablonów dla widoków. Dodanie stronicowania. Użycie widoków opartych na klasach. Podsumowanie. Rozdział 2. Usprawnienie bloga za pomocą funkcji zaawansowanych. Współdzielenie postów przy użyciu wiadomości e-mail. Utworzenie systemu komentarzy. Dodanie funkcjonalności tagów. Pobieranie podobnych postów. Podsumowanie. Rozdział 3. Rozbudowa aplikacji bloga. Utworzenie własnych filtrów i znaczników szablonu. Dodanie mapy witryny. Utworzenie kanału wiadomości dla postów bloga. Dodanie do bloga wyszukiwania pełnotekstowego. Podsumowanie. Rozdział 4. Utworzenie witryny społecznościowej. Utworzenie projektu witryny społecznościowej. Użycie frameworka uwierzytelniania w Django. Rejestracja użytkownika i profile użytkownika. Implementacja własnego mechanizmu uwierzytelniania. Dodanie do witryny uwierzytelnienia za pomocą innej witryny społecznościowej. Podsumowanie. Rozdział 5. Udostępnianie treści w witrynie internetowej. Utworzenie witryny internetowej do kolekcjonowania obrazów. Umieszczanie treści pochodzącej z innych witryn internetowych. Utworzenie szczegółowego widoku obrazu. Utworzenie miniatury za pomocą easy-thumbnails. Dodanie akcji AJAX za pomocą jQuery. Utworzenie własnych dekoratorów dla widoków. Dodanie stronicowania AJAX do widoków listy. Podsumowanie. Rozdział 6. Śledzenie działań użytkownika. Utworzenie systemu obserwacji. Budowa aplikacji z ogólnym strumieniem aktywności. Użycie sygnałów dla denormalizowanych zliczeń. Użycie bazy danych Redis do przechowywania różnych elementów widoków. Podsumowanie. Rozdział 7. Utworzenie sklepu internetowego. Utworzenie projektu sklepu internetowego. Utworzenie koszyka na zakupy. Rejestracja zamówień klienta. Wykonywanie zadań asynchronicznych za pomocą Celery. Podsumowanie. Rozdział 8. Zarządzanie płatnościami i zamówieniami. Integracja bramki płatności. Eksport zamówień do plików CSV. Rozbudowa witryny administracyjnej za pomocą własnych widoków. Dynamiczne generowanie rachunków w formacie PDF. Podsumowanie. Rozdział 9. Rozbudowa sklepu internetowego. Utworzenie systemu kuponów. Internacjonalizacja i lokalizacja projektu. Utworzenie silnika rekomendacji produktu. Podsumowanie. Rozdział 10. Budowa platformy e-learningu. Utworzenie platformy e-learningu. Utworzenie modeli kursu. Utworzenie modeli dla zróżnicowanej treści. Utworzenie systemu zarządzania treścią. Zarządzanie modułami kursu i treścią. Podsumowanie. Rozdział 11. Renderowanie i buforowanie treści. Wyświetlanie kursów. Dodanie rejestracji uczestnika. Uzyskanie dostępu do treści kursu. Użycie frameworka buforowania. Podsumowanie. Rozdział 12. Utworzenie API. Utworzenie API typu RESTful. Podsumowanie. Rozdział 13. Budowanie serwera czatu. Utworzenie aplikacji czatu. Obsługa czasu rzeczywistego w Django za pomocą frameworka Channels. Instalacja frameworka Channels. Pisanie konsumenta. Routing. Implementacja klienta WebSocket. Warstwa kanału komunikacyjnego. Modyfikacja konsumenta w celu uzyskania pełnej asynchroniczności. Integracja aplikacji czatu z istniejącymi widokami. Podsumowanie. Rozdział 14. Wdrożenie. Zarządzanie ustawieniami dla wielu środowisk. Instalacja PostgreSQL. Sprawdzenie projektu. Udostępnianie Django za pomocą WSGI. Instalacja uWSGI. Konfiguracja uWSGI. Instalacja NGINX. Środowisko produkcyjne. Konfiguracja Nginx. Udostępnianie zasobów statycznych i multimedialnych. Zabezpieczanie połączeń za pomocą SSL/TLS. Wykorzystanie serwera Daphne z frameworkiem Django Channels. Wykorzystanie bezpiecznych połączeń dla gniazd WebSocket. Uwzględnienie Daphne w konfiguracji NGINX. Utworzenie własnego oprogramowania pośredniczącego. Implementacja własnych poleceń administracyjnych. Podsumowanie.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 004 (2 egz.)
No cover
Book
In basket
Rewolucja z marketing automation : jak wykorzystać potencjał Big Data / Grzegorz Błażewicz. - Wyd. 1 - 1 dodr. - Warszawa : PWN Wydaw. Nauk. , 2017. - 181 s. : il. kolor. ; 24 cm.
(E-marketing)
ISBN: 978-83-01-18741-5
Filozofia marketing automation; Część I. Nowe pojęcia: 1. Znaczenie rewolucji Big Data; 2. Nowy konsument; 3. Nowy marketer; 4. Nowy sprzedawca. Część 2. Marketing automation i big data redefiniują marketing, jaki znamy: 1. Klasyczne 4P; 2. Porady dla osób, które wybierają platformę marketing automation; 3. Wyciek leadów; 4. Rola edukacji w procesie zakupowym; 5. Content marketing z marketing automation; 6. Nowe podejście do e-mail marketingu; 7. Programy lojalnościowe; 8. Kanał mobile. Część 3. Porady praktyczne: 1. Tworzenie buyer persona; 2. Monitoring kontaktów i zarządzanie nimi przez CRM; 3. Pozyskiwanie leadów; 4. E-mail marketing; 5. Lead nurturing; 6. Website marketing; 7. Personalizacja stron www; 8. Srzedaż; 9. Retencja; 10. Social media; 11. Mobile; 12. Analityka marketing; 13. Porady dla osób, które wybierają platformę marketing automation.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
There are copies available to loan: sygn. 339.138 (1 egz.)
Book
In basket
Vue.js 2 : wprowadzenie dla profesjonalistów / Adam Freeman ; tłum. Krzysztof Rychlicki-Kicior. - Gliwice : Helion S.A. , con. 2019. - 647, [3] s. : il., wykresy, wzory ; 25 cm.
ISBN: 978-83-283-5498-2
CZĘŚĆ I. ZACZYNAMY PRACĘ Z VUE.JS. Rozdział 1. Twoja pierwsza aplikacja w Vue.js. Przygotowanie środowiska programistycznego. Tworzenie projektu. Zamiana treści zastępczych. Dodawanie treści dynamicznych. Podsumowanie. Rozdział 2. Zrozumieć Vue.js. Czy warto korzystać z Vue.js? Co muszę wiedzieć? Jak skonfigurować swoje środowisko programistyczne? Jaki jest układ treści w tej książce? Czy znajdę tu dużo przykładów? Gdzie znajdę przykładowe kody? Podsumowanie. Rozdział 3. Podstawy HTML i CSS. Przygotowania do rozdziału. Jak działają elementy języka HTML? Analiza przykładowego dokumentu HTML. Jak działa Bootstrap? Podsumowanie. Rozdział 4. Elementarz JavaScriptu. Przygotowania do rozdziału. Stosowanie instrukcji. Tworzenie i używanie funkcji. Zmienne i typy. Operatory języka JavaScript. Obsługa tablic. Obsługa obiektów. Moduły w języku JavaScript. Zasady działania obietnic. Podsumowanie. Rozdział 5. Sklep sportowy: prawdziwa aplikacja. Tworzenie projektu Sklep sportowy. Tworzenie magazynu danych. Tworzenie magazynu produktów. Zastosowanie REST-owej usługi sieciowej. Podsumowanie. Rozdział 6. Sklep sportowy: rozliczenie i zamówienia. Przygotowania do rozdziału. Tworzenie zastępczej treści dla koszyka. Konfiguracja trasowania adresów URL. Implementacja funkcji koszyka. Obsługa rozliczenia i dodawania zamówień. Podsumowanie. Rozdział 7. Sklep sportowy: skalowanie i administracja. Przygotowania do rozdziału. Obsługa dużej ilości danych. Praca nad funkcjami administracyjnymi. Podsumowanie. Rozdział 8. Sklep sportowy: administrowanie i wdrożenie. Przygotowania do rozdziału. Dodawanie funkcji administracyjnych. Wdrażanie sklepu sportowego. Podsumowanie. CZĘŚĆ II. VUE.JS POD LUPĄ. Rozdział 9. Jak działa Vue.js? Przygotowania do rozdziału. Tworzenie aplikacji za pomocą API modelu DOM. Tworzenie obiektu Vue. Komponenty w praktyce. Podsumowanie. Rozdział 10. Projekty i narzędzia Vue.js. Tworzenie projektu aplikacji Vue.js. Omówienie struktury projektu. Omówienie narzędzi deweloperskich. Stosowanie lintera. Debugowanie aplikacji. Konfiguracja narzędzi deweloperskich. Budowanie aplikacji do wdrożenia. Podsumowanie. Rozdział 11. Omówienie wiązań danych. Przygotowania do tego rozdziału. Omówienie składników komponentu. Zmiany komponentu w przykładowej aplikacji. Wyświetlanie wartości danych. Podsumowanie. Rozdział 12. Stosowanie podstawowych dyrektyw. Przygotowania do tego rozdziału. Ustawianie zawartości tekstowej elementu. Wyświetlanie czystego kodu HTML. Wyświetlanie wybranych elementów. Ustawianie atrybutów i właściwości elementu. Podsumowanie. Rozdział 13. Obsługa dyrektywy Repeater. Przygotowania do tego rozdziału. Przeglądanie tablicy. Wyliczanie właściwości obiektu. Powtarzanie elementów HTML bez źródła danych. Stosowanie właściwości obliczanych z dyrektywą v-for. Podsumowanie. Rozdział 14. Obsługa zdarzeń. Przygotowania do tego rozdziału. Obsługa zdarzeń. Omówienie zdarzeń i obiektów zdarzeń. Stosowanie metody do obsługi zdarzeń. Połączenie zdarzeń, metod i elementów powtarzanych. Nasłuchiwanie wielu zdarzeń z tego samego elementu. Stosowanie modyfikatorów obsługi zdarzeń. Omówienie modyfikatorów zdarzeń myszy. Omówienie modyfikatorów zdarzeń klawiatury. Podsumowanie. Rozdział 15. Obsługa elementów formularzy. Przygotowania do tego rozdziału. Tworzenie dwukierunkowych wiązań modeli. Wiązania z elementami formularzy. Stosowanie modyfikatorów dyrektywy v-model. Wiązania do różnych typów danych. Walidacja danych w formularzu. Podsumowanie. Rozdział 16. Stosowanie komponentów. Przygotowania do tego rozdziału. Omówienie komponentów jako podstawowych składników aplikacji. Omówienie izolacji komponentów. Podsumowanie. CZĘŚĆ III. ZAAWANSOWANE FUNKCJE VUE.JS. Rozdział 17. Omówienie cyklu życia komponentu Vue.js. Przygotowania do tego rozdziału. Omówienie cyklu życia komponentu. Obsługa błędów komponentów. Podsumowanie. Rozdział 18. Luźno powiązane komponenty. Przygotowania do tego rozdziału. Omówienie wstrzykiwania zależności. Stosowanie szyny zdarzeń. Podsumowanie. Rozdział 19. Stosowanie REST-owych usług sieciowych. Przygotowania do tego rozdziału. Omówienie REST-owych usług sieciowych. Konsumowanie REST-owej usługi sieciowej. Tworzenie usługi http. Rozdział 20. Stosowanie magazynu danych. Przygotowania do tego rozdziału. Tworzenie i używanie magazynu danych. Definiowanie właściwości obliczanych w magazynie danych. Wykonywanie operacji asynchronicznych. Otrzymywanie powiadomień o zmianach. Mapowanie funkcji magazynu danych w komponentach. Stosowanie modułów magazynu danych. Podsumowanie. Rozdział 21. Komponenty dynamiczne. Przygotowania do tego rozdziału. Przygotowywanie komponentów do dynamicznego cyklu życia. Dynamiczne wyświetlanie komponentów. Stosowanie komponentów asynchronicznych. Podsumowanie. Rozdział 22. Trasowanie URL. Przygotowania do tego rozdziału. Rozpoczynamy pracę z trasowaniem URL. Omówienie i konfiguracja dopasowania tras URL. Obsługa zmian w nawigacji. Podsumowanie. Rozdział 23. Elementy związane z trasowaniem URL. Przygotowania do tego rozdziału. Obsługa elementów router-link. Tworzenie tras zagnieżdżonych. Obsługa nazwanych elementów router-view. Podsumowanie. Rozdział 24. Zaawansowane trasowanie URL. Przygotowania do tego rozdziału. Stosowanie odrębnych plików dla powiązanych tras. Ochrona tras. Ładowanie komponentów na żądanie. Tworzenie komponentów bez obsługi trasowania. Podsumowanie. Rozdział 25. Przejścia. Przygotowania do tego rozdziału. Rozpoczynamy pracę z przejściami. Stosowanie biblioteki do obsługi animacji. Przełączanie pomiędzy wieloma elementami. Stosowanie przejść dla zmian w kolekcji. Stosowanie zdarzeń przejść. Przyciąganie uwagi do innych zmian. Podsumowanie. Rozdział 26. Rozszerzanie możliwości Vue.js. Przygotowania do tego rozdziału. Tworzenie własnych dyrektyw. Tworzenie domieszek komponentów. Tworzenie wtyczki Vue.js. Podsumowanie.
This item is available in one branch. Expand information to see details.
Wypożyczalnia
Brak informacji o dostępności: sygn. 004
E-book
In basket
ISBN: 978-83-283-3612-4

Platforma Node.js służy do tworzenia aplikacji ogólnego przeznaczenia w języku JavaScript, które nie wymagają przeglądarki internetowej, a sam kod może działać zarówno po stronie klienta, jak i serwera. W Node.js wykorzystano szybki silnik JavaScriptu, V8. Platforma ta udostępnia stabilną bibliotekę do obsługi asynchronicznych sieciowych operacji wejścia-wyjścia. Dodatkowo programista ma do dyspozycji bogaty zestaw niezależnych modułów. Szczególnie atrakcyjne jest wykorzystanie Node.js do budowy aplikacji związanych z internetem rzeczy (IoT) i mikrousług.

W tej książce znajdziesz przegląd zagadnień potrzebnych do nauki programowania w Node.js. Dowiesz się między innymi, w jaki sposób można zaimplementować mechanizmy przechowywania danych w bazach danych, uwierzytelniania użytkownika czy komunikacji między użytkownikami w czasie rzeczywistym. Dodatkowo zaprezentowano tu technikę instalowania kodu na serwerze za pomocą platformy Docker. Nie zabraknie też opisu najlepszych praktyk z dziedziny tworzenia oprogramowania i rozkładania dużego obciążenia między serwery zaplecza. Ciekawym tematem ujętym w książce jest implementacja mikrousług REST w architekturze wielowarstwowej.

Najważniejsze zagadnienia przedstawione w książce:

  • czym jest platforma Node.js, jak się rozwija i do czego może się przydać
  • opis konfigurowania platformy i omówienie modułów, a także korzystanie z narzędzia npm
  • tworzenie aplikacji dla urządzeń mobilnych, w tym wdrożenie modelu REST
  • korzystanie z biblioteki Socket.IO
  • testowanie aplikacji, w tym testy jednostkowe, testy REST i testy funkcjonalne

Node.js — platforma, która zapewnia niezawodność, prostotę i wydajność kodu!


David Herron przez wiele lat był inżynierem oprogramowania w Dolinie Krzemowej. Pracował nad różnorodnymi projektami, włączając w to aplikacje do monitorowania wydajności systemów paneli słonecznych. Jako starszy inżynier w Sun Microsystems pracował w zespole Java SE Quality Engineering, Herron pracował też dla firmy VXtreme nad oprogramowaniem, które później stało się aplikacją Windows Media Player. Interesuje się pojazdami elektrycznymi, światowymi zasobami energii, zmianami klimatu i ochroną środowiska.

Dostęp do treści elektronicznej wymaga posiadania kodu dostępu, który można odebrać w bibliotece.
This item is available online. Expand information to see details.
E-book
In basket
ISBN: 978-83-283-3460-1

Testy penetracyjne nowoczesnych serwisów. Kompendium inżynierów bezpieczeństwa

Sieć stała się niebezpiecznym miejscem. Między grasującymi złoczyńcami a inżynierami bezpieczeństwa aplikacji trwa ciągły wyścig zbrojeń. Mimo to oczywiste jest, że uzyskanie stuprocentowego bezpieczeństwa jest niemożliwe. Jedną z technik zabezpieczania aplikacji są testy penetracyjne, które polegają na atakowaniu systemu różnymi metodami, aby odnaleźć jego słabe punkty i pokazać, jak można się do niego włamać.Niniejsza książka stanowi wyczerpujące źródło wiedzy dla testerów przeprowadzających analizę aplikacji internetowej. Opisano tu zarówno najnowsze, jak i klasyczne techniki łamania zabezpieczeń — bardzo często starsze metody rozwijają się w różnych kierunkach i nie należy o nich zapominać. Między innymi przedstawiono informacje o atakach XML, w tym XXE, oraz metody wykorzystywania słabych stron OAuth 2.0. Omówiono również XSS, CSRF, Metasploit i wstrzykiwanie SQL. Nie zabrakło również opisu rzeczywistych przypadków testowania aplikacji.

  • Nowe lub mniej popularne techniki ataku na strony WWW takie jak wstrzykiwanie obiektów PHP lub wykorzystanie danych XML.
  • Sposób pracy z narzędziami do przeprowadzania testów bezpieczeństwa, aby w ten sposób zautomatyzować żmudne zadania.
  • Różne rodzaje nagłówków HTTP wspomagających zapewnienie wysokiego poziomu bezpieczeństwa aplikacji.
  • Wykorzystywanie i wykrywanie różnego rodzaju podatności XSS.
  • Ochronę aplikacji dzięki technikom filtracji.
  • Stare techniki ataku takie jak XSS, CSRF i wstrzykiwanie SQL, ale w nowej osłonie.
  • Techniki ataku takie jak XXE i DoS wykorzystujące pliki XML.
  • Sposoby testowania API typu REST w celu znalezienia różnego rodzaju podatności i wycieków danych.

Testy penetracyjne — klucz do bezpieczeństwa Twojej aplikacji!


Prakhar Prasad mieszka w Indiach. Jest ekspertem w dziedzinie bezpieczeństwa aplikacji specjalizującym się w testach penetracyjnych. W 2014 roku został sklasyfikowany na dziesiątej pozycji w światowym rankingu HackerOne. Zdobył kilka nagród za znalezienie luk bezpieczeństwa w takich serwisach, jak Google, Facebook, Twitter, PayPal czy Slack. Posiada certyfikaty z OSCP. Przeprowadza testy bezpieczeństwa dla różnych organizacji rządowych, pozarządowych i edukacyjnych.

Dostęp do treści elektronicznej wymaga posiadania kodu dostępu, który można odebrać w bibliotece.
This item is available online. Expand information to see details.
The item has been added to the basket. If you don't know what the basket is for, click here for details.
Do not show it again