Programming techniques

1
Ebook

50 Kubernetes Concepts Every DevOps Engineer Should Know. Your go-to guide for making production-level decisions on how and why to implement Kubernetes

Michael Levan

Kubernetes is a trending topic among engineers, CTOs, CIOs, and other technically sound professionals. Due to its proliferation and importance for all cloud technologies, DevOps engineers nowadays need a solid grasp of key Kubernetes concepts to help their organization thrive.This book equips you with all the requisite information about how Kubernetes works and how to use it for the best results. You’ll learn everything from why cloud native is important to implementing Kubernetes clusters to deploying applications in production. This book takes you on a learning journey, starting from what cloud native is and how to get started with Kubernetes in the cloud, on-premises, and PaaS environments such as OpenShift. Next, you’ll learn about deploying applications in many ways, including Deployment specs, Ingress Specs, and StatefulSet specs. Finally, you’ll be comfortable working with Kubernetes monitoring, observability, and security. Each chapter of 50 Kubernetes Concepts Every DevOps Engineer Should Know is built upon the previous chapter, ensuring that you develop practical skills as you work through the code examples in GitHub, allowing you to follow along while giving you practical knowledge.By the end of this book, you’ll be able to implement Kubernetes in any environment, whether it’s an existing environment, a greenfield environment, or your very own lab running in the cloud or your home.

2
Ebook

A Blueprint for Production-Ready Web Applications. Leverage industry best practices to create complete web apps with Python, TypeScript, and AWS

Dr. Philip Jones

A Blueprint for Production-Ready Web Applications will help you expand upon your coding knowledge and teach you how to create a complete web application. Unlike other guides that focus solely on a singular technology or process, this book shows you how to combine different technologies and processes as needed to meet industry standards.You’ll begin by learning how to set up your development environment, and use Quart and React to create the backend and frontend, respectively. This book then helps you get to grips with managing and validating accounts, structuring relational tables, and creating forms to manage data. As you progress through the chapters, you’ll gain a comprehensive understanding of web application development by creating a to-do app, which can be used as a base for your future projects. Finally, you’ll find out how to deploy and monitor your application, along with discovering advanced concepts such as managing database migrations and adding multifactor authentication.By the end of this web development book, you’ll be able to apply the lessons and industry best practices that you’ve learned to both your personal and work projects, allowing you to further develop your coding portfolio.

3
Ebook

A Developer's Guide to Cloud Apps Using Microsoft Azure. Migrate and modernize your cloud-native applications with containers on Azure using real-world case studies

Hamida Rebai Trabelsi, Marc-Andre Laniel

Companies face several challenges during cloud adoption, with developers and architects needing to migrate legacy applications and build cloud-oriented applications using Azure-based technologies in different environments. A Developer’s Guide to Cloud Apps Using Microsoft Azure helps you learn how to migrate old apps to Azure using the Cloud Adoption Framework and presents use cases, as well as build market-ready secure and reliable applications.The book begins by introducing you to the benefits of moving legacy apps to the cloud and modernizing existing ones using a set of new technologies and approaches. You’ll then learn how to use technologies and patterns to build cloud-oriented applications. This app development book takes you on a journey through three major services in Azure, namely Azure Container Registry, Azure Container Instances, and Azure Kubernetes Service, which will help you build and deploy an application based on microservices. Finally, you’ll be able to implement continuous integration and deployment in Azure to fully automate the software delivery process, including the build and release processes.By the end of this book, you’ll be able to perform application migration assessment and planning, select the right Azure services, and create and implement a new cloud-oriented application using Azure containers and orchestrators.

4
Ebook

Adaptywny kod. Zwinne programowanie, wzorce projektowe i SOLID-ne zasady. Wydanie II

Gary McLean Hall

Tworzenie oprogramowania nie może być procesem powolnym. Dziś zespoły projektowe muszą cechować się elastycznością i dynamiką działania, aby odnieść sukces. Wymagania stawiane kodowi mogą wielokrotnie się zmieniać podczas projektu. Oznacza to, że wprowadzanie zmian do kodu powinno być proste i możliwie mało pracochłonne. Deweloperzy, którzy wdrożą zasady programowania zwinnego i będą przestrzegać związanych z nimi dobrych praktyk, będą w stanie sprostać tym wymaganiom. Niniejsza książka jest przeznaczona dla średnio zaawansowanych programistów, którzy dobrze opanowali tworzenie kodu zorientowanego obiektowo i chcą przyswoić sobie najlepsze praktyki programistyczne. Książka stanowi pomost między teorią a praktyką, ułatwiający wdrożenie w codziennej pracy wzorców projektowych, zasad SOLID, testów jednostkowych czy refaktoringu. Wyjaśniono tu stosowanie zawiłych reguł, takich jak „otwarte – zamknięte”, zasad podstawienia Liskova, metod wstrzykiwania zależności czy zwiększania adaptywności kodu za pomocą interfejsów. Przedstawiono również pewne antywzorce projektowe wraz ze wskazówkami, w jaki sposób można ich uniknąć i zapewnić potrzebną funkcjonalność bez utraty elastyczności kodu. Najważniejsze zagadnienia: metodologie Scrum i kanban, zależności i warstwy architektury kodu, testy i refaktoring, odwracanie zależności, wiązanie i spójność kodu. Gary McLean Hall jest programistą i architektem oprogramowania. Jest cenionym konsultantem, który specjalizuje się w dobrych wzorcach i praktykach programistycznych. Pracował w wielu zespołach ukierunkowanych na tworzenie adaptywnego kodu w takich firmach, jak Eidos, Xerox, Nephila Capital czy The LateRooms Group. W swojej pracy zawsze szukał złotego środka pomiędzy tworzeniem funkcjonalnego produktu i wysokiej jakości jego kodu źródłowego. Kod adaptywny: solidny, elastyczny i łatwy w utrzymaniu!

