Inne - Programowanie
Gaurav Aroraa
The microservices architectural style promotes the development of complex applications as a suite of small services based on business capabilities. This book will help you identify the appropriate service boundaries within your business. We'll start by looking at what microservices are and their main characteristics. Moving forward, you will be introduced to real-life application scenarios; after assessing the current issues, we will begin the journey of transforming this application by splitting it into a suite of microservices using C# 7.0 with .NET Core 2.0. You will identify service boundaries, split the application into multiple microservices, and define service contracts. You will find out how to configure, deploy, and monitor microservices, and configure scaling to allow the application to quickly adapt to increased demand in the future.With an introduction to reactive microservices, you’ll strategically gain further value to keep your code base simple, focusing on what is more important rather than on messy asynchronous calls.
Mario-Leander Reimer
Java Enterprise Edition is one of the leading application programming platforms for enterprise Java development. With Java EE 8 finally released and the first application servers now available, it is time to take a closer look at how to develop modern and lightweight web services with the latest API additions and improvements.Building RESTful Web Services with Java EE 8 is a comprehensive guide that will show you how to develop state-of-the-art RESTful web services with the latest Java EE 8 APIs. You will begin with an overview of Java EE 8 and the latest API additions and improvements. You will then delve into the details of implementing synchronous RESTful web services and clients with JAX-RS. Next up, you will learn about the specifics of data binding and content marshalling using the JSON-B 1.0 and JSON-P 1.1 APIs. This book also guides you in leveraging the power of asynchronous APIs on the server and client side, and you will learn to use server-sent events (SSEs) for push communication. The final section covers advanced web service topics such as validation, JWT security, and diagnosability.By the end of this book, you will have implemented several working web services and have a thorough understanding of the Java EE 8 APIs required for lightweight web service development.
Richard Takashi Freeman
Over the last few years, there has been a massive shift from monolithic architecture to microservices, thanks to their small and independent deployments that allow increased flexibility and agile delivery. Traditionally, virtual machines and containers were the principal mediums for deploying microservices, but they involved a lot of operational effort, configuration, and maintenance. More recently, serverless computing has gained popularity due to its built-in autoscaling abilities, reduced operational costs, and increased productivity.Building Serverless Microservices in Python begins by introducing you to serverless microservice structures. You will then learn how to create your first serverless data API and test your microservice. Moving on, you'll delve into data management and work with serverless patterns. Finally, the book introduces you to the importance of securing microservices.By the end of the book, you will have gained the skills you need to combine microservices with serverless computing, making their deployment much easier thanks to the cloud provider managing the servers and capacity planning.
Ovais Mehboob Ahmed Khan
While writing an application, performance is paramount. Performance tuning for realworld applications often involves activities geared toward fnding bottlenecks; however, this cannot solve the dreaded problem of slower code. If you want to improve the speed of your code and optimize an application's performance, then this book is for you. C# 7 and .NET Core 2.0 High Performance begins with an introduction to the new features of what?explaining how they help in improving an application's performance. Learn to identify the bottlenecks in writing programs and highlight common performance pitfalls, and learn strategies to detect and resolve these issues early. You will explore multithreading and asynchronous programming with .NET Core and learn the importance and effcient use of data structures. This is followed with memory management techniques and design guidelines to increase an application’s performance. Gradually, the book will show you the importance of microservices architecture for building highly performant applications and implementing resiliency and security in .NET Core. After reading this book, you will learn how to structure and build scalable, optimized, and robust applications in C#7 and .NET.
Mark J. Price
If you want to build powerful cross-platform applications with C# 7 and .NET Core, then this book is for you.First, we’ll run you through the basics of C#, as well as object-oriented programming, before taking a quick tour through the latest features of C# 7 such as tuples, pattern matching, out variables, and so on.After quickly taking you through C# and how .NET works, we’ll dive into the .NET Standard 1.6 class libraries, covering topics such as performance, monitoring, debugging, serialization and encryption.The final section will demonstrate the major types of application that you can build and deploy cross-device and cross-platform. In this section, we’ll cover Universal Windows Platform (UWP) apps, web applications, mobile apps, and web services. Lastly, we’ll look at how you can package and deploy your applications so that they can be hosted on all of today’s most popular platforms, including Linux and Docker.By the end of the book, you’ll be armed with all the knowledge you need to build modern, cross-platform applications using C# and .NET Core.
Mark J. Price, Dustin Heffron, Efraim Kyriakidis
C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development, Third Edition, is a practical guide to creating powerful cross-platform applications with C# 7.1 and .NET Core 2.0. It gives readers of any experience level a solid foundation in C# and .NET. The first part of the book runs you through the basics of C#, as well as debugging functions and object-oriented programming, before taking a quick tour through the latest features of C# 7.1 such as default literals, tuples, inferred tuple names, pattern matching, out variables, and more.After quickly taking you through C# and how .NET works, this book dives into the .NET Standard 2.0 class libraries, covering topics such as packaging and deploying your own libraries, and using common libraries for working with collections, performance, monitoring, serialization, files, databases, and encryption. The final section of the book demonstrates the major types of application that you can build and deploy cross-device and cross-platform. In this section, you'll learn about websites, web applications, web services, Universal Windows Platform (UWP) apps, and mobile apps. By the end of the book, you'll be armed with all the knowledge you need to build modern, cross-platform applications using C# and .NET.
Ayobami Adewole
This book guides developers to create robust, production-ready C# 7 and .NET Core applications through the practice of test-driven development process. In C# and .NET Core Test-Driven Development, you will learn the different stages of the TDD life cycle, basics of TDD, best practices, and anti-patterns. It will teach you how to create an ASP.NET Core MVC sample application, write testable code with SOLID principles and set up a dependency injection for your sample application. Next, you will learn the xUnit testing framework and learn how to use its attributes and assertions. You’ll see how to create data-driven unit tests and mock dependencies in your code. You will understand the difference between running and debugging your tests on .NET Core on LINUX versus Windows and Visual Studio. As you move forward, you will be able to create a healthy continuous integration process for your sample application using GitHub, TeamCity, Cake, and Microsoft VSTS.By the end of this book, you will have learned how to write clean and robust code through the effective practice of TDD, set up CI build steps to test and build applications as well as how to package application for deployment on NuGet.
Wisnu Anggoro
C++ is a general-purpose programming language which has evolved over the years and is used to develop software for many different sectors. This book will be your companion as it takes you through implementing classic data structures and algorithms to help you get up and running as a confident C++ programmer.We begin with an introduction to C++ data structures and algorithms while also covering essential language constructs. Next, we will see how to store data using linked lists, arrays, stacks, and queues. Then, we will learn how to implement different sorting algorithms, such as quick sort and heap sort. Along with these, we will dive into searching algorithms such as linear search, binary search and more. Our next mission will be to attain high performance by implementing algorithms to string datatypes and implementing hash structures in algorithm design. We'll also analyze Brute Force algorithms, Greedy algorithms, and more.By the end of the book, you'll know how to build components that are easy to understand, debug, and use in different applications.
C++ Fundamentals. Hit the ground running with C++, the language that supports tech giants globally
Antonio Mallia, Francesco Zoffoli
C++ Fundamentals begins by introducing you to the C++ compilation model and syntax. You will then study data types, variable declaration, scope, and control flow statements. With the help of this book, you'll be able to compile fully working C++ code and understand how variables, references, and pointers can be used to manipulate the state of the program. Next, you will explore functions and classes — the features that C++ offers to organize a program — and use them to solve more complex problems. You will also understand common pitfalls and modern best practices, especially the ones that diverge from the C++98 guidelines.As you advance through the chapters, you'll study the advantages of generic programming and write your own templates to make generic algorithms that work with any type. This C++ book will guide you in fully exploiting standard containers and algorithms, understanding how to pick the appropriate one for each problem. By the end of this book, you will not only be able to write efficient code but also be equipped to improve the readability, performance, and maintainability of your programs.
C++ High Performance. Boost and optimize the performance of your C++17 code
Björn Andrist, Viktor Sehr
C++ is a highly portable language and can be used to write both large-scale applications and performance-critical code. It has evolved over the last few years to become a modern and expressive language. This book will guide you through optimizing the performance of your C++ apps by allowing them to run faster and consume fewer resources on the device they're running on without compromising the readability of your code base.The book begins by helping you measure and identify bottlenecks in a C++ code base. It then moves on by teaching you how to use modern C++ constructs and techniques. You'll see how this affects the way you write code. Next, you'll see the importance of data structure optimization and memory management, and how it can be used efficiently with respect to CPU caches. After that, you'll see how STL algorithm and composable Range V3 should be used to both achieve faster execution and more readable code, followed by how to use STL containers and how to write your own specialized iterators.Moving on, you’ll get hands-on experience in making use of modern C++ metaprogramming and reflection to reduce boilerplate code as well as in working with proxy objects to perform optimizations under the hood. After that, you’ll learn concurrent programming and understand lock-free data structures. The book ends with an overview of parallel algorithms using STL execution policies, Boost Compute, and OpenCL to utilize both the CPU and the GPU.
C#. Zadania z programowania z przykładowymi rozwiązaniami. Wydanie II
Mirosław J. Kubiak
C# - idealny pośrednik między Tobą a komputerem! Wśród wielu obiektowych języków programowania C# zajmuje miejsce szczególne. Ma przejrzystą strukturę, jasne zasady i jest wciąż rozwijany. Nie znajdziesz wygodniejszego narzędzia programistycznego dla platformy .NET. C# sprawdza się w najróżniejszych projektach, a jego zalety sprawiają, że jest to język niezwykle popularny. Jeśli znasz podstawy tego języka, ale nie czujesz się w nim zbyt pewnie i nie zawsze umiesz przewidzieć, jak zachowa się Twój program, czas na profesjonalne szkolenie! Zadania z tego zbioru pomogą Ci opanować bardziej zaawansowane zagadnienia, a także zrozumieć, jak to wszystko działa. W zaktualizowanym i rozszerzonym wydaniu cenionej książki Mirosława Kubiaka znajdziesz informacje, zalecenia i konkretne ćwiczenia programistyczne z różnych obszarów. Nauczysz się efektywnie i poprawnie stosować instrukcje sterujące, używać tablic i tworzyć kolekcje do przechowywania swoich obiektów. Odkryjesz, do czego służą klasy, pola, metody oraz dlaczego warto używać rekurencji. Sprawdzisz, do czego przydaje się dziedziczenie, i popracujesz na plikach tekstowych. Po ukończeniu wszystkich zadań ze zbioru będziesz mógł już swobodnie programować w C#! Jak język C# komunikuje się z użytkownikiem? Instrukcje sterujące przebiegiem programu (wyboru oraz iteracyjne) Tablice i kolekcje Elementy programowania obiektowego Pliki tekstowe i pliki o dostępie swobodnym Wprowadzenie do współbieżności Programowanie w C# - szybkie, bezpieczne, eleganckie!
Certyfikowany inżynier wymagań. Na podstawie IREB CPRE. Poziom podstawowy
Radosław Grębski, Joanna Kalabińska
Książka "Certyfikowany inżynier wymagań. Na podstawie IREB CPRE. Poziom podstawowy" Joanny Kalanińskiej i Radosława Grębskiego zdobyła II Nagrodę w konkursie na Najlepszą Polską Książkę Informatyczną 2024r. organizowanym przez Polskie Towarzystwo Informatyczne. Teoria i praktyka Zasady inżynierii wymagań Pozyskiwanie i dokumentowanie wymagań Zarządzanie wymaganiami Narzędzia wspierające Poznaj standardy i uzyskaj efekty! Czym jest inżynieria wymagań? To systematyczne podejście do pozyskiwania i dokumentowania wymagań, a także zarządzania nimi. Polega na zrozumieniu potrzeb i oczekiwań interesariuszy, a następnie opisaniu, za pomocą wymagań, systemu, który je spełnia. Inżynieria wymagań pomaga zrozumieć, co dokładnie ma być zrealizowane, eliminuje bowiem niejasności i sprzeczności, a ponadto sprzyja efektywnej komunikacji między zespołem projektowym i pozostałymi interesariuszami. W praktyce dziedzina ta łączy wiedzę techniczną z umiejętnościami społecznymi, ponieważ odpowiada na pytanie nie tylko o to, co należy stworzyć, ale też dla kogo i w jakim celu. By prawidłowo przeprowadzić procesy związane z inżynierią wymagań, trzeba poznać rządzące nią zasady i standardy, jak również nauczyć się je właściwie stosować. Definiuje je IREB(R) ― międzynarodowa organizacja non profit skupiająca ekspertów związanych z inżynierią wymagań. Jeśli chcesz poznać standardy, zasady i dobre praktyki, którymi kierują się specjaliści w tej dziedzinie, i przygotować się do podstawowego egzaminu certyfikacyjnego ― to zdecydowanie książka dla Ciebie.
Walery Susłow, Adam Słowik, Michał Statkiewicz
Poznaj teoretyczne podstawy informatyki Naucz się rozwiązywać praktyczne problemy z wykorzystaniem metod informatycznych Rozpocznij karierę profesjonalnego programisty Informatyka to niezwykle dynamicznie rozwijająca się dziedzina wiedzy. Komputery otaczają nas ze wszystkich stron: sterują pracą sprzętów gospodarstwa domowego, pośredniczą w komunikacji, a nawet umożliwiają eksplorację przestrzeni kosmicznej. Dzisiejszy świat trudno już właściwie wyobrazić sobie bez maszyn cyfrowych i kontrolującego je oprogramowania. Wciąż rośnie zapotrzebowanie rynku na wysokiej klasy specjalistów, którzy dzięki swojej wiedzy i dużemu doświadczeniu potrafią projektować, budować oraz programować systemy komputerowe. Popularność zawodu informatyka potęgują też wysokie zarobki, które zwiększają zainteresowanie młodzieży tą niełatwą dziedziną wiedzy. Jeśli interesujesz się informatyką, chcesz lepiej poznać jej podstawowe zagadnienia, nauczyć się rozwiązywać jej klasyczne problemy i analizować zadania informatyczne w sposób właściwy prawdziwym programistom, sięgnij po książkę Chcę zostać informatykiem. W przystępny sposób prezentuje ona matematyczne mechanizmy wykorzystywane w informatyce, uczy podstaw algorytmiki i wprowadza w świat programowania komputerów. Przedstawia zagadnienia związane z sieciami komputerowymi i bezpieczeństwem informacji oraz sposoby tworzenia gier komputerowych. Przede wszystkim zawiera jednak mnóstwo praktycznych przykładów i ciekawych zadań, które pomogą zainteresowanym kandydatom sprawdzić poziom swojej wiedzy i dostać się na studia informatyczne. Jeśli marzysz o karierze informatyka lub po prostu interesujesz się programowaniem i chcesz poszerzyć swoją wiedzę na ten temat, trafiłeś na właściwą książkę! Podstawy teoretyczne informatyki na skróty Ciekawe zadania informatyczne wraz z rozwiązaniami Matematyka, logika i algorytmika w informatyce Analiza podstawowych problemów programistycznych Wymiarowanie informacji i bezpieczeństwo danych Programowanie komputerów i sieci komputerowe Gry komputerowe Nie wahaj się! Zrób pierwszy krok, aby poznać sekrety informatyki!
Ciągłe dostarczanie oprogramowania w języku Java. Najlepsze narzędzia i praktyki wdrażania kodu
Daniel Bryant, Abraham Marín-Pérez
W ciągu ostatnich lat radykalnie zmieniły się wymagania i oczekiwania biznesowe wobec oprogramowania. Kluczowymi wartościami są innowacyjność, szybkość i czas wejścia na rynek. Do spełnienia tych wymagań konieczne okazały się nowe architektury i modele tworzenia kodu. Metodyka ciągłego dostarczania, zwanego też CD, polega na tworzeniu w krótkich cyklach wartościowych i solidnych produktów. Funkcjonalności są dodawane w małych krokach, a oprogramowanie można wydawać niezawodnie w dowolnej chwili. To sprawia, że można też szybko otrzymywać informacje zwrotne. Jednak taki sposób pracy wymaga odpowiednich ram organizacyjnych, a zespół projektowy musi przyswoić nieco inny od tradycyjnego styl pracy. Ta książka jest praktycznym przewodnikiem, dzięki któremu programiści Javy opanują techniki potrzebne do pomyślnego zastosowania metody ciągłego dostarczania. Opisano tu najlepsze zasady budowy architektury oprogramowania, automatycznej kontroli jakości, pakowania aplikacji i wdrażania ich w różnych środowiskach produkcyjnych. Szczególną uwagę poświęcono testowaniu oprogramowania: przedstawiono całą gamę metodyk testowania, opisano ich zastosowanie i znaczenie w cyklu życia aplikacji. Ciekawym elementem książki są informacje o złych praktykach i antywzorcach wraz ze wskazówkami dotyczącymi rozwiązywania tego rodzaju problemów. W tej książce między innymi: solidne podstawy ciągłego dostarczania oprogramowania migracja do ciągłego dostarczania oprogramowania narzędzia: Jenkins, PMD i FindSecBugs zasady testowania funkcjonalności i jakości oprogramowania techniki obserwacji aplikacji w środowisku produkcyjnym Java i CD: tak zdobędziesz prawdziwą przewagę!
Hemang Doshi
Are you looking to prepare for the CISA exam and understand the roles and responsibilities of an information systems (IS) auditor?The CISA - Certified Information Systems Auditor Study Guide is here to help you get started with CISA exam prep.This book covers all the five CISA domains in detail to help you pass the exam. You’ll start by getting up and running with the practical aspects of an information systems audit. The book then shows you how to govern and manage IT, before getting you up to speed with acquiring information systems. As you progress, you’ll gain knowledge of information systems operations and understand how to maintain business resilience, which will help you tackle various real-world business problems. Finally, you’ll be able to assist your organization in effectively protecting and controlling information systems with IT audit standards.By the end of this CISA book, you'll not only have covered the essential concepts and techniques you need to know to pass the CISA certification exam but also have the ability to apply them in the real world.
Mina Andrawos, Martin Helmich
Awarded as one of the best books of all time by BookAuthority, Cloud Native Programming with Golang will take you on a journey into the world of microservices and cloud computing with the help of Go.Cloud computing and microservices are two very important concepts in modern software architecture. They represent key skills that ambitious software engineers need to acquire in order to design and build software applications capable of performing and scaling. Go is a modern cross-platform programming language that is very powerful yet simple; it is an excellent choice for microservices and cloud applications. Go is gaining more and more popularity, and becoming a very attractive skill.This book starts by covering the software architectural patterns of cloud applications, as well as practical concepts regarding how to scale, distribute, and deploy those applications. You will also learn how to build a JavaScript-based front-end for your application, using TypeScript and React. From there, we dive into commercial cloud offerings by covering AWS. Finally, we conclude our book by providing some overviews of other concepts and technologies that you can explore, to move from where the book leaves off.