Wydawca: Helion
Helion - niekwestionowany lider wśród wydawców (lub największe wydawnictwo informatyczne) literatury informatycznej w Polsce. Działa na polskim rynku książki nieprzerwanie od 1991 roku.

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.
145
Ebook

Agile. Programowanie zwinne: zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C#

Robert C. Martin, Micah Martin

Poznaj nowoczesną metodykę wytwarzania oprogramowania w C# Jak stosować w praktyce zasady zwinnego wytwarzania oprogramowania? W jaki sposób wykorzystywać w projekcie diagramy UML? Jak korzystać z wzorców projektowych? W związku ze stale rosnącymi oczekiwaniami użytkowników oprogramowania produkcja systemów informatycznych wymaga dziś korzystania z usystematyzowanych metod zarządzania. Projekt informatyczny, przy którym nie używa się sensownej metodologii wytwarzania, jest skazany na porażkę - przekroczenie terminu, budżetu i niespełnienie wymagań funkcjonalnych. Kierowanie projektem zgodnie z określonymi zasadami również nie gwarantuje sukcesu, lecz znacznie ułatwia jego osiągnięcie. Na początku roku 2001 grupa ekspertów zawiązała zespół o nazwie Agile Alliance. Efektem prac tego zespołu jest metodologia zwinnego wytwarzania oprogramowania - Agile. Książka Agile. Programowanie zwinne: zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C# to podręcznik metodologii Agile przeznaczony dla twórców oprogramowania korzystających z technologii .NET. Dzięki niemu poznasz podstawowe założenia i postulaty twórców Agile i nauczysz się stosować je w praktyce. Dowiesz się, jak szacować terminy i koszty, dzielić proces wytwarzania na iteracje i testować produkt. Zdobędziesz wiedzę na temat refaktoryzacji, diagramów UML, testów jednostkowych i wzorców projektowych. Przeczytasz także o publikowaniu kolejnych wersji oprogramowania. Techniki programowania ekstremalnego Planowanie projektu Testowanie i refaktoryzacja Zasady zwinnego programowania Modelowanie oprogramowania za pomocą diagramów UML Stosowanie wzorców projektowych Projektowanie pakietów i komponentów Przekonaj się, ile czasu i pracy zaoszczędzisz, stosując w projektach metodologię Agile.

146
Ebook

Deep Learning. Uczenie głębokie z językiem Python. Sztuczna inteligencja i sieci neuronowe

Valentino Zocca, Gianmario Spacagna, Daniel Slater, Peter Roelants

Na naszych oczach dokonuje się przełom: technologie wykorzystujące rozmaite formy sztucznej inteligencji zaczynają się pojawiać w różnych branżach. Niektórzy nawet nie zdają sobie sprawy, jak często i jak powszechnie stosuje się algorytmy uczenia głębokiego. Możliwości w tym zakresie stale rosną. Wzrasta też zapotrzebowanie na inżynierów, którzy swobodnie operują wiedzą o uczeniu głębokim i są w stanie zaimplementować potrzebne algorytmy w konkretnym oprogramowaniu. Uczenie głębokie jest jednak dość złożonym zagadnieniem, a przyswojenie sobie potrzebnych umiejętności wymaga wysiłku. Ta książka stanowi doskonałe wprowadzenie w temat uczenia głębokiego. Wyjaśniono tu najważniejsze pojęcia uczenia maszynowego. Pokazano, do czego mogą się przydać takie narzędzia jak pakiet scikit-learn, biblioteki Theano, Keras czy TensorFlow. Ten praktyczny przewodnik znakomicie ułatwi zrozumienie zagadnień rozpoznawania wzorców, dokładnego skalowania danych, pozwoli też na rzetelne zapoznanie się z algorytmami i technikami uczenia głębokiego. Autorzy zaproponowali wykorzystanie w powyższych celach języka Python - ulubionego narzędzia wielu badaczy i pasjonatów nauki. W książce między innymi: Solidne podstawy uczenia maszynowego i sieci neuronowych Trening systemów sztucznej inteligencji w grach komputerowych Rozpoznawanie obrazów Rekurencyjne sieci neuronowej w modelowaniu języka Budowa systemów wykrywania oszustw i włamań Uczenie głębokie: zajrzyj w przyszłość programowania! Dr Valentino Zokka opracował wiele algorytmów matematycznych i modeli prognostycznych dla firmy Boeing. Obecnie jest konsultantem w branży finansowej. Gianmario Spacagna pracuje w firmie Pirelli, gdzie buduje systemy maszynowego uczenia się i kompletne rozwiązania do produktów informacyjnych. Daniel Slater tworzył oprogramowanie do oceny ryzyka dla branży finansowej. Obecnie zajmuje się systemami do przetwarzania dużych ilości danych i analizy zachowań użytkowników. Peter Roelants specjalizuje się w stosowaniu technik uczenia głębokiego do badań spektralnych obrazów, rozpoznawania mowy czy ekstrakcji danych z dokumentów.