5
Ebook

Adobe Edge Quickstart Guide. Quickly produce engaging motion and rich interactivity with Adobe Edge Preview 4 and above with this book and

Joseph Labrecque

With the advent of HTML5 and CSS3, web designers can now create sophisticated animations without the need of additional plugins such as Flash. However, there hasn't been an easy way for creating animations with web standards until now. This book enables even those with little knowledge of HTML or programming web content to freely create a variety of rich compositions involving motion and interactivity.Learning Adobe Edge will quickly get you up and running with this professional authoring software to create highly engaging content which targets HTML5, CSS, and JavaScript. Content created in Adobe Edge does not rely on a plugin ñ so it can be run within any standard browserñ even on mobile.Learning Adobe Edge begins with an overview of the shifting web landscape and the Edge application. We then move on through the variety of panels and toolsets available, and explore the many options we have when creating motion and interactivity using Edge.The book presents the reasoning behind engaging, standards-based web content and how Edge fills the need for professional tooling in this area. In the book we'll examine content creation and how to achieve fluid animation and advanced transitioning through the Edge timeline. Sprinkled throughout the book are tips and references for those coming to Edge from a background in Flash Professional. Whether you are coming to Edge from Flash Professional or are totally new to motion graphics on the web, Adobe Edge Quickstart Guide provides a solid foundation of motion and interactivity concepts and techniques along with a set of demo assets to build upon.

6
Ebook

Agile Development. Filozofia programowania zwinnego

James Shore, Shane Warden

Zbiór praktycznych wskazówek dla producentów oprogramowania Jak wdrożyć metodologię programowania zwinnego? W jaki sposób zaangażować klientów w projekt? Jak kontrolować jakość produktów? Programowanie zwinne (Agile Development) to obecnie jedna z najpopularniejszych metodologii zarządzania projektami programistycznymi. Metodyka Agile jest szczególnie użyteczna w małych zespołach programistycznych, w których z racji ułatwionej komunikacji nie ma potrzeby tworzenia rozbudowanej dokumentacji. Programowanie zwinne opiera się na iteracyjnej realizacji kolejnych etapów projektu. Kluczem do sukcesu w tej metodzie jest efektywna współpraca między członkami zespołu projektowego. Książka "Agile Development. Filozofia programowania zwinnego" to przewodnik po programowaniu ekstremalnym, oznaczanym zwykle skrótem XP, które jest jedną z technik wchodzących w skład tej metodyki. Czytając ją, dowiesz się, jak wdrażać metodologię Agile w firmie, na czym polega programowanie ekstremalne i jaką rolę w procesie pełnią poszczególni członkowie grupy projektowej. Nauczysz się budować zespół i określać zakresy zadań osób biorących udział w pracach, planować harmogram udostępniania kolejnych wersji produktu oraz kierować procesem jego tworzenia. Poznasz metody testowania programu i usuwania z niego błędów, zasady pisania dokumentacji oraz reguły prowadzenia spotkań roboczych z klientami. Wdrażanie programowania zwinnego Techniki programowania ekstremalnego Członkowie zespołu XP Zarządzanie zespołem Angażowanie klienta w proces wytwórczy Tworzenie raportów Udostępnianie kolejnych wersji systemu Standardy pisania kodu Testowanie i usuwanie błędów Optymalizacja wydajności programu Od filozofii do mistrzostwa w zwinnym programowaniu!

7
Ebook

Agile Model-Based Systems Engineering Cookbook. Improve system development by applying proven recipes for effective agile systems engineering - Second Edition

Dr. Bruce Powel Douglass, Dr. Christian von Holst

Agile MBSE can help organizations manage change while ensuring system correctness and meeting customers’ needs. But deployment challenges have changed since our first edition.The Agile Model-Based Systems Engineering Cookbook’s second edition focuses on workflows – or recipes – that will help MBSE practitioners and team leaders address practical situations that are part of deploying MBSE as part of an agile development process across the enterprise. In this 2nd edition, the Cameo MagicDraw Systems Modeler tool – the most popular tool for MBSE – is used in examples (models are downloadable by readers).Written by a world-renowned expert in MBSE, this book will take you through systems engineering workflows in the Cameo Systems Modeler SysML modeling tool and show you how they can be used with an agile and model-based approach. You’ll start with the key concepts of agile methods for systems engineering. Next, each recipe will take you through initiating a project, outlining stakeholder needs, defining and analyzing system requirements, specifying system architecture, performing model-based engineering trade studies, all the way to handling systems specifications off to downstream engineering.By the end of this MBSE book, you’ll learn how to implement systems engineering workflows and create systems engineering models.

8
Ebook

Agile Project Management with GreenHopper 6 Blueprints. Written by an Agile enthusiast, this comprehensive guide to GreenHopper will help you track and manage your projects in a way that achieves the best value for your team. Excellent reading for everybody from stakeholders to scrum masters

