Wydawca: Helion
Od początku swojej działalności wydawnictwo Helion wspiera rozwój specjalistów z szeroko pojętej branży IT. To doskonała baza wiedzy dla osób, które chcą poznać tajniki informatyki, programowania, sztucznej inteligencji, cyberbezpieczeństwa czy grafiki komputerowej i innych umiejętności związanych z nowoczesnymi technologiami.
Helion oferuje szeroki wybór książek oraz ebooków z różnych dziedzin informatyki, zawsze aktualnych i zgodnych z najnowszymi trendami technologicznymi.
Strategia UX. Techniki tworzenia innowacyjnych rozwiązań cyfrowych. Wydanie II
Jaime Levy
Droga do sukcesu produktu cyfrowego prowadzi przez serce użytkownika. Historia biznesu obfituje w przykłady świetnych pomysłów, które poniosły spektakularną porażkę z powodu zlekceważenia wrażeń użytkownika. Przy opracowywaniu biznesowej strategii rozwoju produktu czy usługi trzeba więc zacząć od zebrania kluczowych informacji o przyszłych użytkownikach, ich potrzebach, preferencjach i przyzwyczajeniach, a także o konkurencyjnych produktach i perspektywach. Okazuje się jednak, że łączenie strategii typowo biznesowych z zasadami projektowania UX jest niełatwym zadaniem. To drugie, zaktualizowane i uzupełnione wydanie praktycznego podręcznika dla przedsiębiorców, projektantów UX i UI, a także menedżerów i strategów produktu. Znalazły się w nim skuteczne narzędzia i techniki strategiczne, które udowodniły swoją przydatność w tworzeniu innowacyjnych produktów cyfrowych. Narzędzia te zostały udostępnione również w formie gotowego przybornika strategii UX. Pokazano tu, w jaki sposób zaplanować i przeprowadzić badania użytkowników, aby wyniki pozwoliły na opracowanie skutecznych strategii produktowych. Całość zawartych w książce materiałów składa się na solidny, przetestowany i skuteczny model praktyk ułatwiających wdrażanie innowacyjnych, udanych produktów cyfrowych. W książce: zastosowanie prowizorycznych profili klienta i technik rozpoznania rynku do definiowania grupy docelowej techniki badań i analizy konkurencji projektowanie eksperymentów z wykorzystaniem prototypów sposoby na szybkie, niedrogie i efektywne badania użytkowników online cele, techniki i zasady prowadzenia kampanii marketingowych Strategia UX - by zrobić na użytkowniku jak najlepsze wrażenie!
Strategiczne monolity i mikrousługi. Jak napędzać innowacyjność za pomocą przemyślanej architektury
Vaughn Vernon, Tomasz Jaskula
Przedsiębiorstwo, jeśli ma osiągać satysfakcjonujące wyniki biznesowe, musi używać dobrego oprogramowania. Aby jednak zapewnić firmie pozycję lidera i decydować o przyszłości branży, trzeba czegoś więcej: odwagi we wprowadzaniu i wdrażaniu innowacji. Innowacje te powinny być wspierane przez inteligentne decyzje architektoniczne ukierunkowane na cele firmy, osiągane wyniki i zapewnienie sobie przewagi konkurencyjnej w przyszłości. Niestety podczas projektowania oprogramowania architekci często kierują się przyzwyczajeniami bądź aktualnie obowiązującą modą. Niniejsza książka jest przeznaczona dla kadry kierowniczej najwyższego szczebla oraz dla osób sterujących rozwojem oprogramowania w firmie. Ma pomóc w zrozumieniu problemów strategicznych, z jakimi te osoby się mierzą, a także ułatwić wybór najlepszego rozwiązania architektonicznego. W książce opisano, kiedy zdecydować się na rozproszone mikrousługi czy dobrze zmodularyzowane monolity, a kiedy na usługi będące połączeniem obu rozwiązań. Dokładnie wyjaśniono, w jak dużym stopniu wyważone decyzje architektoniczne umożliwiają maksymalizację wartości i innowacyjności, dostarczanie łatwych do rozwijania systemów i unikanie kosztownych błędów. Nie zabrakło w niej również praktycznych wskazówek, jak tworzyć dobrze zaprojektowane monolity, które można bez problemu utrzymywać i rozwijać, oraz jak stopniowo przekształcać starsze systemy w prawdziwie efektywne mikrousługi. Najciekawsze zagadnienia: łączenie planowania architektury z wprowadzaniem innowacji w firmie problemy komunikacyjne a eksperymentowanie z innowacjami praktyczne podejście do strategicznych inwestycji najlepsze style architektoniczne wybór między systemem monolitycznym a mikrousługami przekształcanie monolitów w mikrousługi Przepis na sukces tkwi w doskonałości podejścia architektonicznego!
Strategie Red Team. Ofensywne testowanie zabezpieczeń w praktyce
Johann Rehberger
Zapewnienie bezpieczeństwa IT jest wyjątkowo ważne. Organizacja musi pozostawać w ciągłej gotowości do wykrywania zagrożeń i reagowania na incydenty bezpieczeństwa. Przeciwnicy nieustannie się doskonalą i standardowy zestaw zabezpieczeń jakiś czas temu przestał wystarczać. Konieczne jest zbudowanie i wdrożenie kompleksowego systemu zapobiegania zagrożeniom, ich wykrywania i reagowania na nie. Podobnie jak na polu bitwy, tak i w planowaniu bezpieczeństwa IT zyskuje się przewagę dzięki znajomości własnego terenu i działaniom ofensywnym. Oto wszechstronny i praktyczny przewodnik dla inżynierów i kierowników do spraw bezpieczeństwa. Opisano w nim, jak zbudować program pracy zespołu czerwonego, który będzie się zajmować ofensywnymi testami bezpieczeństwa, zarządzać nim i monitorować ich efektywność. Omówiono też skuteczne sposoby podnoszenia świadomości bezpieczeństwa w organizacji. Dokładnie wyjaśniono zasady wykonywania operacji progresywnych, takich jak ukierunkowane testy naruszenia prywatności czy manipulowanie danymi telemetrycznymi. Zaprezentowano grafy wiedzy i sposoby ich budowania, a następnie techniki polowania na poświadczenia. Nie zabrakło ważnych uwag o ochronie zasobów, przeprowadzaniu audytów oraz korzystaniu z alertów. W książce: czym grożą naruszenia bezpieczeństwa jak budować skuteczne zespoły testów penetracyjnych mapowanie własnego terenu za pomocą grafów wiedzy czym jest polowanie na poświadczenia czym się różni praca zespołów niebieskiego i czerwonego skuteczne informowanie kierownictwa firmy o problemach z bezpieczeństwem Wróg nie śpi. Przejdź do ofensywy i testuj swój system!
Struktury danych i algorytmy w języku C#. Projektowanie efektywnych aplikacji
Marcin Jamro
C# jest nowoczesnym i elastycznym językiem programowania. Aby w pełni skorzystać z jego zalet, trzeba płynnie posługiwać się dostępnymi w nim strukturami danych i algorytmami, pozwalają one bowiem na efektywnie organizowanie danych i mają znaczący wpływ na wydajność aplikacji. Z punktu widzenia programisty kluczowe jest ich właściwe zaimplementowanie: wybór właściwej struktury danych i związanego z nią algorytmu stanowi o jakości tworzonego kodu. Na przykład w celu wykonywania wysokowydajnych operacji na zbiorach warto użyć zbioru haszowanego. Inne konstrukcje umożliwiają rozwiązywanie kolejnych problemów. Dzięki tej książce nauczysz się używania struktur danych i implementacji najważniejszych algorytmów w języku C#. Najpierw zapoznasz się z najprostszymi strukturami danych o swobodnym dostępie - z tablicami oraz listami. Wyjaśniono tu również działanie struktur danych o dostępie sekwencyjnym, opartych na stosach i kolejkach. Przedstawiono zastosowanie słowników, dzięki którym można mapować klucze na wartości i prowadzić szybkie wyszukiwanie. Przystępnie opisano korzystanie z najbardziej zaawansowanych konstrukcji, takich jak drzewo binarne, binarne drzewo poszukiwań, drzewo samorównoważące się i kopiec. W końcowej części książki znajdziesz ciekawą analizę stosowania grafów i związanych z nimi algorytmów, takich jak przeszukiwanie grafu, minimalne drzewo rozpinające, kolorowanie węzłów oraz znajdowanie najkrótszej ścieżki. Najciekawsze zagadnienia ujęte w książce: różne typy danych w C#: wartościowe i referencyjne tablice i listy oraz algorytmy sortowania operacje na zbiorach oraz wbudowany typ HashSet struktury drzewiaste i kopce: binarne, dwumianowe oraz Fibonacciego algorytmy oparte na grafach, w tym algorytm Dijkstry C#. Liczy się algorytm i odpowiednia struktura danych!
Marcin Jamro
Projektowanie aplikacji jest wymagającym zadaniem, zwłaszcza jeśli trzeba rozwiązywać złożone problemy. W takich przypadkach należy mieć na uwadze również wydajność kodu, aby program działał płynnie na urządzeniach o ograniczonych zasobach. Takie zadania bywają naprawdę trudne i wymagają wiedzy, w tym dotyczącej struktur danych i algorytmów. Tę praktyczną książkę docenią programiści C#. Zaczniesz od zapoznania się z zasadami działania algorytmów, aby później przejść do różnych struktur danych: tablic, list, stosów, kolejek, słowników i zbiorów. Poszczególne przykłady zostały zilustrowane fragmentami kodu i rysunkami. Opanujesz także sortowanie tablic przy użyciu rozmaitych algorytmów, co solidnie ugruntuje Twoje umiejętności. Następnie poznasz bardziej złożone struktury danych i algorytmy służące do różnych zadań, jak wyznaczanie najkrótszej ścieżki w grafie czy rozwiązywanie łamigłówek. W ten sposób nauczysz się budować w języku C# komponenty algorytmiczne, które bez problemu zastosujesz w rozmaitych aplikacjach, również internetowych i na platformy mobilne. Z tą książką nauczysz się: podstaw algorytmów i ich klasyfikacji przechowywać dane w ustrukturyzowany sposób budować aplikacje wzbogacone o stosy, kolejki, tablice z haszowaniem, słowniki i zbiory tworzyć wydajne aplikacje z użyciem algorytmów związanych z drzewami podnosić wydajność swoich rozwiązań przy użyciu grafów implementować algorytmy pozwalające rozwiązywać łamigłówki i generować fraktale Kilkusetkrotne zwiększenie wydajności kodu na wyciągnięcie ręki!
Struktury danych i algorytmy w języku Java. Przewodnik dla początkujących
James Cutajar
Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją już wypróbowane rozwiązania. Znajomość tych zagadnień jest niezwykle ważna dla każdego inżyniera oprogramowania. To książka przeznaczona dla programistów, którzy chcą w praktyczny sposób posługiwać się popularnymi algorytmami i strukturami danych, zrozumieć ich działanie i skuteczniej poprawiać wydajność swojego kodu w Javie. Przedstawiono tu narzędzia przydatne w pracy z algorytmami i w tworzeniu efektywnych aplikacji. Opisano praktyczne aspekty złożoności algorytmów. Omówiono algorytmy sortowania oraz inne popularne wzorce programowania, a także takie struktury danych jak drzewa binarne, tablice z haszowaniem i grafy. Następnie zaprezentowano koncepcje bardziej zaawansowane, wśród nich paradygmaty projektowania algorytmów i teorię grafów. W tej książce między innymi: definiowanie algorytmu i złożoność algorytmiczna struktury danych i ich implementacje algorytmy sortowania i wyszukiwania wzorca w tekście paradygmaty projektowania algorytmów grafy i sposoby ich reprezentacji w programach komputerowych grafy jako moduły do budowy złożonych algorytmów Algorytm i struktura danych: tak działa optymalny kod!
Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V
Harrison Ferrone
Unity jest zaawansowanym środowiskiem przeznaczonym do tworzenia gier 3D. Równocześnie może stanowić początek wspaniałej przygody z C#, który jest nowoczesnym i wszechstronnym językiem programowania. Taka ścieżka nauki pozwala na uniknięcie niezrozumiałego dla początkujących żargonu czy niejasnej logiki programowania. Poszczególne konstrukcje języka i ich zastosowanie nagle stają się proste - dzięki niestandardowym skryptom pisanym w C# można rozszerzyć możliwości Unity i tworzyć wciągające, świetnie wyglądające gry. Oto sposób na przyjemną i angażującą, a przy tym skuteczną naukę programowania! To piąte, uzupełnione i zaktualizowane wydanie cenionego podręcznika, dzięki któremu poznasz od podstaw koncepcje programowania w języku C#, dowiesz się, czym są zmienne i klasy, a także jakie są zasady programowania zorientowanego obiektowo. Po zapoznaniu się z elementarzem C# przejdziesz do tworzenia gier w Unity. Nauczysz się tworzyć skrypty obsługi prostej mechaniki gry i zdobędziesz praktyczne doświadczenie w programowaniu zgodnym z najlepszymi praktykami kodowania. A tym samym wejdziesz na wyższy poziom w zakresie posługiwania się Unity i językiem C#. Po uważnej lekturze zdobędziesz umiejętności potrzebne do realizacji projektów własnych gier w Unity i C#. W książce między innymi: precyzyjne przykłady przydatne w nauce podstaw programowania w języku C# skrypty i ich implementacja w Unity tworzenie podstawowych mechanizmów gier interfejsy, klasy abstrakcyjne, stosy, kolejki, obsługa wyjątków i błędów w C# podstawy sztucznej inteligencji do zastosowania w grach Ciekawość to pierwszy krok do programowania!
Harrison Ferrone
Unity to jeden z najpopularniejszych silników do tworzenia gier. Równocześnie, pracując w tym środowisku, możesz się nauczyć programowania w C#, który jest nowoczesnym i wszechstronnym językiem. Podczas pisania skryptów potrzebnych do zbudowania gry poszczególne konstrukcje języka i ich zastosowanie nagle stają się proste i zrozumiałe. Dzięki nim można zaimplementować niestandardowe zachowania i mechanikę gry, i to na poziomie profesjonalnej, grywalnej gry! I właśnie taki jest cel tej książki - nauka bloków budulcowych programowania i języka C# od podstaw. Oto siódme, uzupełnione i zaktualizowane wydanie cenionego podręcznika (dodano do niego kilka nowych rozdziałów). Dzięki lekturze poznasz od podstaw koncepcje programowania w języku C# i płynnie przejdziesz do tworzenia gier w Unity. Nauczysz się pisać skrypty implementujące prostą mechanikę gier, programować proceduralnie i zwiększać złożoność swoich gier poprzez wprowadzanie inteligentnych nieprzyjaciół i pocisków zadających obrażenia. W kolejnych rozdziałach poznasz coraz ciekawsze możliwości Unity, niezbędne w projektowaniu gier, takie jak sterowanie oświetleniem, ruchami gracza, kamerą, programowanie kolizji i wiele innych. W książce między innymi: podstawy programowania, w tym programowania zorientowanego obiektowego w języku C# przykłady skryptów C# w środowisku Unity interfejsy, klasy abstrakcyjne i rozszerzenia klas tworzenie dokumentu projektu gry i podstawowych mechanizmów gier stosy, kolejki, wyjątki, obsługa błędów formaty XML i JSON i ich zastosowanie Mistrz programowania zaczynał od pisania gier!