147
Ebook

Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian

Neal Ford, Rebecca Parsons, Patrick Kua

Przez długi czas uważano, że architektura oprogramowania powinna powstać przed rozpoczęciem pisania kodu i pozostać niezmieniona aż do zakończenia projektu. Pojawienie się zwinnych metod tworzenia oprogramowania spowodowało, że taką koncepcję zaczęto podawać w wątpliwość. Niektórzy nawet kwestionowali potrzebę tworzenia architektury, gdyż utrudniała reakcję na zmiany wymagań. Istnieje jednak inne podejście do architektury, zgodnie z którym jest ona ściśle powiązana z fazą programowania i dynamicznie odpowiada na zmiany pojawiające się podczas tworzenia kodu. W ten sposób architektura ewolucyjna, pomimo nieprzewidywalności zmian, zapewnia rozwój projektu we właściwym kierunku. Dzięki tej książce architekci oprogramowania zapoznają się z nowym podejściem do powiązań architektury z czasem. Przekonają się też, że tworzenie architektury ewolucyjnej sprowadza się do trzech głównych zagadnień: funkcji dopasowania, zmian przyrostowych i prawidłowego sprzęgania. W tej książce uwzględniono analizę każdego z tych aspektów, ukazano też mechanizm budowania architektury wspierającej ciągłe zmiany. Szczegółowo wyjaśniono zasady wprowadzania pętli informacji zwrotnej pozwalających całemu zespołowi na spójne rozwijanie systemu w zgodzie z zasadą ciągłego dostarczania. Pokazano metody monitorowania stanu architektury. Sporo uwagi poświęcono problemom danych długowiecznych - jest to często pomijane zagadnienie. W tej książce: Funkcje dopasowania w architekturze Zmiany przyrostowe wprowadzane za pomocą projektowania i operacji Sprzężenie architektury i wprowadzanie zmian bez utraty stabilności systemu Dane ewolucyjne oraz zmiany wymogów i architektury w miarę upływu czasu Budowanie architektur ewolucyjnych Praktyczne wdrażanie architektury ewolucyjnej w korporacji Architektura korporacyjna: wysoka sztuka projektowania!

148
Ebook

Czysty kod. Podręcznik dobrego programisty

Robert C. Martin

Poznaj najlepsze metody tworzenia doskonałego kodu Jak pisać dobry kod, a zły przekształcić w dobry? Jak formatować kod, aby osiągnąć maksymalną czytelność? Jak implementować pełną obsługę błędów bez zaśmiecania logiki kodu? O tym, ile problemów sprawia niedbale napisany kod, wie każdy programista. Nie wszyscy jednak wiedzą, jak napisać ten świetny, "czysty" kod i czym właściwie powinien się on charakteryzować. Co więcej - jak odróżnić dobry kod od złego? Odpowiedź na te pytania oraz sposoby tworzenia czystego, czytelnego kodu znajdziesz właśnie w tej książce. Podręcznik jest obowiązkową pozycją dla każdego, kto chce poznać techniki rzetelnego i efektywnego programowania. W książce Czysty kod. Podręcznik dobrego programisty szczegółowo omówione zostały zasady, wzorce i najlepsze praktyki pisania czystego kodu. Podręcznik zawiera także kilka analiz przypadków o coraz większej złożoności, z których każda jest doskonałym ćwiczeniem porządkowania zanieczyszczonego bądź nieudanego kodu. Z tego podręcznika dowiesz się m.in., jak tworzyć dobre nazwy, obiekty i funkcje, a także jak tworzyć testy jednostkowe i korzystać z programowania sterowanego testami. Nauczysz się przekształcać kod zawierający problemy w taki, który jest solidny i efektywny. Nazwy klas i metod Funkcje i listy argumentów Rozdzielanie poleceń i zapytań Stosowanie wyjątków Komentarze Formatowanie Obiekty i struktury danych Obsługa błędów Testy jednostkowe Klasy i systemy Współbieżność Oczyszczanie kodu Niech stworzony przez Ciebie kod imponuje czystością!

149
Ebook

Android. Podstawy tworzenia aplikacji

Andrzej Stasiewicz