Jaibeer Malik

Agile methodologies like Scrum focus on customer values in an incremental way. Regular planning, tracking, reporting, and improving can become equally challenging from a project management perspective. GreenHopper is a tooling support for JIRA that offers easy adoption of agile practices through rich interfaces for effective team collaboration and project management.Agile Project Management with GreenHopper 6 Blueprints is a step-by-step guide that teaches you how to manage agile projects using the GreenHopper tooling system. With easy adoption using pre-sets for Scrum & Kanban, the rich interface focuses on the work at hand, increasing team productivity. Executing sprints, tracking sprints, and reporting on agile projects has never been so easy. The integration with different development environments helps teams to focus on collaboration, communication, and continuous improvement. This book covers agile project management concepts using GreenHopper.You will learn about backlog management for your agile team, how to create projects and boards for your agile team, and how to create new backlog items, prioritize items, estimate backlog items, create sprints, and update technical task status and report on the same.You will learn everything you need to know about managing an agile project using GreenHopper and how to achieve the best value for your team.

9
Ebook

Agile. Przewodnik po zwinnych metodykach programowania

Jennifer Greene, Andrew Stellman

Poznaj nowoczesne podejście do wytwarzania oprogramowania! W XXI wieku ogromnie wzrosło tempo rozwoju cyfrowych usług. Tradycyjne sposoby wytwarzania oprogramowania nie są już w stanie nadążyć za oczekiwaniami klientów. Dziś nikt nie będzie czekał, aż dopracujesz wszystkie zaplanowane funkcje i wypuścisz produkt na rynek. Konkurencja Cię wyprzedzi! Czy dasz się jej pokonać? Odpowiedzią na to pytanie jest słowo, które robi furorę w branży IT: Agile. Zwinne wytwarzanie oprogramowania to przyszłość — przekonaj się sam! W ramach Agile istnieje wiele podejść do wytwarzania oprogramowania. Jeżeli zastanawiasz się nad tym, które najlepiej zadziała w Twoim środowisku, trafiłeś na odpowiednią książkę. Znajdziesz w niej omówienie ścieżek takich jak Scrum, Lean, Kanban oraz XP (ang. eXtreme Programming), ale najpierw poczytasz trochę na temat tego, czym jest zwinność i do czego możesz ją wykorzystać. Poznasz zalety i zagrożenia związane z konkretnymi podejściami oraz obszary, w których każde z nich sprawdzi się najlepiej. Ta książka pozwoli Ci zmienić sposób pracy. Dzięki niej masz szansę stworzyć wyjątkowo produktywny zespół, którego nikt nie zatrzyma. Bądź zwinny! Poznaj znaczenie podstawowych wartości i zasad podejścia zwinnego Poznaj najważniejsze aspekty podejścia Scrum — zarządzanie projektem, samoorganizację i wspólne zobowiązanie Skoncentruj się na projektowaniu i architekturze oprogramowania za pomocą technik XP takich jak programowanie sterowane testami i programowanie w parach Wykorzystaj podejście Lean, aby zapewnić zespołowi potrzebne uprawnienia, wyeliminować marnotrawstwo i szybko dostarczać oprogramowanie Zobacz, jak techniki kanbanowe pomagają zarządzać przepływem i dostarczać dzięki temu oprogramowanie wysokiej jakości Wprowadzaj techniki i zasady podejścia zwinnego z pomocą coacha metodyk zwinnych Sprawdź, jak wykorzystać siłę zwinności!

10
Ebook

AI - podejście pragmatyczne

Noah Gift

Opanuj skuteczne, gotowe do użycia rozwiązania biznesowe dla sztucznej inteligencji i uczenia maszynowego AI podejście pragmatyczne pomaga rozwiązywać praktyczne problemy przy użyciu nowoczesnego uczenia maszynowego, sztucznej inteligencji i chmurowych narzędzi obliczeniowych. Noah Gift demistyfikuje wszelkie koncepcje i narzędzia potrzebne do osiągnięcia wyników nawet jeśli Czytelnik nie ma solidnego przygotowania z matematyki lub data science. Autor wyjaśnia skuteczne, gotowe do użycia rozwiązania udostępniane przez Amazon, Google i Microsoft oraz demonstruje sprawdzone techniki wykorzystujące ekosystem analizy danych oparty na języku Python. Proponowane podejścia i przykłady pomagają ukierunkować i uprościć każdy krok od wdrożenia po produkcję i budować rozwiązania o niezwykłych możliwościach skalowania. W miarę poznawania działania rozwiązań Machine Language (ML) będziesz uzyskiwać coraz bardziej intuicyjne zrozumienie tego, co można dzięki nim osiągnąć i jak zmaksymalizować ich wartość. Na tych podstawach autor krok po kroku prezentuje budowanie chmurowych aplikacji AI/ML do rozwiązywania realistycznych problemów w dziedzinie marketingu, zarządzania projektami, wyceniania produktów, nieruchomości i dużo więcej. Bez względu na to, czy jesteś profesjonalistą biznesowym, osobą decyzyjną, studentem czy programistą, eksperckie wskazówki autora i rozbudowane analizy przypadków przygotują cię do rozwiązywania problemów data science w niemal dowolnym środowisku. Uzyskaj i skonfiguruj wszystkie potrzebne narzędzia Szybko przejrzyj wszystkie funkcjonalności Pythona, których potrzebujesz do budowania aplikacji uczenia maszynowego Opanuj narzędzia AI i ML oraz cykl życia projektu Korzystaj z narzędzi analitycznych Pythona, takich jak IPython, Pandas, Numpy, Juypter Notebook i Sklearn Dołącz pragmatyczną pętlę zwrotną, która pozwoli nieustannie poprawiać wydajność naszych procedur i systemów Projektuj chmurowe rozwiązania AI oparte na Google Cloud Platform, uwzględniając usługi TPU, Colaboratory i Datalab Definiuj chmurowe przepływy pracy w Amazon Web Services, w tym wystąpienia punktowe, potoki kodu i inne Pracuj z API sztucznej inteligencji w Microsoft Azure Poznaj budowanie sześciu rzeczywistych aplikacji AI od początku do końca

