Programowanie
WSO2 Developers' Guide. SOA and data services with WSO2 Enterprise Integrator
Fidel Prieto Estrada, Ramón Garrido
WSO2 Enterprise Integrator brings together the most powerful servers provided by the WSO2 company for your SOA infrastructure. As an Enterprise Service Bus (ESB), WSO2 Enterprise Integrator provides greater flexibility and agility to meet growing enterprise demands, whereas, as a Data Services Server (DSS), it provides an easy-to-use platform for integrating data stores, creating composite views across different data sources, and hosting data services. Using real-world scenarios, this book helps you build a solid foundation in developing enterprise applications with powerful data integration capabilities using the WSO2 servers.The book gets you started by brushing up your knowledge about SOA architecture and how it can be implemented through WSO2. It will help build your expertise with the core concepts of ESB such as building proxies, sequences, endpoints, and how to work with these in WSO2.Going further, you will also get well-acquainted with DSS data service concepts such as configuring data services, tasks, events, testing, and much more. The book will also cover API management techniques. Along with ESB and DSS, you will also learn about business process servers, the rules server and other components that together provide the control and robustness your enterprise applications will need. With practical use cases, the book covers typical daily scenarios you will come across while using these servers to give you hands-on experience.
Współbieżność w języku C#. Receptury
Stephen Cleary
Współbieżność jest jednym z wymogów nowoczesnych aplikacji, niezależnie od ich rodzaju i platformy. Tworzenie współbieżnych aplikacji jest co prawda dość złożone, jednak cecha ta czyni interfejs użytkownika bardziej responsywnym, a systemy — skalowalnymi. Zrozumienie istoty współbieżności i umiejętność jej zaimplementowania jest już koniecznością dla profesjonalnego dewelopera, nawet jeśli zagadnienia te wydają się trudne i skomplikowane. Ta książka przedstawia nowoczesne podejście do współbieżności. Jest przeznaczona dla programistów, którzy chcą poszerzyć swoją wiedzę i umiejętności. Omówiono tu zagadnienia wielowątkowości i przedstawiono kilka różnych rodzajów współbieżności, w tym programowanie równoległe, asynchroniczne i reaktywne. Opisano biblioteki, dzięki którym programowanie współbieżnych aplikacji staje się znacznie łatwiejsze poprzez podniesienie poziomu abstrakcji. Zawarte w książce receptury uzupełniono o działający kod i przedyskutowano sposób ich działania. W książce między innymi: Omówienie różnych rodzajów współbieżności Reaktywność i przepływ zdarzeń Biblioteka zadań równoległych (TPL) Biblioteki rozszerzeń reaktywnych w LINQ Prowadzenie testów jednostkowych za pomocą kodu współbieżnego Asynchroniczne programowanie obiektowe Synchronizacja wątków Kod współbieżny — responsywność, skalowalność, nowoczesność! Stephen Cleary jest doświadczonym programistą. Od samego początku tworzy oprogramowanie open source, między innymi bibliotek Boost C++. Opublikował również kilka własnych bibliotek i narzędzi.
Cody Precord
wxPython is a GUI toolkit for the Python programming language built on top of the cross-platform wxWidgets GUI libraries. wxPython provides a powerful set of tools that allow you to quickly and efficiently building applications that can run on a variety of different platforms. Since wxWidgets provides a wrapper around each platform’s native GUI toolkit, the applications built with wxPython will have a native look and feel wherever they are deployed.This book will provide you with the skills to build highly functional and native looking user interfaces for Python applications on multiple operating system environments. By working through the recipes, you will gain insights into and exposure to creating applications using wxPython. With a wide range of topics covered in the book, there are recipes to get the most basic of beginners started in GUI programming as well as tips to help experienced users get more out of their applications. The recipes will take you from the most basic application constructs all the way through to the deployment of complete applications.
Wybrane zagadnienia informatyki technicznej. Modelowanie i optymalizacja
Ireneusz Mrozek (red. naukowy)
Informatyka jest rozległą dziedziną obejmującą zarówno badania teoretyczne, skupiające się w głównej mierze nad algorytmami i ich optymalizacją, jak i rozwiązania praktyczne związane z projektowaniem, implementacją i wdrażaniem systemów obliczeniowych w warstwie sprzętowej i programowej. Niniejsza monografia jest zbiorem pięciu oryginalnych prac naukowych przedstawiających osiągnięcia młodych i dojrzałych naukowców z obszaru informatyki. Poszczególne rozdziały dotyczą zagadnień związanych z eksploracją danych, zbiorów przybliżonych, modelowaniem układów o charakterze dynamicznym, technikami testowania pamięci RAM i projektowaniem układów cyfrowych.
Wydajne programowanie w R. Praktyczny przewodnik po lepszym programowaniu
Colin Gillespie, Robin Lovelace
Istnieje wiele znakomitych materiałów dotyczących wizualizacji, analizy danych i tworzenia pakietów w języku R. Setki rozproszonych winiet, stron internetowych i forów wyjaśnia, w jaki sposób należy wykorzystywać R w określonych domenach. Niewiele jednak zostało napisane o tym, jak w prosty sposób zapewnić efektywne działanie języka R aż do teraz. Ten praktyczny podręcznik uczy nowych i doświadczonych użytkowników R, jak pisać w tym języku wydajny kod. Bazując na swoim wieloletnim doświadczeniu w prowadzeniu kursów języka R, autorzy Colin Gillespie i Robin Lovelace dostarczają szereg praktycznych porad na wiele różnych tematów od optymalizowania konfiguracji środowiska RStudio po wykorzystywanie języka C++ które czynią z tej książki przydatną pozycję w zbiorze literatury dowolnego użytkownika R. Z treści podręcznika Wydajne programowanie w R z pewnością skorzystają nauczyciele akademiccy, użytkownicy biznesowi i programiści z wielu różnych środowisk. Uzyskaj porady związane z konfigurowaniem środowiska programistycznego R Poznaj ogólne koncepcje programowania i techniki kodowania w R Zapoznaj się z elementami składowymi wydajnego przepływu pracy w R Naucz się, jak wydajnie odczytywać i zapisywać dane w R Zagłęb się w stolarce danych kluczowej umiejętności czyszczenia surowych danych Zoptymalizuj swój kod przy użyciu profilowania, standardowych trików oraz innych metod Określ swoje możliwości sprzętowe w zakresie obsługi obliczeń R Zmaksymalizuj korzyści płynące z programowania zespołowego Przyspiesz swoją przemianę z hakera R w programistę R Colin Gillespie jest starszym wykładowcą (profesor nadzwyczajny) na Uniwersytecie w Newcastle w Wielkiej Brytanii. Jego zainteresowania badawcze obejmują obliczenia o wysokiej wydajności oraz statystykę bayesowską. Regularnie zatrudniany przez Jumping Rivers (jumpingrivers.com) jako konsultant, uczy języka R od 2005 roku. Robin Lovelace jest pracownikiem Instytutu Badań nad Transportem oraz Instytutu Analizy Danych na Uniwersytecie w Leeds w Wielkiej Brytanii. Przez pięć lat wykorzystywał R w badaniach akademickich, zaś przez cztery lata uczył języka R na wszystkich poziomach. Robin wykorzystał ponadto język R w kilku projektach realizowanych w ramach programu badań stosowanych. Autorzy piszą czystą prozą, która daje zwięzłą i dobitną odpowiedź na pytanie Dlaczego wydajne programowanie?. Podwójny nacisk na programowanie i produktywność jest bardzo przydatny. -Garrett Grolemund Główny instruktor w RStudio oraz autor książek R for Data Science i Hands-on Programming with R (obie wydawnictwa O'Reilly)
Wydajność Javy. Szczegółowe porady dotyczące programowania i strojenia aplikacji w Javie. Wydanie II
Scott Oaks
Istnieją dwie strategie rozwiązywania problemów wydajnościowych aplikacji w Javie. Z jednej strony można wykorzystać potężne komputery i przydzielić JVM ogromne zasoby pamięci, z drugiej - w czasach ekspansji rozwiązań opartych na chmurach obliczeniowych nowe znaczenie zyskują małe, jednoprocesorowe komputery. Firmy takie jak Oracle czy Amazon udostępniają tanie serwery, na których można uruchamiać proste aplikacje. Łatwo się przekonać, jak ważne jest właściwe zarządzanie niewielką ilością pamięci w tego rodzaju środowiskach. Każdy, kto programuje w Javie, powinien dokładnie wiedzieć, jak maszyna JVM wykonuje kod i jak należy ją dostrajać, aby osiągała możliwie największą wydajność. W tej książce opisano wiele funkcjonalności, narzędzi i procedur, dzięki którym można poprawić efektywność kodu napisanego w Javie 8 i 11 LTS. Główny nacisk położono na zagadnienia istotne dla środowisk produkcyjnych, ale przedstawiono również ciekawe nowe technologie, takie jak kompilacja z wyprzedzeniem i eksperymentalne kolektory. Znalazło się tu także omówienie nowości w mechanizmie porządkowania pamięci i rejestratorze Java Flight Recorder, zaprezentowano kwestie funkcjonowania Javy w środowiskach kontenerowych, udoskonalone narzędzie JMH, kompilatory JIT, współdzielone klasy danych, narzędzia do monitorowania wydajności i wiele innych. Książkę doceni każdy inżynier zajmujący się JVM, który chce poradzić sobie z nietypowym działaniem systemu, wyciekami pamięci i problemami z jej porządkowaniem. Najciekawsze zagadnienia: platformy i kompilatory Javy a wydajność aplikacji porządkowanie pamięci zasady testowania wydajności aplikacji pakiet JDK i narzędzia do monitorowania aplikacji dostrajanie kolektora i interfejsów Java API wydajność aplikacji korzystających z baz danych "To najbardziej szczegółowy i praktyczny podręcznik na temat wydajności i strojenia maszyny JVM. Powinien go przeczytać każdy inżynier zajmujący się JVM, który kiedykolwiek zmagał się z nietypowym działaniem systemu, wyciekami pamięci i problemami z jej porządkowaniem" Rod Hilton Dostrojenie JVM: oto sekret wydajności kodu Javy!
Wyrażenia regularne. Leksykon kieszonkowy. Wydanie II
Tony Stubblebine
Poznaj wyrażenia regularne, aby wykorzystać moc ich możliwości w najpopularniejszych językach programowania! Chcesz poznać przepisy na wyrażenia regularne? Chcesz wykorzystywać możliwości Unicode w języku Ruby, Java, Perl, PHP, Pyton, C oraz .NET? Chcesz wiedzieć, jak stosować wyrażenia regularne zaimplementowane w różnych językach programowania? Wyrażenia regularne są narzędziem umożliwiającym analizę i modyfikowanie tekstu przez dopasowywanie wzorców. Są one łańcuchem znaków zawierającym kombinację normalnych znaków oraz specjalnych metaznaków i metasekwencji, a dopasowywanie wzorców polega na odszukaniu fragmentu łańcucha opisywanego przez wyrażenie regularne. Wyrażenia te znajdują zastosowanie przy sprawdzaniu wartości zmiennych, zmianie formatu, przeprowadzaniu złożonych operacji wyszukiwania oraz weryfikowaniu poprawności danych tekstowych. Książka "Wyrażenia regularne. Leksykon kieszonkowy" stanowi podręczny niezbędnik dla wszystkich piszących programy przetwarzające teksty. Oprócz zagadnień podstawowych, takich jak składnia wyrażeń regularnych oraz operacje, w których są wykorzystywane, leksykon zawiera inne niezwykle pomocne i bardziej zaawansowane informacje dotyczące na przykład narzędzi obsługi wyrażeń w języku Ruby oraz na serwerze WWW Apache. Czytając tę książkę, nie tylko zdobędziesz konkretną wiedzę, ale również niezbędne umiejętności praktyczne -- między innymi dowiesz się, jak wykorzystać znajomość wyrażeń regularnych we wszystkich środowiskach. Metaznaki, tryby oraz konstrukcje Reprezentacja i klasy znaków Komentarze i modyfikatory trybów Narzędzia obsługi wyrażeń regularnych w języku Ruby oraz na serwerze WWW Apache Operatory wyrażeń regularnych w języku Perl 5.8 Obiekty i metody do obsługi wyrażeń regularnych w języku JavaScript Funkcje obsługi wyrażeń regularnych w języku PHP i edytorze vi Obiekty i funkcje wyrażeń regularnych w języku Pyton Programy obsługiwane z wiersza poleceń Wyrażenia regularne to nieocenione narzędzia w pracy programisty -- nie możesz się bez nich obejść!
Wyrażenia regularne. Leksykon kieszonkowy. Wydanie II
Tony Stubblebine
Poznaj wyrażenia regularne, aby wykorzystać moc ich możliwości w najpopularniejszych językach programowania! Chcesz poznać przepisy na wyrażenia regularne? Chcesz wykorzystywać możliwości Unicode w języku Ruby, Java, Perl, PHP, Pyton, C oraz .NET? Chcesz wiedzieć, jak stosować wyrażenia regularne zaimplementowane w różnych językach programowania? Wyrażenia regularne są narzędziem umożliwiającym analizę i modyfikowanie tekstu przez dopasowywanie wzorców. Są one łańcuchem znaków zawierającym kombinację normalnych znaków oraz specjalnych metaznaków i metasekwencji, a dopasowywanie wzorców polega na odszukaniu fragmentu łańcucha opisywanego przez wyrażenie regularne. Wyrażenia te znajdują zastosowanie przy sprawdzaniu wartości zmiennych, zmianie formatu, przeprowadzaniu złożonych operacji wyszukiwania oraz weryfikowaniu poprawności danych tekstowych. Książka "Wyrażenia regularne. Leksykon kieszonkowy" stanowi podręczny niezbędnik dla wszystkich piszących programy przetwarzające teksty. Oprócz zagadnień podstawowych, takich jak składnia wyrażeń regularnych oraz operacje, w których są wykorzystywane, leksykon zawiera inne niezwykle pomocne i bardziej zaawansowane informacje dotyczące na przykład narzędzi obsługi wyrażeń w języku Ruby oraz na serwerze WWW Apache. Czytając tę książkę, nie tylko zdobędziesz konkretną wiedzę, ale również niezbędne umiejętności praktyczne -- między innymi dowiesz się, jak wykorzystać znajomość wyrażeń regularnych we wszystkich środowiskach. Metaznaki, tryby oraz konstrukcje Reprezentacja i klasy znaków Komentarze i modyfikatory trybów Narzędzia obsługi wyrażeń regularnych w języku Ruby oraz na serwerze WWW Apache Operatory wyrażeń regularnych w języku Perl 5.8 Obiekty i metody do obsługi wyrażeń regularnych w języku JavaScript Funkcje obsługi wyrażeń regularnych w języku PHP i edytorze vi Obiekty i funkcje wyrażeń regularnych w języku Pyton Programy obsługiwane z wiersza poleceń Wyrażenia regularne to nieocenione narzędzia w pracy programisty -- nie możesz się bez nich obejść!
Wyrażenia regularne. Receptury
Jan Goyvaerts, Steven Levithan
Poznaj i wykorzystaj możliwości regexpów w codziennej pracy! Jak wyrażenia regularne mogą przyśpieszyć Twoją pracę? Jak sprawdzić poprawność danych? Jak wykorzystać wyrażenia regularne w pracy z plikami XML? Wyrażenie regularne (ang. regexp) to inaczej wzorzec, który określa zbiór dopasowanych łańcuchów znaków. Brzmi to prosto. Jednak przy pierwszym spotkaniu z wyrażeniami wcale tak nie jest. Zbiór znaków i symboli składający się na wyrażenie regularne w niczym nie przypomina rzeczy, którą chciałbyś się zająć. Wyrażenia regularne zawsze kojarzą się początkującemu użytkownikowi co najmniej z wiedzą tajemną, a często wręcz z magią. Warto im się jednak przyjrzeć, poznać je i polubić, a następnie wykorzystać możliwości, jakie w nich drzemią. Jedno jest pewne - te możliwości są spore. Autorzy błyskawicznie zaprzyjaźnią Cię z wyrażeniami regularnymi - książka należy bowiem do znanej serii Receptury, cechującej się tym, że proces nauki jest oparty na analizie rozwiązań prawdziwych problemów. Na samym początku zdobędziesz elementarną wiedzę dotyczącą różnych typów dopasowania oraz dowiesz się, jak unikać najczęstszych problemów. Na kolejnych stronach nauczysz się stosować wyrażenia regularne w różnych językach programowania oraz wykorzystywać je do kontroli poprawności danych i formatowania ciągów znaków. Ponadto dowiesz się, jak operować na słowach, wierszach, znakach specjalnych oraz liczbach. Osobny rozdział został poświęcony operacjom na adresach URL oraz ścieżkach dostępu. Dzięki tej książce szybko zgłębisz tajniki wyrażeń regularnych. Kolejny krok to wykorzystanie tej wiedzy w codziennej pracy! Dopasowanie stałego tekstu Dopasowanie znaków niedrukowanych Dopasowania na początku i końcu wiersza Wyrażenia regularne dla całych wyrazów Wykorzystanie alternatywnych wyrażeń Grupowanie dopasowań Eliminowanie nawrotów Sposoby komentowania wyrażeń Wyrażenia regularne w językach programowania Weryfikacja i formatowanie danych z wykorzystaniem wyrażeń regularnych Dopasowanie kompletnego wiersza Praca z liczbami Operacje na adresach URL, ścieżkach i adresach internetowych Wykorzystanie wyrażeń regularnych w pracy z plikami XML Sprawdź, jak wyrażenia regularne mogą przyśpieszyć Twoją pracę!
Wyrażenia regularne. Wprowadzenie
Michael Fitzgerald
Wyrażenia regularne to wzorce, które pozwalają opisać łańcuchy znaków. Brzmi to groźnie, wygląda jeszcze gorzej, ale każdy programista prędzej czy później się z nimi spotka i… doceni ich potęgę! Ciężko sobie wyobrazić wyszukiwanie, zastępowanie oraz sprawdzanie poprawności danych bez wykorzystania potencjału wyrażeń regularnych. Czas poświęcony na ich opanowanie zwróci się błyskawicznie i z nawiązką! Ta wspaniała książka wprowadzi Cię w świat wyrażeń regularnych szybko i bezboleśnie. Już za chwilę wykorzystasz podstawowe elementy wyrażeń, a każdy kolejny rozdział dostarczy Ci coraz bardziej zaawansowanych narzędzi. W trakcie lektury nauczysz się korzystać z granic, klas znaków, grup i odniesień. Ponadto dowiesz się, jak wykorzystać możliwości Perla w zakresie transformacji tekstów. Książka ta jest wyjątkowym podręcznikiem, który musi znaleźć się na półce każdego programisty! Sprawdź już teraz: potencjał, jaki kryją wyrażenia regularne metody szybkiego wyszukiwania i zastępowania ciągów znaków sposoby korzystania z wyrażeń w różnych językach programowania możliwości wyrażeń regularnych w zakresie kontroli poprawności wprowadzonych danych Zaoszczędź czas dzięki wyrażeniom regularnym!
Wysoce wydajny C++. Opanuj sztukę optymalizowania działania kodu. Wydanie II
Bjorn Andrist, Viktor Sehr
Dzisiejszy C++ jest wyjątkowym językiem programowania. Umożliwia pisanie zwięzłego, stabilnego kodu, który można zoptymalizować pod kątem wydajności w niespotykanym dotychczas stopniu. Język C++ w ciągu ostatnich lat został unowocześniony. W standardzie C++ 20 znalazło się sporo mechanizmów, które pozwalają osiągnąć wysoką efektywność kodu, a równocześnie uprzyjemniają programiście pracę. Poprawiono także ustawienia domyślne kompilatora. To wszystko sprawia, że wielu profesjonalistów wybiera właśnie C++, gdy chce uzyskać kod o wyjątkowej wydajności. Ta książka jest drugim, zaktualizowanym i uzupełnionym wydaniem przewodnika dla programistów. Rozpoczyna się od szczegółowego wprowadzenia do nowoczesnego C++ z uwzględnieniem technik eliminowania wąskich gardeł w kodzie bazowym. Następnie omówiono zagadnienia optymalizacji struktur danych i zarzadzania pamięcią. Przedstawiono również tematykę algorytmów, zasady pisania czytelnego kodu i stosowania niestandardowych iteratorów. Zamieszczono w niej też praktyczne przykłady używania metaprogramowania w języku C++, korutyn, refleksji (do ograniczenia ilości szablonowego kodu), obiektów pośredniczących (do wprowadzania ukrytych optymalizacji), programowania współbieżnego i struktur danych wolnych od blokad. W końcowej części dokonano przeglądu algorytmów równoległych w C++. W książce między innymi: nowe aspekty C++ 20 wyspecjalizowane struktury danych na potrzeby wydajnego kodu metaprogramowanie i niestandardowe zarządzanie pamięcią mechanizm refleksji i programowanie współbieżne bez używania blokad subtelne optymalizacje algorytmów z biblioteki standardowej C++ leniwe generatory i zadania asynchroniczne Twórz wydajny i czysty kod w C++!
Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II
Micha Gorelick, Ian Ozsvald
Python jest językiem łatwym do opanowania i przyjemnym dla programisty. Jednak łatwość projektowania nie przekłada się na szybkość działania kodu. W konsekwencji przetwarzanie dużych wolumenów danych czy próba skalowania aplikacji kończą się problemami z wydajnością lub niezawodnością. Niekiedy rozwiązaniem jest zastosowanie procesów szeregowych, w innych przypadkach warto sięgnąć do architektury wielordzeniowej, klastrów lub układów GPU. Relatywnie często okazuje się, że dobre wyniki uzyskuje się w efekcie takiego zmodyfikowania technik kodowania, aby przy wykorzystaniu potencjału Pythona stosować sprawdzone metody poprawy wydajności kodu. Dzięki drugiemu, poszerzonemu i zaktualizowanemu wydaniu tej książki zdobędziesz wszechstronną wiedzę o czynnikach wpływających na wydajność kodu. Dowiesz się, jakie procesy zachodzą w tle komputera, na jakich zasadach odbywa się przydzielanie pamięci, oraz zyskasz nowe spojrzenie na proces kompilacji do postaci kodu maszynowego. Zapoznasz się z zagadnieniem współbieżności i obliczeń klastrowych. Zaczniesz swobodnie posługiwać się najlepszymi narzędziami Pythona, takimi jak NumPy czy moduł multiprocessing. Z pewnością docenisz techniki zapewniające korzystanie z minimum zasobów, takich jak czas procesora czy pamięć RAM. Opisane tu zagadnienia zilustrowano przykładami kodu oraz poradami najlepszych specjalistów z branży. W książce: narzędzia NumPy, Cython i Docker znajdowanie wąskich gardeł związanych z wykorzystaniem czasu procesora i pamięci wydajność kodu a odpowiednie struktury danych przyspieszanie obliczeń opartych na macierzach i wektorach zarządzanie wieloma operacjami obliczeniowymi i wejścia-wyjścia przetwarzanie współbieżne i uruchamianie kodu w klastrze Programowanie w Pythonie: przede wszystkim wydajność i niezawodność!
Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie II
Micha Gorelick, Ian Ozsvald
Python jest językiem łatwym do opanowania i przyjemnym dla programisty. Jednak łatwość projektowania nie przekłada się na szybkość działania kodu. W konsekwencji przetwarzanie dużych wolumenów danych czy próba skalowania aplikacji kończą się problemami z wydajnością lub niezawodnością. Niekiedy rozwiązaniem jest zastosowanie procesów szeregowych, w innych przypadkach warto sięgnąć do architektury wielordzeniowej, klastrów lub układów GPU. Relatywnie często okazuje się, że dobre wyniki uzyskuje się w efekcie takiego zmodyfikowania technik kodowania, aby przy wykorzystaniu potencjału Pythona stosować sprawdzone metody poprawy wydajności kodu. Dzięki drugiemu, poszerzonemu i zaktualizowanemu wydaniu tej książki zdobędziesz wszechstronną wiedzę o czynnikach wpływających na wydajność kodu. Dowiesz się, jakie procesy zachodzą w tle komputera, na jakich zasadach odbywa się przydzielanie pamięci, oraz zyskasz nowe spojrzenie na proces kompilacji do postaci kodu maszynowego. Zapoznasz się z zagadnieniem współbieżności i obliczeń klastrowych. Zaczniesz swobodnie posługiwać się najlepszymi narzędziami Pythona, takimi jak NumPy czy moduł multiprocessing. Z pewnością docenisz techniki zapewniające korzystanie z minimum zasobów, takich jak czas procesora czy pamięć RAM. Opisane tu zagadnienia zilustrowano przykładami kodu oraz poradami najlepszych specjalistów z branży. W książce: narzędzia NumPy, Cython i Docker znajdowanie wąskich gardeł związanych z wykorzystaniem czasu procesora i pamięci wydajność kodu a odpowiednie struktury danych przyspieszanie obliczeń opartych na macierzach i wektorach zarządzanie wieloma operacjami obliczeniowymi i wejścia-wyjścia przetwarzanie współbieżne i uruchamianie kodu w klastrze Programowanie w Pythonie: przede wszystkim wydajność i niezawodność!
Wysoko wydajny Python. Efektywne programowanie w praktyce. Wydanie III
Micha Gorelick, Ian Ozsvald, Hilary Mason
Każdy, kto się zetknął z językiem Python, wie, że jest on prosty i przyjazny dla programistów, ale ma też swoje ograniczenia przy pracy z dużymi wolumenami danych szybko pojawiają się problemy z wydajnością i ze skalowaniem. Niekiedy pomaga mocniejsza konfiguracja sprzętowa, jednak najczęściej kluczowe jest zastosowanie odpowiednich technik programistycznych i właściwych narzędzi. Dzięki kolejnemu, poszerzonemu i zaktualizowanemu wydaniu tego praktycznego podręcznika zdobędziesz wszechstronną wiedzę o czynnikach wpływających na wydajność kodu. Dowiesz się, jak lokalizować wąskie gardła wydajności i optymalizować kod w programach, które przetwarzają duże wolumeny danych. Lepiej też zrozumiesz zasady implementacji kodu Pythona. W książce poruszono takie zagadnienia jak architektury wielordzeniowe, klastry, skalowanie systemu poza limity pamięci RAM lub z wykorzystaniem procesorów graficznych. Zaprezentowano praktyczne sposoby radzenia sobie z różnymi wyzwaniami, przybliżono również optymalizację kodu Pythona w wielu realnych scenariuszach, w tym na przykład w sytuacji wyodrębniania danych generatywnej sztucznej inteligencji i uczenia maszynowego w wersji produkcyjnej. W książce: narzędzia NumPy i Cython, a także narzędzia profilujące wyszukiwanie wąskich gardeł wykorzystania czasu procesora i pamięci dobór odpowiednich struktur danych, macierze i wektory przyspieszanie sieci neuronowych i obliczeń opartych na procesorach GPU zarządzanie wieloma operacjami obliczeniowymi i operacjami wejścia-wyjścia przetwarzanie współbieżne w klastrze To lektura obowiązkowa dla każdego programisty Pythona! Mikhail Timonin, projektant, Engelhart
Kent Beck
Sprawdzone rozwiązania Twoich problemów! Przy nauce programowania warto uczyć się na cudzych błędach. Programiści tworzący aplikację codziennie natykają się na przeróżne problemy oraz zagadnienia do rozwiązania. Rzadko jednak zdarza się, żeby były one wyjątkowe i niespotykane wcześniej. Jeżeli masz problem, możesz być prawie pewien, że ktoś też już go miał - i w dodatku rozwiązał. Właśnie w ten sposób powstały wzorce, które w jasny sposób opisują sposoby rozwiązywania typowych problemów. W tej książce znajdziesz 77 wzorców, które pozwolą Ci uniknąć wielu pułapek oraz rozwiązać najczęściej spotykane problemy. W trakcie lektury dowiesz się, w jaki sposób przechowywać stan oraz gdzie umieścić logikę Twojej aplikacji. Ponadto poznasz najefektywniejsze sposoby sterowania przebiegiem programu oraz wybierzesz rodzaj kolekcji odpowiedni do Twoich potrzeb. Nauczysz się dobierać właściwe nazwy dla zmiennych i metod oraz przekonasz się, że można sprawnie opanować wysyp wyjątków. Książka ta jest obowiązkową lekturą każdego programisty. Dzięki niej Twoje życie stanie się prostsze, a Twoje oprogramowanie bardziej przejrzyste! Dzięki tej książce: poznasz 77 przydatnych wzorców wybierzesz odpowiedni typ kolekcji w zależności od problemu zaprojektujesz przejrzystą hierarchię klas zbudujesz lepszą i bardziej niezawodną aplikację Poznaj najlepsze wzorce, które ulepszą Twoje oprogramowanie!
Wzorce komunikacji. Przewodnik dla programistów i architektów
Jacqui Read
Skuteczna komunikacja jest równocześnie sztuką i nauką. Koszt niewłaściwej komunikacji bywa wysoki, dlatego warto zgłębiać tę umiejętność. Architekci wiedzą, jak ważne w ich fachu są wzorce i antywzorce, które można zastosować (lub rozpoznać) podczas projektowania systemów. Okazuje się, że te same koncepcje doskonale się sprawdzają w odniesieniu do komunikacji. Oto mistrzowski przewodnik, który odblokowuje złożoność kryjącą się za językiem ludzkich interakcji! Mark Richards, architekt oprogramowania Ta książka jest wyjątkowo praktycznym przewodnikiem, dzięki któremu przyswoisz ważną umiejętność skutecznego komunikowania wizji, aby uzyskiwać wsparcie dla swojego projektu, a także wkład ze strony zespołów. Dowiesz się, jak przekonująco prezentować zamierzenia i jak unikać nieporozumień, które mogą prowadzić do wzrostu kosztów, niespełnionych wymagań czy innych niż zakładane efektów pracy. Poprzez konstruktywne przykłady i wzorce poradnik uczy umiejętności niezbędnych do jasnego wyrażania swojego przekazu wobec różnych odbiorców, z którymi ma do czynienia niemal każdy programista i architekt. W książce między innymi: techniki przekazywania zamierzonych informacji, odpowiadających danemu etapowi projektu archetypy osób pełniących różne funkcje i mających szczególne potrzeby techniki komunikacji umożliwiające sukces w środowisku technicznym współpraca z rozproszonymi zespołami stosowanie wzorców komunikacyjnych w rzeczywistych projektach informatycznych Umiejętności prezentowane w tej książce można by nazwać miękkimi, ale nie jest łatwo się ich nauczyć! Rebecca Parsons, emerytowana dyrektor do spraw technologii, Thoughtworks
Wzorce komunikacji. Przewodnik dla programistów i architektów
Jacqui Read
Skuteczna komunikacja jest równocześnie sztuką i nauką. Koszt niewłaściwej komunikacji bywa wysoki, dlatego warto zgłębiać tę umiejętność. Architekci wiedzą, jak ważne w ich fachu są wzorce i antywzorce, które można zastosować (lub rozpoznać) podczas projektowania systemów. Okazuje się, że te same koncepcje doskonale się sprawdzają w odniesieniu do komunikacji. Oto mistrzowski przewodnik, który odblokowuje złożoność kryjącą się za językiem ludzkich interakcji! Mark Richards, architekt oprogramowania Ta książka jest wyjątkowo praktycznym przewodnikiem, dzięki któremu przyswoisz ważną umiejętność skutecznego komunikowania wizji, aby uzyskiwać wsparcie dla swojego projektu, a także wkład ze strony zespołów. Dowiesz się, jak przekonująco prezentować zamierzenia i jak unikać nieporozumień, które mogą prowadzić do wzrostu kosztów, niespełnionych wymagań czy innych niż zakładane efektów pracy. Poprzez konstruktywne przykłady i wzorce poradnik uczy umiejętności niezbędnych do jasnego wyrażania swojego przekazu wobec różnych odbiorców, z którymi ma do czynienia niemal każdy programista i architekt. W książce między innymi: techniki przekazywania zamierzonych informacji, odpowiadających danemu etapowi projektu archetypy osób pełniących różne funkcje i mających szczególne potrzeby techniki komunikacji umożliwiające sukces w środowisku technicznym współpraca z rozproszonymi zespołami stosowanie wzorców komunikacyjnych w rzeczywistych projektach informatycznych Umiejętności prezentowane w tej książce można by nazwać miękkimi, ale nie jest łatwo się ich nauczyć! Rebecca Parsons, emerytowana dyrektor do spraw technologii, Thoughtworks
Wzorce projektowe dla programistów Javy. Udoskonal swoje umiejętności projektowania oprogramowania
Miroslav Wengner
Właściwe stosowanie wzorców projektowych jest umiejętnością, którą bardzo cenią twórcy oprogramowania. Wzorce pozwalają na szybkie opracowanie złożonych zagadnień i umożliwiają tworzenie kodu nadającego się do wielokrotnego użycia. Taki kod jest przy tym wydajny, łatwy w testowaniu i utrzymaniu. Z pewnością wzorce projektowe są świetnym rozwiązaniem dla inżyniera, który chce doskonalić umiejętności projektowania oprogramowania. Książka stanowi zbiór praktycznych informacji dotyczących najpopularniejszych wzorców projektowych. Lekturę rozpoczniesz od zapoznania się z możliwościami korzystania z wzorców projektowych na platformie Javy. Dowiesz się także, jakich zasad trzeba przestrzegać, aby zapewnić czytelność i łatwość utrzymania kodu Javy. W kolejnych rozdziałach znajdziesz praktyczne wskazówki i przykłady dotyczące stosowania wzorców kreacyjnych, strukturalnych, operacyjnych, a także wzorców współbieżności. Nauczysz się ich używać do praktycznego rozwiązywania problemów często spotykanych podczas projektowania oprogramowania. Końcowy rozdział został poświęcony antywzorcom, a zawarte w nim informacje pomogą Ci w ich identyfikacji i podjęciu najlepszych środków zaradczych. W książce: jakie problemy można rozwiązać za pomocą wzorców projektowych w Javie jakie możliwości ma programowanie współbieżne jak wzorzec projektowy Obserwator buduje relację "jeden-do-wielu" między instancjami jakie problemy pomaga rozwiązać wzorzec Odwiedzający jak kontrolować zasoby przy użyciu wzorca Pula wątków jak zaradzić problemom spowodowanym przez antywzorce Wzorce projektowe: niezbędnik najlepszych programistów Javy!
Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku
Erich Gamma, Richard Helm, Ralph Johnson, John...
Naucz się wykorzystywać wzorce projektowe i ułatw sobie pracę! Jak wykorzystać projekty, które już wcześniej okazały się dobre? Jak stworzyć elastyczny projekt obiektowy? Jak sprawnie rozwiązywać typowe problemy projektowe? Projektowanie oprogramowania obiektowego nie jest łatwe, a przy założeniu, że powinno ono nadawać się do wielokrotnego użytku, staje się naprawdę skomplikowane. Aby stworzyć dobry projekt, najlepiej skorzystać ze sprawdzonych i efektywnych rozwiązań, które wcześniej były już stosowane. W tej książce znajdziesz właśnie najlepsze doświadczenia z obszaru programowania obiektowego, zapisane w formie wzorców projektowych gotowych do natychmiastowego użycia! W książce „Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku” opisano, czym są wzorce projektowe, a także w jaki sposób pomagają one projektować oprogramowanie obiektowe. Podręcznik zawiera studia przypadków, pozwalające poznać metody stosowania wzorców w praktyce. Zamieszczono tu również katalog wzorców projektowych, podzielony na trzy kategorie: wzorce konstrukcyjne, strukturalne i operacyjne. Dzięki temu przewodnikowi nauczysz się skutecznie korzystać z wzorców projektowych, ulepszać dokumentację i usprawniać konserwację istniejących systemów. Krótko mówiąc, poznasz najlepsze sposoby sprawnego opracowywania niezawodnego projektu. Wzorce projektowe w architekturze MVC Katalog wzorców projektowych Projektowanie edytora dokumentów Wzorce konstrukcyjne, strukturalne i operacyjne Dziedziczenie klas i interfejsów Określanie implementacji obiektów Obsługa wielu standardów wyglądu i działania Zastosowanie mechanizmów powtórnego wykorzystania rozwiązania Wykorzystaj zestaw konkretnych narzędzi do programowania obiektowego!
Wzorce projektowe. Leksykon kieszonkowy
Daniel Krasnokucki
Odkryj wzorce projektowe i sposoby ich stosowania! Poznaj najlepsze wzorce projektowe Naucz się je stosować w praktyce Dowiedz się, jak wybrać właściwy wzorzec Gdy stajesz przed nowym problemem programistycznym, nierzadko łamiesz sobie głowę nad właściwym rozwiązaniem. Całymi godzinami starasz się wybrać najlepszą drogę. Zupełnie niepotrzebnie, bo ktoś niemal na pewno zrobił to już wcześniej, przetestował swoje rozwiązanie i wyeliminował ewentualne błędy, a odkryty przez niego sposób stał się obowiązującym wzorcem projektowym, wykorzystywanym z powodzeniem przez rzesze programistów. Jeśli chcesz korzystać ze sprawdzonych wzorców, sięgnij po ten leksykon kieszonkowy. W telegraficznym skrócie prezentuje on najlepsze i najczęściej używane wzorce projektowe, sposoby ich implementacji i przykłady stosowania, a jeśli to Ci nie wystarczy, możesz też zaznajomić się z praktyczną realizacją tych wzorców w językach C++ i C#. Niezależnie od tego, czy temat jest dla Ciebie nowy, czy chcesz tylko uporządkować swoją wiedzę, trafiłeś na odpowiednią książkę! Różne rodzaje wzorców i zależności występujące między nimi Wzorce konstrukcyjne, strukturalne i operacyjne Przeznaczenie i implementacja poszczególnych wzorców Praktyczne zastosowanie wzorców projektowych Przykładowe kody w C++ i C# Nie wyważaj otwartych drzwi — sięgnij po odpowiedni wzorzec!
Wzorce projektowe. Leksykon kieszonkowy
Daniel Krasnokucki
Odkryj wzorce projektowe i sposoby ich stosowania! Poznaj najlepsze wzorce projektowe Naucz się je stosować w praktyce Dowiedz się, jak wybrać właściwy wzorzec Gdy stajesz przed nowym problemem programistycznym, nierzadko łamiesz sobie głowę nad właściwym rozwiązaniem. Całymi godzinami starasz się wybrać najlepszą drogę. Zupełnie niepotrzebnie, bo ktoś niemal na pewno zrobił to już wcześniej, przetestował swoje rozwiązanie i wyeliminował ewentualne błędy, a odkryty przez niego sposób stał się obowiązującym wzorcem projektowym, wykorzystywanym z powodzeniem przez rzesze programistów. Jeśli chcesz korzystać ze sprawdzonych wzorców, sięgnij po ten leksykon kieszonkowy. W telegraficznym skrócie prezentuje on najlepsze i najczęściej używane wzorce projektowe, sposoby ich implementacji i przykłady stosowania, a jeśli to Ci nie wystarczy, możesz też zaznajomić się z praktyczną realizacją tych wzorców w językach C++ i C#. Niezależnie od tego, czy temat jest dla Ciebie nowy, czy chcesz tylko uporządkować swoją wiedzę, trafiłeś na odpowiednią książkę! Różne rodzaje wzorców i zależności występujące między nimi Wzorce konstrukcyjne, strukturalne i operacyjne Przeznaczenie i implementacja poszczególnych wzorców Praktyczne zastosowanie wzorców projektowych Przykładowe kody w C++ i C# Nie wyważaj otwartych drzwi — sięgnij po odpowiedni wzorzec!
Wzorce projektowe. Leksykon kieszonkowy
Daniel Krasnokucki
Odkryj wzorce projektowe i sposoby ich stosowania! Poznaj najlepsze wzorce projektowe Naucz się je stosować w praktyce Dowiedz się, jak wybrać właściwy wzorzec Gdy stajesz przed nowym problemem programistycznym, nierzadko łamiesz sobie głowę nad właściwym rozwiązaniem. Całymi godzinami starasz się wybrać najlepszą drogę. Zupełnie niepotrzebnie, bo ktoś niemal na pewno zrobił to już wcześniej, przetestował swoje rozwiązanie i wyeliminował ewentualne błędy, a odkryty przez niego sposób stał się obowiązującym wzorcem projektowym, wykorzystywanym z powodzeniem przez rzesze programistów. Jeśli chcesz korzystać ze sprawdzonych wzorców, sięgnij po ten leksykon kieszonkowy. W telegraficznym skrócie prezentuje on najlepsze i najczęściej używane wzorce projektowe, sposoby ich implementacji i przykłady stosowania, a jeśli to Ci nie wystarczy, możesz też zaznajomić się z praktyczną realizacją tych wzorców w językach C++ i C#. Niezależnie od tego, czy temat jest dla Ciebie nowy, czy chcesz tylko uporządkować swoją wiedzę, trafiłeś na odpowiednią książkę! Różne rodzaje wzorców i zależności występujące między nimi Wzorce konstrukcyjne, strukturalne i operacyjne Przeznaczenie i implementacja poszczególnych wzorców Praktyczne zastosowanie wzorców projektowych Przykładowe kody w C++ i C# Nie wyważaj otwartych drzwi — sięgnij po odpowiedni wzorzec!
Wzorce projektowe. Rusz głową!
Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth...
Otwórz swój umysł. Poznaj wszystko, co związane z wzorcami projektowymi, w sposób gwarantujący szybkie i skuteczne opanowanie zasad ich stosowania. Zapomnij o listingach liczących tysiące wierszy, długich i nużących opisach teoretycznych oraz rozbudowanych schematach zależności. Wzorce projektowe to gotowe opisy rozwiązań najczęstszych problemów napotykanych przy tworzeniu oprogramowania. Aby je prawidłowo stosować, należy poznać założenia, na podstawie których zostały stworzone, oraz nauczyć się implementować je we właściwy sposób. Naprzód, głowo! Nikt ci tego nie potrafił wytłumaczyć? Wydaje Ci się, że to problem nie na Twoją głowę? Nie potrzebujesz elektrowstrząsów, żeby pobudzić swój mózg do aktywnego działania. Tylko żadnych gwałtownych gestów! Usiądź wygodnie, otwórz książkę, dopiero teraz się zacznie. Na początek - rusz głową! Precz z nudnymi wykładami i zakuwaniem bez zrozumienia! Nauka to znacznie więcej niż tylko czytanie suchego tekstu. Twój mózg jest niczym głodny rekin, cały czas prący naprzód w poszukiwaniu nowej, apetycznej przekąski. Jak karmimy Twój wygłodniały umysł? Używamy rysunków, bo obraz wart jest 1024 słów. Stosujemy powtórzenia, by zakodować na stałe dane w Twojej chłonnej głowie. Oddziałujemy na emocje, jesteśmy nieprzewidywalni, zaskakujący i zabawni. Stawiamy przed Tobą wyzwania i zadajemy pytania, które angażują Cię w proces studiowania przedstawianych zagadnień. Cały czas pobudzamy Twój umysł do aktywnego działania, zmuszamy go do posłuszeństwa... a za ciężką pracę nagrodzimy go smakowitym ciasteczkiem w postaci wiedzy - wisienka gratis! Rozkmiń to sam! Cele stosowania wzorców projektowych Założenia, na których opierają się wzorce projektowe Najważniejsze i najczęściej wykorzystywane wzorce projektowe Przechowywanie i prezentacja danych Mechanizm RMI Wzorzec MVC Implementacja wzorców projektowych w aplikacjach Przekonaj się, że nowoczesne metody nauczania mogą zmienić również sposób poznawania nowoczesnych technik programistycznych.
Wzorce projektowe. Rusz głową!
Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth...
Otwórz swój umysł. Poznaj wszystko, co związane z wzorcami projektowymi, w sposób gwarantujący szybkie i skuteczne opanowanie zasad ich stosowania. Zapomnij o listingach liczących tysiące wierszy, długich i nużących opisach teoretycznych oraz rozbudowanych schematach zależności. Wzorce projektowe to gotowe opisy rozwiązań najczęstszych problemów napotykanych przy tworzeniu oprogramowania. Aby je prawidłowo stosować, należy poznać założenia, na podstawie których zostały stworzone, oraz nauczyć się implementować je we właściwy sposób. Naprzód, głowo! Nikt ci tego nie potrafił wytłumaczyć? Wydaje Ci się, że to problem nie na Twoją głowę? Nie potrzebujesz elektrowstrząsów, żeby pobudzić swój mózg do aktywnego działania. Tylko żadnych gwałtownych gestów! Usiądź wygodnie, otwórz książkę, dopiero teraz się zacznie. Na początek - rusz głową! Precz z nudnymi wykładami i zakuwaniem bez zrozumienia! Nauka to znacznie więcej niż tylko czytanie suchego tekstu. Twój mózg jest niczym głodny rekin, cały czas prący naprzód w poszukiwaniu nowej, apetycznej przekąski. Jak karmimy Twój wygłodniały umysł? Używamy rysunków, bo obraz wart jest 1024 słów. Stosujemy powtórzenia, by zakodować na stałe dane w Twojej chłonnej głowie. Oddziałujemy na emocje, jesteśmy nieprzewidywalni, zaskakujący i zabawni. Stawiamy przed Tobą wyzwania i zadajemy pytania, które angażują Cię w proces studiowania przedstawianych zagadnień. Cały czas pobudzamy Twój umysł do aktywnego działania, zmuszamy go do posłuszeństwa... a za ciężką pracę nagrodzimy go smakowitym ciasteczkiem w postaci wiedzy - wisienka gratis! Rozkmiń to sam! Cele stosowania wzorców projektowych Założenia, na których opierają się wzorce projektowe Najważniejsze i najczęściej wykorzystywane wzorce projektowe Przechowywanie i prezentacja danych Mechanizm RMI Wzorzec MVC Implementacja wzorców projektowych w aplikacjach Przekonaj się, że nowoczesne metody nauczania mogą zmienić również sposób poznawania nowoczesnych technik programistycznych.
Eric Freeman, Elisabeth Robson
Nie warto wyważać otwartych drzwi ani ponownie wynajdywać koła. Sprytniej jest skorzystać ze sprawdzonych rozwiązań, które ktoś już opracował i wdrożył. Dlatego właśnie mądrzy programiści lubią wzorce projektowe: to jest ich sekretny sposób, aby nie tracić sił na nudne drobiazgi, tylko zająć się trudniejszymi, ważniejszymi i ciekawszymi zadaniami. Nic dziwnego, że powstało naprawdę bardzo dużo wzorców projektowych. Przegląd ich wszystkich byłby niemożliwy. Które z nich więc są najpotrzebniejsze w programowaniu obiektowym i kiedy dokładnie z nich skorzystać? Odpowiedź na to fundamentalne pytanie znajdziesz w tej książce ? drugim wydaniu świetnego podręcznika dla przyszłych mistrzów kodu. Zostało ono, podobnie jak inne pozycje z serii Rusz głową!, przygotowane zgodnie z najnowszymi odkryciami nauk poznawczych, teorii uczenia się i neurofizjologii. I właśnie dzięki temu zaangażujesz swój mózg, wykorzystasz wiele zmysłów i niepostrzeżenie poznasz najprzydatniejsze i najciekawsze wzorce projektowe stosowane w programowaniu zorientowanym obiektowo. Tak złożone tematy, jak klasy, interfejsy, kolekcje czy łączenie wzorców, staną się jasne i zrozumiałe. Tego wszystkiego będziesz się uczyć, rozwiązując łamigłówki, wykonując praktyczne ćwiczenia, pisząc aplikacje - i wybuchając głośnym śmiechem! W książce między innymi: solidne podstawy korzystania z wzorców projektowych dlaczego wzorce projektowe są idealne do programowania zorientowanego obiektowo hermetyzacja, adaptacja, zarządzanie kolekcjami, kontrola dostępu i wiele innych wzorców praktyczne wdrażanie wzorców projektowych mnóstwo radości z tworzenia pięknego kodu obiektowego Witaj w Obiektowie - i ciesz się każdą nową klasą!
Eric Freeman, Elisabeth Robson
Nie warto wyważać otwartych drzwi ani ponownie wynajdywać koła. Sprytniej jest skorzystać ze sprawdzonych rozwiązań, które ktoś już opracował i wdrożył. Dlatego właśnie mądrzy programiści lubią wzorce projektowe: to jest ich sekretny sposób, aby nie tracić sił na nudne drobiazgi, tylko zająć się trudniejszymi, ważniejszymi i ciekawszymi zadaniami. Nic dziwnego, że powstało naprawdę bardzo dużo wzorców projektowych. Przegląd ich wszystkich byłby niemożliwy. Które z nich więc są najpotrzebniejsze w programowaniu obiektowym i kiedy dokładnie z nich skorzystać? Odpowiedź na to fundamentalne pytanie znajdziesz w tej książce ? drugim wydaniu świetnego podręcznika dla przyszłych mistrzów kodu. Zostało ono, podobnie jak inne pozycje z serii Rusz głową!, przygotowane zgodnie z najnowszymi odkryciami nauk poznawczych, teorii uczenia się i neurofizjologii. I właśnie dzięki temu zaangażujesz swój mózg, wykorzystasz wiele zmysłów i niepostrzeżenie poznasz najprzydatniejsze i najciekawsze wzorce projektowe stosowane w programowaniu zorientowanym obiektowo. Tak złożone tematy, jak klasy, interfejsy, kolekcje czy łączenie wzorców, staną się jasne i zrozumiałe. Tego wszystkiego będziesz się uczyć, rozwiązując łamigłówki, wykonując praktyczne ćwiczenia, pisząc aplikacje - i wybuchając głośnym śmiechem! W książce między innymi: solidne podstawy korzystania z wzorców projektowych dlaczego wzorce projektowe są idealne do programowania zorientowanego obiektowo hermetyzacja, adaptacja, zarządzanie kolekcjami, kontrola dostępu i wiele innych wzorców praktyczne wdrażanie wzorców projektowych mnóstwo radości z tworzenia pięknego kodu obiektowego Witaj w Obiektowie - i ciesz się każdą nową klasą!
Valliappa Lakshmanan, Sara Robinson, Michael Munn
Rozwiązania typowych problemów dotyczących przygotowania danych, konstruowania modeli i MLOps Wzorce projektowe opisane w tej książce obejmują najlepsze praktyki i rozwiązania powtarzalnych problemów w uczeniu maszynowym. Autorzy, troje inżynierów z firmy Google, skatalogowali sprawdzone metody, aby pomóc badaczom danych sprostać typowym problemom występującym w całym procesie uczenia maszynowego. Te wzorce projektowe kodyfikują doświadczenie setek ekspertów w prostych, przystępnych radach. W tej książce znajdziesz szczegółowe wyjaśnienia 30 wzorców reprezentacji danych i problemów, operacjonalizacji, powtarzalności, odtwarzalności, elastyczności, objaśnialności i bezstronności. Każdy wzorzec obejmuje opis problemu, różnorodne potencjalne rozwiązania oraz rekomendacje dotyczące wyboru najlepszej techniki w danej sytuacji. Nauczysz się: • Rozpoznawać i minimalizować typowe problemy występujące podczas uczenia, oceniania oraz wdrażania modeli uczenia maszynowego • Przedstawiać dane dla różnych typów modeli uczenia maszynowego, w postaci reprezentacji wektorowych, krzyżowania cech i nie tylko • Wybierać prawidłowy typ modelu dla konkretnych problemów • Konstruować wydajną pętlę uczenia z zastosowaniem punktów kontrolnych, strategii rozkładu i strojenia hiperparametrów • Wdrażać skalowalne systemy uczenia maszynowego, które można uczyć ponownie i aktualizować, aby odzwierciedlać nowe dane • Interpretować predykcje modeli dla interesariuszy i zapewniać, że modele traktują użytkowników bezstronnie • Zwiększać dokładność, odtwarzalność i elastyczność „Dzięki wspaniałym, różnorodnym przykładom ta książka jest obowiązkową lekturą dla badaczy danych i inżynierów uczenia maszynowego dążących do zrozumienia sprawdzonych rozwiązań złożonych problemów uczenia maszynowego.” —David Kanter Dyrektor wykonawczy, ML Commons „Jeśli chcesz oszczędzić sobie siniaków na drodze do konstruowania rozwiązań uczenia maszynowego, Lak, Sara i Michael to osoby, na które możesz liczyć.” —Will Grannis Dyrektor zarządzający, Cloud CTO Office, Google Valliappa (Lak) Lakshmanan jest globalnym kierownikiem działu analizy danych i rozwiązań sztucznej inteligencji w Google Cloud. Sara Robinson jest rzeczniczką deweloperów w zespole Google Cloud, skupiającą się na uczeniu maszynowym. Michael Munn jest inżynierem rozwiązań uczenia maszynowego w Google, gdzie pomaga klientom projektować, implementować i wdrażać modele uczenia maszynowego.
Arnon Rotem-Gal-Oz
Najlepsze podejście do wytwarzania oprogramowania! SOA (ang. Service Oriented Architecture) to gorący skrót ostatnich lat. Koncepcja oferowania niezależnych usług do określonych zadań zdobyła sobie ogromną popularność. Takie podejście pozwala na tworzenie elastycznych systemów informatycznych, które są znacznie łatwiejsze w utrzymaniu, zaprojektowaniu i wykonaniu od tradycyjnych rozwiązań. Ponadto udostępnienie pojedynczych serwisów innym projektantom może przynieść dodatkowe dochody lub zwiększyć atrakcyjność Twojej aplikacji. Prawda, że brzmi zachęcająco? Po przeczytaniu tej książki nie oprzesz się wrażeniu, że jest to jedyna słuszna droga w zakresie wytwarzania oprogramowania. W trakcie lektury dowiesz się, jak zapewnić najwyższą jakość, dostępność i przepustowość tworzonych usług. Poznasz kolejne wzorce, które pozwolą Ci zaprojektować przejrzysty i bezpieczny system. Integracja usług, wymiana danych między serwisami, tworzenie klienta usług to tylko niektóre z poruszanych zagadnień. Osobny rozdział został poświęcony antywzorcom - to obowiązkowy punkt lektury, bo przecież musisz wiedzieć, jak tego nie robić! Sprawdź tę książkę, to kapitalna pozycja dla każdego projektanta i programisty chcącego tworzyć nowoczesne systemy informatyczne. Dowiedz się: jak stworzyć niezawodną i wydajną usługę co osiągniesz dzięki stosowaniu podejścia SOA jak wymieniać dane pomiędzy różnymi usługami jak złożyć wszystkie usługi w jeden system Lektura obowiązkowa każdego projektanta!
Олексій Васильєв
Книга присвячена мові Java, яка на сьогодні є однією з найпопулярніших мов програмування. Це професійна мова, яка дозволяє створювати складні та ефективні програми. У книзі розглядаються всі основні теми, котрі формують парадигму мови програмування Java. Серед них, зокрема, базові прийоми створення програм, основні оператори та типи даних, керуючі інструкції, класи та об2019єкти, спадкування, перевантаження та переозначення методів, інтерфейси (в тому числі функціональні), лямбда-вирази, обробка помилок, створення потоків, узагальнені типи, робота з файлами, методи створення програм із графічним інтерфейсом. Теоретичний матеріал поданий у простій і зрозумілій формі та пояснюється на прикладах. Книга буде корисною для всіх, хто вивчає мову програмування Java.
Jonathan Peppers
Xamarin is a leading cross-platform application development tool used by top companies such as Coca-Cola, Honeywell, and Alaska Airlines to build apps. Version 4 features significant updates to the platform including the release of Xamarin.Forms 2.0 and improvements have been made to the iOS and Android designers. Xamarin was acquired by Microsoft so it is now a part of the Visual Studio family.This book will show you how to build applications for iOS, Android, and Windows. You will be walked through the process of creating an application that comes complete with a back-end web service and native features such as GPS location, camera, push notifications, and other core features. Additionally, you’ll learn how to use external libraries with Xamarin and Xamarin.Forms to create user interfaces. This book also provides instructions for Visual Studio and Windows. This edition has been updated with new screenshots and detailed steps to provide you with a holistic overview of the new features in Xamarin 4.
Xamarin Blueprints. Leverage the power of Xamarin to create stunning cross-platform and native apps
Michael Williams
Do you want to create powerful, efficient, and independent apps from scratch that will leverage the Xamarin framework and code with C#? Well, look no further; you’ve come to the right place!This is a learn-as-you-build practical guide to building eight full-fledged applications using Xamarin.Forms, Xamarin Android, and Xamarin iOS.Each chapter includes a project, takes you through the process of building applications (such as a gallery Application, a text-to-speech service app, a GPS locator app, and a stock market app), and will show you how to deploy the application’s source code to a Google Cloud Source Repository. Other practical projects include a chat and a media-editing app, as well as other examples fit to adorn any developer’s utility belt. In the course of building applications, this book will teach you how to design and prototype professional-grade applications implementing performance and security considerations.