Przekonaj się, że nie taki Android straszny, jak go malują… Poznaj najpopularniejszy system operacyjny dla urządzeń mobilnych Naucz się tworzyć proste aplikacje i analizować kod przykładów Dowiedz się, jakich narzędzi potrzebujesz, aby rozpocząć pracę Według najnowszych badań Android stał się najbardziej popularnym systemem operacyjnym dla urządzeń mobilnych. Środowisko to kontroluje już niemal 2/3 wszystkich używanych na świecie smartfonów i tabletów, a jego użytkownicy mają do dyspozycji ponad 450 tysięcy różnych aplikacji! Nic więc dziwnego, że w sieci pełno jest ofert zatrudnienia dla osób, które potrafią tworzyć programy dla tego systemu. Najlepsi wprost nie mogą opędzić się od rekruterów proponujących im coraz ciekawsze warunki finansowe… Droga do sukcesu jest jednak długa i żmudna. Nauka programowania na potrzeby Androida nie wszystkim wydaje się rzeczą prostą, wielu zniechęca się już na samym wstępie. Najczęściej powodem bywa nieznajomość platformy, podstaw programowania obiektowego, języka Java czy choćby stosowanych tu narzędzi. Już samo korzystanie z przykładów zamieszczonych w sieci oraz ogólnodostępnej literatury wymaga zwykle minimalnej wiedzy na temat technologii i generalnego obycia w świecie urządzeń mobilnych. Na szczęście dostępna jest już książka "Android. Podstawy tworzenia aplikacji", która bezboleśnie wprowadzi Cię w krainę programowania komputerów mobilnych pracujących pod kontrolą systemu firmy Google. Dzięki niej poznasz podstawy języka Java i budowę aplikacji działających w Androidzie. Nauczysz się posługiwać odpowiednimi narzędziami i pisać własne programy. Dowiesz się, jak korzystać z zasobów graficznych i funkcji systemowych. Zyskasz instrukcje, jak pobierać dane z sieci oraz uruchamiać nowe wątki. Podstawy programowania urządzeń mobilnych Wyposażenie warsztatu pracy programisty Tworzenie prostych aplikacji dla Androida Definiowanie układów obiektów na ekranie Korzystanie z zasobów graficznych aplikacji Uruchamianie i kontrolowanie wątków Tworzenie aplikacji wieloekranowych Chwyć robota za antenki - zacznij samodzielnie tworzyć aplikacje dla Androida!

150
Ebook

Android Studio. Podstawy tworzenia aplikacji

Andrzej Stasiewicz

Naucz się tworzyć aplikacje w środowisku Android Studio! Instalowanie środowiska programistycznego, czyli od czego zacząć pracę Efekty specjalne, czyli jak przygotować obrazy i animacje dla Twojej aplikacji Programowanie czas zacząć, czyli do czego potrzebna Ci Java Tworzenie aplikacji na urządzenia mobilne jest dziś bardzo intratnym biznesem. Wszyscy używamy tabletów, smartfonów, telefonów komórkowych. Przeważnie zainstalowany jest w nich system operacyjny Android. Jest on bardzo uniwersalny, lecz musi uwzględniać najróżniejsze parametry sprzętu, na którym działa — a to sprawia, że jest również skomplikowany. Jeśli chcesz nauczyć się programować telefony i tablety, zacznij naukę od przeczytania tej książki. Książka poprowadzi Cię przez trudny proces pisania pierwszych aplikacji w nowym, oficjalnym środowisku programistycznym Android Studio. Dowiesz się, jak przygotować swoje środowisko pracy. Nauczysz się tworzyć i opisywać graficzne zasoby aplikacji, takie jak obrazy i animacje. Odkryjesz, jak wykorzystać kilka podstawowych elementów programowania, np. jak dodać reakcje opisane w Javie do różnych elementów aplikacji. Zobaczysz jak działają najważniejsze mechanizmy w programowaniu urządzeń mobilnych i stworzysz swoją pierwszą aplikację wieloekranową. Złap bakcyla programowania! Instalacja i konfiguracja środowiska Pierwsza aplikacja Wygląd pierwszej aplikacji Graficzne zasoby aplikacji Więcej o wyglądzie aplikacji Podstawy programowania Przygotowanie i uruchomienie animacji Przygotowanie interfejsu użytkownika Animacja poklatkowa map bitowych Własne komponenty graficzne Wątek w drugim planie Więcej ekranów dla aplikacji Android Studio — obudź w sobie kreatywność programisty!

151
Ebook

Architektura informacji w serwisach internetowych i nie tylko. Wydanie IV