11
Ebook

Algorytmy

Maciej Sysło

Książka zdobyła wyróżnienie w kategorii publikacji edukacyjnych w Konkursie na Najlepszą Polską Książkę Informatyczną 2017r. organizowanym przez Polskie Towarzystwo Informatyczne.     --- Przekonaj się, że algorytmy to nic trudnego! Naucz się tworzyć i zapisywać algorytmy Poznaj rozwiązania klasycznych problemów Odkryj praktyczne zastosowania algorytmiki Algorytm to opis w postaci skończonego ciągu jednoznacznie zdefiniowanych kroków, które należy wykonać, aby uzyskać rozwiązanie postawionego problemu lub osiągnięcie zamierzonego celu.To pojęcie kojarzy się głównie z naukami ścisłymi, takimi jak informatyka czy matematyka, ale algorytmy jako instrukcje lub przepisy odnajdziesz dosłownie wszędzie: to one sterują pracą automatów do kawy oraz domowych pralek, to nimi kierujesz się, pisząc wiadomości tekstowe, wypłacając gotówkę z bankomatu, a nawet wiążąc buty, wreszcie to one umożliwiają Ci ugotowanie potraw, które mają pożądany i powtarzalny smak. Aby algorytmy były skuteczne, zwłaszcza te wykonywane przez komputer, muszą być jednak właściwie skonstruowane i zrealizowane, to zaś wymaga odpowiedniej wiedzy. Wiedzę tę zdobędziesz dzięki doskonałej książce Macieja M. Sysły pt. Algorytmy. Używając prostego języka i różnorodnych przykładów, jej autor przedstawia podstawowe pojęcia algorytmiki na tle historycznym, różne sposoby zapisu algorytmów oraz przykłady ich praktycznych zastosowań. Niezależnie od tego, czy planujesz karierę informatyka, czy tylko lubisz rozwiązywać zagadki logiczne, umiejętności porządkowania zbiorów, przeprowadzania obliczeń matematycznych, a ogólniej – myślenia algorytmicznego i komputacyjnego z pewnością bardzo Ci się przydadzą, a praktyczne zadania i problemy do rozwiązania skutecznie pomogą Ci utrwalić nabyte wiadomości oraz ułatwią zmagania z przyszłymi wyzwaniami. W książce Algorytmy znajdziesz: Sposoby przedstawiania problemów i algorytmów Algorytmy liniowe i z rozgałęzieniami Algorytmy iteracyjne i rekurencyjne Metody porządkowania i analizy danych Przykłady klasycznych algorytmów Analizę poprawności i złożoności prezentowanych algorytmów Odkryj piękno algorytmiki i naucz się znajdować proste rozwiązania złożonych problemów Świetnym uzupełnieniem Algorytmów jest druga książka tego samego autora pt. Piramidy, szyszki i inne konstrukcje algorytmiczne, w której autor skoncentrował się na życiowych przykładach zastosowania algorytmów pochodzących wprost z otaczającego nas świata.

12
Ebook

Algorytmy. Ćwiczenia

Bogdan Buczek

Poznaj algorytmy, a profesjonalne programowanie nie będzie miało przed Tobą tajemnic Jak zaprojektować rozwiązanie problemu w formie algorytmu? Jak stosować instrukcje iteracyjne? Jak przedstawić algorytm w postaci schematu blokowego? W czasach ery informatycznej coraz większa liczba osób zainteresowana jest zdobyciem umiejętności programowania. Jednakże umiejętność ta wymaga zarówno rozległej i rzetelnej wiedzy, jak i doświadczenia. Podstawą owej wiedzy jest dobra znajomość algorytmów, która umożliwia przeprowadzanie kolejnych etapów programowania. Pozwala ona na przechodzenie od analizy i zdefiniowania problemu, poprzez testowanie i usuwanie błędów, aż do opracowania dokumentacji. Książka, którą trzymasz w rękach, pomoże Ci zrozumieć każdą z tych faz i nauczy Cię pisać własny kod. "Algorytmy. Ćwiczenia" to niezbędny elementarz dla każdego przyszłego programisty. Dzięki temu podręcznikowi poznasz różne sposoby opisu algorytmów oraz ich klasyfikację. Dowiesz się, jaki wpływ ma zastosowanie określonej metody obliczeniowej na dokładność wyników końcowych, a także, na czym polega przetwarzanie danych w pętli programowej. Wykonując kolejne ćwiczenia, opatrzone szczegółowymi komentarzami i wskazówkami, nauczysz się pisać algorytmy, sporządzać wykresy i schematy blokowe oraz tworzyć kod programu. Książka jest doskonałym podręcznikiem dla studentów informatyki, jednak dzięki temu, że wszystkie informacje przedstawiono tu w jasny i klarowny sposób, może z niej korzystać każdy, kto chce rozpocząć samodzielne programowanie. Sposoby opisu algorytmów Klasyfikacja algorytmów Algorytmy sekwencyjne Kodowanie algorytmów Algorytmy z rozgałęzieniami Przetwarzanie danych w pętli programowej Algorytmy iteracyjne Funkcja silnia Instrukcje iteracyjne w Turbo Pascal i Visual Basic Algorytmy rekurencyjne Schemat Hornera Pozycyjne systemy liczbowe Algorytmy sortowania danych Poznaj algorytmy i zacznij myśleć jak programista!

13
Ebook

Algorytmy, struktury danych i techniki programowania. Wydanie IV

Piotr Wróblewski

Podstawowy podręcznik do nauki algorytmiki Przystępne wprowadzenie do algorytmiki Bez zbędnej teorii Gotowe rozwiązania w C++ Oto kolejne wydanie sprawdzonej i cenionej przez programistów, wykładowców oraz studentów książki, będącej podstawowym podręcznikiem do nauki algorytmiki. W pierwszej kolejności autor zapozna Cię z elementarnymi zagadnieniami z tej dziedziny oraz wyjaśni, skąd bierze się tak szybki postęp w tej dyscyplinie nauki. Podczas dalszej lektury poznasz takie pojęcia, jak rekurencja, analiza złożoności oraz algorytmy sortowania i przeszukiwania czy algorytmy numeryczne. Szybko opanujesz metody optymalizacji algorytmów, sposoby kodowania i kompresji danych oraz elementy algorytmiki grafów. Przedstawione w książce algorytmy zilustrowane zostały przykładowymi kodami źródłowymi w C++ , ułatwiającymi zrozumienie poznawanych zagadnień. Przejrzysta forma, praktyczne przykłady oraz przystępny język sprawiają, że książka ta pozwala szybko, a także bezboleśnie opanować zarówno algorytmy, jak i struktury danych oraz najlepsze techniki programowania. Historia algorytmiki Wykorzystanie rekurencji Analiza złożoności algorytmów Algorytmy sortowania Algorytmy przeszukiwania Przeszukiwanie tekstów Struktury danych i ich implementacja Optymalizacja algorytmów Zaawansowane techniki programowania Wykorzystanie grafów Wprowadzenie do sztucznej inteligencji Kodowanie i kompresja danych Algorytmy numeryczne Poradnik kompilacji i uruchamiania programów (GCC, DevC++, Microsoft Visual C++ Express Edition). Szybko i bezboleśnie opanuj wszystkie zagadnienia algorytmiki!

14
Ebook

Algorytmy, struktury danych i techniki programowania. Wydanie V

Piotr Wróblewski

Wprowadzenie do algorytmiki Tylko niezbędna teoria Gotowe rozwiązania w C++ Oto kolejne wydanie sprawdzonej, cenionej przez programistów, wykładowców oraz studentów książki, będącej podstawowym podręcznikiem do nauki algorytmiki. Jej autor zapozna Cię z elementarnymi zagadnieniami z tej dziedziny oraz wyjaśni, skąd bierze się tak szybki postęp w tej dyscyplinie nauki. Poznasz podstawowe struktury danych używane do rozwiązywania problemów algorytmicznych oraz nauczysz się je projektować w C++ z użyciem technik obiektowych i klas parametryzowanych. Podczas dalszej lektury poznasz takie pojęcia, jak rekurencja, analiza złożoności oraz algorytmy sortowania i przeszukiwania czy algorytmy numeryczne. Opanujesz metody optymalizacji algorytmów, sposoby kodowania i kompresji danych oraz elementy algorytmiki grafów. Przedstawione tu algorytmy są zilustrowane gotowymi kodami źródłowymi w C++ , co ułatwia zrozumienie poznawanych zagadnień. Przejrzysta forma, praktyczne przykłady oraz przystępny język sprawiają, że książka pozwala szybko i bez trudu opanować zarówno algorytmy, jak i struktury danych oraz najlepsze techniki programowania. Historia algorytmiki Struktury danych i ich implementacja Wprowadzenie do bibliotek STL, czyli algorytmy i struktury danych dla „leniuchów” Analiza złożoności algorytmów Wykorzystanie rekurencji i optymalizacja algorytmów Algorytmy sortowania i przeszukiwania Przeszukiwanie tekstów Zaawansowane techniki programowania Wykorzystanie grafów Algorytmy numeryczne Wprowadzenie do sztucznej inteligencji Kodowanie i kompresja danych Błyskawiczny kurs C++ z uwzględnieniem programowania obiektowego Poradnik kompilacji i uruchamiania programów konsolowych oraz graficznych w darmowych środowiskach IDE (GCC/Dev-C++, Microsoft Visual C++ z pakietu Visual Studio). Szybko i bezboleśnie opanuj wszystkie zagadnienia algorytmiki!

15
Ebook

Algorytmy. Wydanie IV

Robert Sedgewick, Kevin Wayne