Louis Rosenfeld, Peter Morville, Jorge Arango

W świecie, w którym potężne ilości informacji bombardują ludzi ze wszystkich stron, organizacje stają przed bardzo poważnym wyzwaniem: muszą znaleźć sposób, aby dotrzeć ze swoim przekazem do odbiorcy, zyskać jego uwagę i spowodować, aby zrozumiał i zapamiętał prezentowane treści. Dodatkowym problemem jest różnorodność kanałów interakcji oraz urządzeń — utrzymanie zrozumiałości i spójności przekazu staje się jeszcze trudniejsze. W takim świecie znajomość zasad projektowania architektury informacji staje się nieodzowna. Niniejsza książka jest przeznaczona dla wszystkich osób zaangażowanych w proces projektowania najróżniejszych przekazów informacji, szczególnie serwisów internetowych. Architektura informacji jest tu traktowana jako zbiór narzędzi i technik do obsługi trudnych problemów. Można tu znaleźć uniwersalne i ponadczasowe zasady organizacji informacji, narzędzia i techniki, które zdały próbę czasu i nie zależą od konkretnych technologii czy producentów. Dzięki praktycznemu podejściu ta książka przyda się każdemu, kto odpowiada za zdefiniowanie sposobu działania produktów interaktywnych. W tej książce znajdziesz: przegląd zagadnień dotyczących architektury informacji opis komponentów architektury informacji i powiązań między nimi metodykę organizacji witryn, systemy nawigacji, wyszukiwania i etykietowania stron opis metod poprawy komfortu użytkownika serwisu wskazówki dotyczące metodologii definiowania kierunku i zakresu architektury informacyjnej Architektura informacji — sztuka, która uczyni informację prawdziwie użyteczną! Louis Rosenfeld — odegrał znaczącą rolę w organizowaniu pierwszych trzech konferencji poświęconych architekturze informacji. Bierze aktywny udział w różnych konferencjach poświęconych projektowaniu w środowiskach sieciowych. Peter Morville — jest twórcą podstaw wiedzy o architekturze informacji i wykładowcą na Uniwersytecie Michigan. Często zabiera głos na różnych międzynarodowych konferencjach. Jorge Arango — jest architektem informacji z ogromnym doświadczeniem w projektowaniu produktów cyfrowych i usług, prezesem Information Architecture Institute i redaktorem naczelnym magazynu „Boxes and Arrows”.

152
Ebook

Algorytmy uczenia maszynowego. Zaawansowane techniki implementacji

Giuseppe Bonaccorso

Imponujący rozwój standardowych algorytmów przy ciągłej obniżce cen sprzętu i udostępnianiu coraz to szybszych komponentów przyczynił się do zrewolucjonizowania wielu gałęzi przemysłu. Obecnie uczenie maszynowe pozwala automatyzować procesy, które do niedawna musiały być zarządzane przez człowieka. Zadania, które jeszcze dekadę temu stanowiły nieprzekraczalną przeszkodę, dziś są wykonywane przez zwykły komputer osobisty. W efekcie dzięki technologii oraz dostępnym wysokopoziomowym otwartym platformom każdy, kto zainteresuje się uczeniem maszynowym, może projektować i wdrażać niezwykle potężne modele. Celem tej książki jest przybliżenie profesjonalistom tajników złożonych algorytmów uczenia maszynowego i zasad ich stosowania w praktyce. Poza praktycznymi informacjami dotyczącymi działania algorytmów i ich wdrożeń znalazły się tu również niezbędne podstawy teoretyczne. Opisano klasyczne modele uczenia nadzorowanego, nienadzorowanego i półnadzorowanego. Wskazano, w jakich sytuacjach okazują się one najbardziej przydatne. Zaprezentowano techniki wydobywania danych za pomocą modeli bayesowskich, algorytmu MCMC, a także dzięki stosowaniu ukrytych modeli Markowa. Omówiono zestaw przydatnych do uczenia maszynowego narzędzi, takich jak biblioteki: scikit-learn, Keras i TensorFlow. Najciekawsze zagadnienia: najważniejsze koncepcje teoretyczne uczenia maszynowego modelowanie probabilistyczne i uczenie hebbowskie zaawansowane koncepcje modeli neuronowych modele generatywne, takie jak splotowe sieci GAN i sieci Wassersteina głębokie sieci przekonań zaawansowane algorytmy: TD(tylda), aktor-krytyk, SARSA i Q-uczenie Uczenie maszynowe - już dziś zaimplementuj rozwiązania przyszłości!