Nie odkrywaj koła na nowo — sprawdź gotowe rozwiązania! Jak oceniać wydajność algorytmów? Jak wydajnie sortować elementy? Jak kompresować dane? Algorytmy od zawsze porównywane były do przepisów kucharskich. Z celnością tego porównania trudno dyskutować, na pewno jednak przesolenie zupy ma zupełnie inne konsekwencje niż błędnie opracowany lub zaimplementowany algorytm. To właśnie algorytmy decydują o czasie wykonania skomplikowanych operacji przez programy komputerowe, a ich odpowiednia implementacja może niejednokrotnie decydować o sukcesie lub porażce projektu wartego fortunę. Dzięki tej książce masz szansę uniknąć typowych programistycznych błędów i porażek. Jej lektura zapozna Cię z najpopularniejszymi algorytmami, ich licznymi zaletami oraz słabymi stronami. Sprawdzisz, do czego można je zastosować, a w jakich miejscach lepiej zrezygnować z ich wykorzystania. Ponadto nauczysz się analizować działanie algorytmów, mierzyć ich wydajność oraz dobierać dane testowe. W książce zostały omówione klasyczne algorytmy sortowania, wyszukiwania, operacji na grafach oraz kompresji danych. Jej ogromnym atutem są przykładowe implementacje algorytmów w języku JAVA oraz to, że przedstawiony kod jest gotowy do natychmiastowego użycia! Pozycja ta jest obowiązkową lekturą dla każdego programisty, któremu zależy na najwyższej wydajności tworzonych rozwiązań. Podstawowe pojęcia Struktura programu w języku JAVA Instrukcje, typy danych, wyrażenia w języku JAVA Korzystanie z abstrakcyjnych typów danych Stosy, kolejki Analiza algorytmów Algorytmy sortowania i wyszukiwania Wykorzystanie grafów Znajdowanie najkrótszej ścieżki Operacja na łańcuchach znaków Algorytmy kompresji danych Nie trać czasu i energii — korzystaj ze sprawdzonych rozwiązań!

16
Ebook

Amazon Web Services w akcji. Wydanie II

Andreas Wittig, Michael Wittig

Platforma Amazon Web Services jest uważana za największą i najdojrzalszą chmurę obliczeniową. Oferuje ponad setkę gotowych usług, praktycznie niewyczerpywalne zasoby mocy obliczeniowej, nieograniczone bezpieczne magazynowanie oraz pierwszorzędne możliwości automatyzacji. Jest przy tym nieustannie unowocześniana i udostępnia coraz to nowsze możliwości. Pozwala na tworzenie i utrzymanie aplikacji w elastyczny i niezawodny sposób. Dla wielu organizacji decyzja o migracji infrastruktury informatycznej na platformę AWS okazała się strzałem w dziesiątkę. Aby z powodzeniem przeprowadzić taką transformację, konieczne jest uzyskanie wiedzy na temat platformy Amazon Web Services i zrozumienie związanych z nią koncepcji. To drugie, uaktualnione wydanie kompletnego wprowadzenia do wdrażania aplikacji w chmurze AWS. Dokładnie opisano w nim usługi dostarczające instancje obliczeniowe, przestrzeń na dane i zapewniające pracę w sieci. Wyjaśniono koncepcje niezbędne do uruchomienia aplikacji WWW na platformie AWS: równoważenie obciążenia, maszyny wirtualne, magazynowanie plików, systemy baz danych i buforowanie w pamięci. Przedstawiono też zagadnienia wysokiej dostępności, odporności na błędy oraz dynamicznego skalowania infrastruktury. Dużą zaletą książki jest omówienie zautomatyzowanego zarządzania infrastrukturą za pomocą usługi AWS CloudFormation. Sporo uwagi poświęcono także różnym aspektom bezpieczeństwa w chmurze. Najciekawsze zagadnienia: koncepcje związane z Amazon Web Services, w tym maszyny wirtualne i EC2 automatyzacja infrastruktury i wdrażanie oprogramowania na platformie AWS skalowalność i bezpieczeństwo infrastruktury w chmurze AWS najprzydatniejsze usługi AWS: S3, EBS, EFS, RDS i wiele innych wysoka dostępność i niezawodność infrastruktury tworzenie odpornych na błędy usług sieciowych Amazon Web Services: już dziś zaprojektuj system przyszłości! Bracia Andreas Wittig i Michael Wittig są inżynierami oprogramowania. Stosują podejście DevOps i specjalizują się we wdrażaniu rozwiązań opartych na chmurze AWS. Koncentrują się na zagadnieniach infrastruktury jako kodu, ciągłego wdrażania, przetwarzania bezserwerowego, zabezpieczeń i tworzenia produktów typu SaaS. Obaj zdobyli certyfikaty AWS Certified Solutions Architect - Professional i AWS Certified DevOps Engineer - Professional. Ich wspólną pasją jest dzielenie się wiedzą.

17
Ebook

Analiza biznesowa. Praktyczne modelowanie organizacji

Jarosław Żeliński

Zrozum, zanim zaproponujesz rozwiązanie Analiza biznesowa, przeprowadzana przez wykonawcę rozwiązań IT dla biznesu, nie polega na zwykłym spisaniu problemów zgłaszanych przez klienta. Zapis przebiegu spotkań, wypunktowanie najważniejszych wymagań stawianych przed oprogramowaniem i prezentacja ich klientowi w formie tabeli to jeszcze nie analiza biznesowa! Wykonawca oprogramowania otrzymuje w ten sposób jedynie wnioski dotyczące efektów wadliwego działania aktualnego systemu zarządzania, ale dalej nie ma pojęcia o przyczynach tego stanu rzeczy. Jak zatem może zaproponować zleceniodawcy lepsze rozwiązanie? Prawidłowo przeprowadzona analiza i modelowanie biznesowe opierają się na pewnych ściśle określonych zasadach i korzystają z przeznaczonych do tego celu notacji (języków). Na naszym rynku istnieje wiele podręczników szczegółowo opisujących teorię poszczególnych notacji: UML, BPMN, BMM, SysML itd. Ich autorzy skupiają się na definicji pojęć, słownictwie i powiązaniach występujących w poszczególnych metodach zapisu, a teorie uzupełniają prostymi przykładami. Autor tej książki postanowił podejść do tematu z całkiem innej strony wychodzi od faktycznych problemów, z jakimi spotkał się w swojej wieloletniej praktyce, i podaje przykłady ich poprawnego, analitycznego opisu z użyciem takiej notacji, która jest najwłaściwsza w danej sytuacji biznesowej. Dzięki temu masz szansę poznać i zrozumieć, kiedy, po co i jak stosować dany język analityczny.

18
Ebook

Analiza i projektowanie obiektowe. Rusz głową!

Brett D. McLaughlin, David West, Gary Pollice

Współczesne systemy informatyczne mają niewiele wspólnego z tymi sprzed kilkunastu lat. Są skomplikowane, nafaszerowane wieloma technologiami, bywa też, że mają (zbyt) wielu autorów. Jak zapanować nad tym wszystkim? Jak projektować systemy szybko oraz bezbłędnie? Czujesz się zagubiony? Nic się nie martw! Po prostu... Otwórz swój umysł! Teraz dzięki nowatorskim metodom nauczania możesz błyskawicznie opanować wszystkie elementy projektowania obiektowego. Charakterystyczna dla serii "Rusz głową!" cecha to wymieszana w odpowiednich proporcjach wiedza, humor oraz wszystko wyjaśniające grafiki. Informacje zawarte w książce obejmują pełny zakres tematyki związanej z analizą i projektowaniem obiektowym. Tylko kilkaset stron dzieli Cię od opanowania metod zbierania wymagań, tworzenia przypadków użycia czy też projektowania diagramów klas. A to tylko początek - sprawdź spis treści i przekonaj się, jak szeroki materiał zawiera ta książka. 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! Rozgryź to sam! Zasady i cele projektowania obiektowego Metody zbierania wymagań Przypadki użycia i ich analiza Graficzna prezentacja systemu i zasad jego działania - diagramy UML Wzorce projektowe - sprawy skomplikowane stają się proste, a proste jeszcze prostsze Projektowanie architektury systemu Testowanie Książka należy serii "Rusz głową!", która jest kontynuacją serii "Head First". Książki z tej serii zdobyły uznanie czytelników dzięki swemu unikalnemu i nowatorskiemu podejściu do przekazywania wiedzy. Sprawdź na półce, może znajdziesz obok inne książki z tej serii. Dzięki nim nawet najbardziej skomplikowane dziedziny wiedzy stają się przystępne, przyjazne i prostsze.

19
Ebook

AndEngine for Android Game Development Cookbook. AndEngine is a simple but powerful 2D game engine that's ideal for developers who want to create mobile games. This cookbook will get you up to speed with the latest features and techniques quickly and practically

Nicolas Gramlich, JAYME SCHROEDER, Brian Boyles

AndEngine is a broad 2D game engine which allows game developers, both experienced and inexperienced, to develop games for the Android platform with ease. Don't be fooled by the simplicity, though. As easy as it is to “pick up and go,” AndEngine includes enough functionality to bring any type of 2D game world to life.The AndEngine for Android Game Development Cookbook contains all of the necessary information and examples in order to build the games as you imagine them. The book's recipes will walk you through the various aspects of game design with AndEngine and provides detailed instructions on how to achieve some of the most desirable effects for your games.The AndEngine for Android Game Development Cookbook begins with detailed information on some of the more useful structuring techniques in game design and general aspects of resource management. Continuing on, the book will begin to discuss AndEngine entities, including sprites, text, meshes, and more. Everything from positioning, to modifiers, and even tips on improving entity functionality with raw OpenGL capabilities. From here on, everything from applying physics to your game, working with multi-touch events and gestures, game optimization, and even an overview of the various AndEngine extensions will be covered.The book has a widerange of recipes, from saving and loading game data, applying parallax backgrounds to create a seemingly 3D world, relying on touch events to zoom the game camera, taking screen-shots of the device's screen, and performance optimization using object pools. If physics-based games are more interesting to you, there's also a list of recipes ranging from controlling the world forces and calculating forces applied to bodies, creating destructible objects, and even creating rag-dolls.Pong styled games were fun 35 years ago, but it is time to take your game to the next level with the AndEngine for Android Game Development Cookbook.

20
Ebook

Android 6 Essentials. Design, build, and create your own applications using the full range of features available in Android 6

Yossi Elkrief

Android 6 is the latest and greatest version of the Android operating system, and comes packed with cutting edge new features for you to harness for the benefit of building better applications.This step-by-step guide will take you through the basics of the Android Marshmallow permissions model and beyond into other crucial areas such as the Audio,Video,Camera API and Android’s at work features. Learn how to create, deploy, and manage Android applications with Marshmallow’s API and the latest functionalities. The combination of instructions and real-world examples will make your application deployment and testing a breeze.

21
Ebook

Android Application Development Cookbook. Over 100 recipes to help you solve the most common problems faced by Android Developers today - Second Edition

Rick Boyer, Kyle Mew

The Android OS has the largest installation base of any operating system in the world; there has never been a better time to learn Android development to write your own applications, or to make your own contributions to the open source community!This “cookbook” will make it easy for you to jump to a topic of interest and get what you need to implement the feature in your own application. If you are new to Android and learn best by “doing,” then this book will provide many topics of interest. Starting with the basics of Android development, we move on to more advanced concepts, and we’ll guide you through common tasks developers struggle to solve. The first few chapters cover the basics including Activities, Layouts, Widgets, and the Menu. From there, we cover fragments and data storage (including SQLite), device sensors, the camera, and GPS. Then we move on more advanced topics such as graphics and animation (including OpenGL), multi-threading with AsyncTask, and Internet functionality with Volley. We’ll also demonstrate Google Maps and Google Cloud Messaging (also known as Push Notifications) using the Google API Library.Finally, we’ll take a look at several online services designed especially for Android development. Take your application big-time with full Internet web services without having to become a server admin by leveraging the power of Backend as a Service (BaaS) providers.

22
Ebook

Android Design Patterns and Best Practice. Create reliable, robust, and efficient Android apps with industry-standard design patterns

Kyle Mew

Are you an Android developer with some experience under your belt? Are you wondering how the experts create efficient and good-looking apps? Then your wait will end with this book! We will teach you about different Android development patterns that will enable you to write clean code and make your app stand out from the crowd. The book starts by introducing the Android development environment and exploring the support libraries. You will gradually explore the different design and layout patterns and get to know the best practices of how to use them together. Then you’ll then develop an application that will help you grasp activities, services, and broadcasts and their roles in Android development. Moving on, you will add user-detecting classes and APIs such as gesture detection, touch screen listeners, and sensors to your app. You will also learn to adapt your app to run on tablets and other devices and platforms, including Android Wear, auto, and TV. Finally, you will see how to connect your app to social media and explore deployment patterns as well as the best publishing and monetizing practices.The book will start by introducing the Android development environment and exploring the support libraries. You will gradually explore the different Design and layout patterns and learn the best practices on how to use them together. You will then develop an application that will help you grasp Activities, Services and Broadcasts and their roles in Android development. Moving on, you will add user detecting classes and APIs such as at gesture detection, touch screen listeners and sensors to our app. You will also learn to adapt your app to run on tablets and other devices and platforms, including Android Wear, Auto, and TV. Finally, you will learn to connect your app to social media and explore deployment patterns and best publishing and monetizing practices.

23
Ebook

Android Native Development Kit Cookbook. Create Android apps using Native C/C++ with the expert guidance contained in this cookbook. From basic routines to advanced multimedia development, it helps you harness the full power of Android NDK

Liu Feipeng

Building Android applications would usually mean that you spend all of your time working in Java. There are however times when this is not the most efficient or best method for the application being built. This is where Android NDK comes in. Android NDK allows the developer to write in Native C/C++, giving you the power to reuse code and libraries and also, in most cases, increase the speed and efficiency of your application.The Android Native Development Kit Cookbook will help you understand the development, building, and debugging of your native Android applications. We will discover and learn JNI programming and essential NDK APIs such as OpenGL ES, and the native application API. We will then explore the process of porting existing libraries and software to NDK. By the end of this book you will be able to build your own apps in NDK apps.Android Native Development Kit Cookbook begins with basic recipes that will help you in the building and debugging of native apps, and JNI programming. The recipes cover various topics of application development with Android NDK such as OpenGL programming and Multimedia programming. We will begin with a simple recipe, Hello NDK, before moving on to cover advanced topics with recipes on OpenGL ES that focus on 2D and 3D graphics, as well as recipes that discuss working with NDK and external APIs. If you are looking for ways to make your application available in Android and take measures to boost your application's performance, then this Cookbook is for you.

24
Ebook

Android NDK Game Development Cookbook. For C++ developers, this is the book that can swiftly propel you into the potentially profitable world of Android games. The 70+ step-by-step recipes using Android NDK will give you the wide-ranging knowledge you need

Sergey Kosarevsky, Viktor Latypov

Android NDK is used for multimedia applications which require direct access to a system's resources. Android NDK is also the key for portability, which in turn provides a reasonably comfortable development and debugging process using familiar tools such as GCC and Clang toolchains. If your wish to build Android games using this amazing framework, then this book is a must-have.This book provides you with a number of clear step-by-step recipes which will help you to start developing mobile games with Android NDK and boost your productivity debugging them on your computer. This book will also provide you with new ways of working as well as some useful tips and tricks that will demonstrably increase your development speed and efficiency.This book will take you through a number of easy-to-follow recipes that will help you to take advantage of the Android NDK as well as some popular C++ libraries. It presents Android application development in C++ and shows you how to create a complete gaming application. You will learn how to write portable multithreaded C++ code, use HTTP networking, play audio files, use OpenGL ES, to render high-quality text, and how to recognize user gestures on multi-touch devices. If you want to leverage your C++ skills in mobile development and add performance to your Android applications, then this is the book for you.