Programowanie
Niezależnie czy dopiero rozpoczynacie swoją przygodę z programowaniem, czy jesteście już uznanymi na rynku profesjonalistami, to w kategorii Programowanie na pewno znajdziecie podręczniki, które pomogą Wam w przebiegu pracy, czy też w nauce podstaw programowania.
W książkach z tego działu zawarta jest wiedza zarówno związana z czysto technicznymi sprawami typu składnia języków, ale także z umiejętnościami bardziej "miękkimi" jak obsługa i wykorzystanie pełnych możliwości środowisk programistycznych, czy też projektowanie oprogramowania lub metody numeryczne czy oraz struktury danych.
Elementy inżynierii oprogramowania w Pythonie
Jakub Walczak
Zdobądź ostrogi programisty w Pythonie! Python jest językiem, którego powszechnie używa się w wielu obszarach: od programowania gier, przez aplikacje webowe, po systemy analizy danych. Nic więc dziwnego, że cieszy się ogromną popularnością i jest dodatkowo wspierany przez liczną społeczność programistów, projektantów i sympatyków, którzy go rozwijają i rozszerzają. Do grona osób aktywnie korzystających z tego języka z pewnością należy Jakub Walczak, który w książce poświęconej Pythonowi i inżynierii oprogramowania wprowadza do jego ekosystemu. Dzięki jej lekturze czytelnicy poznają ideę środowisk wirtualnych, sposoby interakcji z interpreterem czy zasady podziału projektu na moduły i pakiety. Adepci sztuki programowania znajdą tu wprowadzenie do mechanizmów pakietu pytest, który zdecydowanie ułatwia pisanie i wykonywanie testów jednostkowych. Opanują również takie zagadnienia jak klasy i obiekty, a także zaawansowane aspekty programowania obiektowego, w tym metaklasy, dziedziczenie i emulowanie szczególnych zachowań obiektów Autor zadbał o klarowną strukturę podręcznika, który składa się z dwunastu uporządkowanych rozdziałów. Zawarta w nich treść została uzupełniona dodatkowymi wyjaśnieniami, wskazówkami i podsumowaniami, co ułatwia przyswojenie omawianego materiału. Organizacja środowiska pracy Organizacja projektu Wstęp do programowania zorientowanego obiektowo Deskryptory Dziedziczenie Mechanizm obsługi wyjątków Metody specjalne klas Dekoratory Serializacja i deserializacja Testy jednostkowe z użyciem biblioteki pytest Wytyczne dotyczące stylu Python od A do Z! Jakub Walczak — rocznik 1994, doktorant w dyscyplinie informatyki technicznej i telekomunikacji, od 2019 roku asystent w grupie pracowników badawczo-dydaktycznych na Politechnice Łódzkiej i deweloper oprogramowania naukowego w CMCC Foundation. Od kilku lat entuzjasta Pythona, aktywnie zgłębiający jego tajniki zarówno w pracy zawodowej, jak i poza nią. Miłośnik podróży, kultury hiszpańskiej i słodyczy. W wolnych chwilach mól książkowy i amator sportów. Ciągły poszukiwacz nowych wyzwań, z których ostatnim było przygotowanie tego podręcznika.
Marco Galvan, Christopher Bolte
Among the digital audio workstations (DAWs) revolutionizing the way we create and manipulate sound, REAPER stands out as a comprehensive and customizable solution. Written by two professional sound engineers with extensive credentials, this book helps you make the most of this DAW by guiding you through each step of using REAPER, from initial setup to advanced professional techniques, to produce high-quality audio content.Starting with the basics, you’ll learn how to install and configure the software to suit your specific needs. Through practical examples, you'll explore REAPER’s extensive features, covering everything from initial recording sessions to the final stages of mixing and mastering. You'll also be guided through creating a complete musical production, learning how to utilize REAPER's tools to capture the best takes and edit them to perfection. Whether you're working on music, podcasts, or sound design for video, you will discover techniques for mixing and mastering your projects, ensuring they achieve optimal sound quality and volume for distribution.By the end of this book, you’ll have gained a thorough understanding of how to harness REAPER’s full potential.
Gonçalo Marques, Devin Sherry, David Pereira, Hammad...
Immerse yourself in the Unreal game projects with this book, written by four highly experienced industry professionals with many years of combined experience with Unreal Engine. Elevating Game Experiences with Unreal Engine 5 will walk you through the latest version of Unreal Engine by helping you get hands-on with the game creation projects.The book starts with an introduction to the Unreal Editor and key concepts such as actors, blueprints, animations, inheritance, and player input. You'll then move on to the first of three projects, building a dodgeball game, where you'll learn the concepts of line traces, collisions, projectiles, user interface, and sound effects. You’ll also discover how to combine these concepts to showcase your new skills. The second project, a side-scroller game, will help you implement concepts such as animation blending, enemy AI, spawning objects, and collectibles. And finally, you'll cover the key concepts in creating a multiplayer environment as you work on the third project, an FPS game.By the end of this Unreal Engine book, you'll have a broad understanding of how to use the tools that the game engine provides to start building your own games.
Otavio Salvador, Daiane Angolini
The Yocto Project is the industry standard for developing dependable embedded Linux projects. It stands out from other frameworks by offering time-efficient development with enhanced reliability and robustness.With Embedded Linux Development Using Yocto Project, you’ll acquire an understanding of Yocto Project tools, helping you perform different Linux-based tasks. You’ll gain a deep understanding of Poky and BitBake, explore practical use cases for building a Linux subsystem project, employ Yocto Project tools available for embedded Linux, and uncover the secrets of SDK, recipe tool, and others. This new edition is aligned with the latest long-term support release of the aforementioned technologies and introduces two new chapters, covering optimal emulation in QEMU for faster product development and best practices.By the end of this book, you’ll be well-equipped to generate and run an image for real hardware boards. You’ll gain hands-on experience in building efficient Linux systems using the Yocto Project.
Igor Viarheichyk
Developing applications for embedded systems may seem like a daunting task as developers face challenges related to limited memory, high power consumption, and maintaining real-time responses. This book is a collection of practical examples to explain how to develop applications for embedded boards and overcome the challenges that you may encounter while developing.The book will start with an introduction to embedded systems and how to set up the development environment. By teaching you to build your first embedded application, the book will help you progress from the basics to more complex concepts, such as debugging, logging, and profiling. Moving ahead, you will learn how to use specialized memory and custom allocators. From here, you will delve into recipes that will teach you how to work with the C++ memory model, atomic variables, and synchronization. The book will then take you through recipes on inter-process communication, data serialization, and timers. Finally, you will cover topics such as error handling and guidelines for real-time systems and safety-critical systems.By the end of this book, you will have become proficient in building robust and secure embedded applications with C++.
Daniele Lacamera
Embedded Systems Architecture begins with a bird’s-eye view of embedded development and how it differs from the other systems that you may be familiar with. This book will help you get the hang of the internal working of various components in real-world systems.You’ll start by setting up a development environment and then move on to the core system architectural concepts, exploring system designs, boot-up mechanisms, and memory management. As you progress through the topics, you’ll explore the programming interface and device drivers to establish communication via TCP/IP and take measures to increase the security of IoT solutions. Finally, you’ll be introduced to multithreaded operating systems through the development of a scheduler and the use of hardware-assisted trusted execution mechanisms.With the help of this book, you will gain the confidence to work with embedded systems at an architectural level and become familiar with various aspects of embedded software development on microcontrollers—such as memory management, multithreading, and RTOS—an approach oriented to memory isolation.
Daniele Lacamera
Embedded systems are self-contained devices with a dedicated purpose. We come across a variety of fields of applications for embedded systems in industries such as automotive, telecommunications, healthcare and consumer electronics, just to name a few.Embedded Systems Architecture begins with a bird's eye view of embedded development and how it differs from the other systems that you may be familiar with. You will first be guided to set up an optimal development environment, then move on to software tools and methodologies to improve the work flow. You will explore the boot-up mechanisms and the memory management strategies typical of a real-time embedded system. Through the analysis of the programming interface of the reference microcontroller, you'll look at the implementation of the features and the device drivers. Next, you'll learn about the techniques used to reduce power consumption. Then you will be introduced to the technologies, protocols and security aspects related to integrating the system into IoT solutions.By the end of the book, you will have explored various aspects of embedded architecture, including task synchronization in a multi-threading environment, and the safety models adopted by modern real-time operating systems.
Daniele Lacamera
Embedded systems are self-contained devices with a dedicated purpose. We come across a variety of fields of applications for embedded systems in industries such as automotive, telecommunications, healthcare and consumer electronics, just to name a few.Embedded Systems Architecture begins with a bird's eye view of embedded development and how it differs from the other systems that you may be familiar with. You will first be guided to set up an optimal development environment, then move on to software tools and methodologies to improve the work flow. You will explore the boot-up mechanisms and the memory management strategies typical of a real-time embedded system. Through the analysis of the programming interface of the reference microcontroller, you'll look at the implementation of the features and the device drivers. Next, you'll learn about the techniques used to reduce power consumption. Then you will be introduced to the technologies, protocols and security aspects related to integrating the system into IoT solutions.By the end of the book, you will have explored various aspects of embedded architecture, including task synchronization in a multi-threading environment, and the safety models adopted by modern real-time operating systems.
Joel Kruger, Helen Beal
At the core of software development lies the imperative of swiftly and reliably releasing new features and updates, emphasizing the vital role of release management in the DevOps methodology. Discover how software development teams can elevate their processes by incorporating quality checks and shifting left, moving testing, automation, and QA procedures much earlier into the SDLC. However, release management is still tasked with application monitoring, overseeing infrastructure components, and managing change orders and schedules.This book offers insights into the essence of DevOps Release Management, illuminating its nuances and providing basic strategies for its implementation. You’ll explore how CI/CD pipelines enforce good DevOps release management and master techniques to optimize them. You’ll also learn how to foster a culture of cross-functional product development that minimizes waste and maximizes value to the customer.By the end of the book, you’ll have gained a comprehensive understanding of DevOps release management, its benefits, and practical implementation strategies. Equipped with this knowledge, you’ll be able to assess your own development processes and identify areas for improvement, ultimately leading to increased efficiency, collaboration, and value creation.
Emotional Intelligence for IT Professionals. The must-have guide for a successful career in IT
Emília M. Ludovino
This book will help you discover your emotional quotient (EQ) through practices and techniques that are used by the most successful IT people in the world. It will make you familiar with the core skills of Emotional Intelligence, such as understanding the role that emotions play in life, especially in the workplace. You will learn to identify the factors that make your behavior consistent, not just to other employees, but to yourself. This includes recognizing, harnessing, predicting, fostering, valuing, soothing, increasing, decreasing, managing, shifting, influencing or turning around emotions and integrating accurate emotional information into decision-making, reasoning, problem solving, etc., because, emotions run business in a way that spreadsheets and logic cannot. When a deadline lurks, you’ll know the steps you need to take to keep calm and composed. You’ll find out how to meet the deadline, and not get bogged down by stress. We’ll explain these factors and techniques through real-life examples faced by IT employees and you’ll learn using the choices that they made. This book will give you a detailed analysis of the events and behavioral pattern of the employees during that time. This will help you improve your own EQ to the extent that you don’t just survive, but thrive in a competitive IT industry.
Waweru Mwaura
Cypress is a modern test automation framework for web-based frontend apps. Learning Cypress will help you overcome the shortcomings of conventional testing solutions such as dependency graph problems, the steep learning curve in setting up end-to-end testing packages, and difficulties in writing explicit time waits for your tests.In End-to-End Web Testing with Cypress, you’ll learn how to use different Cypress tools, including time travel, snapshots, errors, and console output, to write fail-safe and non-flaky tests. You’ll discover techniques for performing test-driven development (TDD) with Cypress and write cross-browser tests for your web applications. As you advance, you’ll implement tests for a sample application and work with a variety of tools and features within the Cypress ecosystem. Finally, this Cypress book will help you grasp advanced testing concepts such as visual testing and networking.By the end of this book, you’ll have the skills you need to be able to set up Cypress for any web app and understand how to use it to its full potential.
Dipankar Mazumdar, Vinoth Govindarajan, Chao Sun
Engineering Lakehouses with Open Table Formats provides detailed insights into lakehouse concepts, and dives deep into the practical implementation of open table formats such as Apache Iceberg, Apache Hudi, and Delta Lake.You’ll explore the internals of a table format and learn in detail about the transactional capabilities of lakehouses. You’ll also get hands on with each table format with exercises using popular computing engines, such as Apache Spark, Flink, Trino, and Python-based tools. The book addresses advanced topics, including performance optimization techniques and interoperability among different formats, equipping you to build production-ready lakehouses. With step-by-step explanations, you’ll get to grips with the key components of lakehouse architecture and learn how to build, maintain, and optimize them.By the end of this book, you’ll be proficient in evaluating and implementing open table formats, optimizing lakehouse performance, and applying these concepts to real-world scenarios, ensuring you make informed decisions in selecting the right architecture for your organization’s data needs.
Dipankar Mazumdar, Vinoth Govindarajan, Chao Sun
Engineering Lakehouses with Open Table Formats provides detailed insights into lakehouse concepts, and dives deep into the practical implementation of open table formats such as Apache Iceberg, Apache Hudi, and Delta Lake.You’ll explore the internals of a table format and learn in detail about the transactional capabilities of lakehouses. You’ll also get hands on with each table format with exercises using popular computing engines, such as Apache Spark, Flink, Trino, and Python-based tools. The book addresses advanced topics, including performance optimization techniques and interoperability among different formats, equipping you to build production-ready lakehouses. With step-by-step explanations, you’ll get to grips with the key components of lakehouse architecture and learn how to build, maintain, and optimize them.By the end of this book, you’ll be proficient in evaluating and implementing open table formats, optimizing lakehouse performance, and applying these concepts to real-world scenarios, ensuring you make informed decisions in selecting the right architecture for your organization’s data needs.
Steven Antonio Christian, Patrick B. Thomas
Virtual reality (VR) has emerged as one of the most transformative mediums of the 21st century, finding applications in various industries, including gaming, entertainment, and education.Enhancing Virtual Reality Experiences with Unity 2022 takes you into the fascinating realm of VR, where creativity meets cutting-edge technology to bring tangible real-world applications to life. This immersive exploration not only equips you with the essential skills needed to craft captivating VR environments using Unity's powerful game engine but also offers a deeper understanding of the philosophy behind creating truly immersive experiences.Throughout the book, you’ll work with practical VR scene creation, interactive design, spatial audio, and C# programming and prepare to apply these skills to real-world projects spanning art galleries, interactive playgrounds, and beyond. To ensure your VR creations reach their full potential, the book also includes valuable tips on optimization, guaranteeing maximum immersion and impact for your VR adventures.By the end of this book, you’ll have a solid understanding of VR’s versatility and how you can leverage the Unity game engine to create groundbreaking projects.
Dipayan Sarkar, Vijayalakshmi Natarajan
Ensemble modeling is an approach used to improve the performance of machine learning models. It combines two or more similar or dissimilar machine learning algorithms to deliver superior intellectual powers. This book will help you to implement popular machine learning algorithms to cover different paradigms of ensemble machine learning such as boosting, bagging, and stacking.The Ensemble Machine Learning Cookbook will start by getting you acquainted with the basics of ensemble techniques and exploratory data analysis. You'll then learn to implement tasks related to statistical and machine learning algorithms to understand the ensemble of multiple heterogeneous algorithms. It will also ensure that you don't miss out on key topics, such as like resampling methods. As you progress, you’ll get a better understanding of bagging, boosting, stacking, and working with the Random Forest algorithm using real-world examples. The book will highlight how these ensemble methods use multiple models to improve machine learning results, as compared to a single model. In the concluding chapters, you'll delve into advanced ensemble models using neural networks, natural language processing, and more. You’ll also be able to implement models such as fraud detection, text categorization, and sentiment analysis.By the end of this book, you'll be able to harness ensemble techniques and the working mechanisms of machine learning algorithms to build intelligent models using individual recipes.
Ganesan Senthilvel, Ovais Mehboob Ahmed Khan, Habib...
If you want to design and develop enterprise applications using .NET Core as the development framework and learn about industry-wide best practices and guidelines, then this book is for you. The book starts with a brief introduction to enterprise architecture, which will help you to understand what enterprise architecture is and what the key components are. It will then teach you about the types of patterns and the principles of software development, and explain the various aspects of distributed computing to keep your applications effective and scalable. These chapters act as a catalyst to start the practical implementation, and design and develop applications using different architectural approaches, such as layered architecture, service oriented architecture, microservices and cloud-specific solutions. Gradually, you will learn about the different approaches and models of the Security framework and explore various authentication models and authorization techniques, such as social media-based authentication and safe storage using app secrets. By the end of the book, you will get to know the concepts and usage of the emerging fields, such as DevOps, BigData, architectural practices, and Artificial Intelligence.
Ravindra Akella, Rishabh Verma, Arun Kumar Tamirisa...
.NET Core is one of the most popular programming platforms in the world for an increasingly large community of developers thanks to its excellent cross-platform support. This book will show you how to confidently use the features of .NET 5 with C# 9 to build robust enterprise applications.Throughout the book, you'll work on creating an enterprise app and adding a key component to the app with each chapter, before ?nally getting it ready for testing and deployment. You'll learn concepts relating to advanced data structures, the Entity Framework Core, parallel programming, and dependency injection. As you progress, you'll cover various authentication and authorization schemes provided by .NET Core to make your apps and APIs secure. Next, you'll build web apps using ASP.NET Core 5 and deploy them on the cloud while working with various cloud components using Azure. The book then shows you how to use the latest Microsoft Visual Studio 2019 and C# 9 to simplify developer tasks, and also explores tips and tricks in Visual Studio 2019 to improve your productivity. Later, you'll discover various testing techniques such as unit testing and performance testing as well as di?erent methods to deploy enterprise apps.By the end of this book, you’ll be able to create enterprise apps using the powerful features of .NET 5 and deploy them on the cloud.
Jorge R. López Benito, Enara Artetxe González
Augmented reality (AR) is expanding its scope from just being used in mobile and game applications to enterprise. Different industries are using AR to enhance assembly line visualization, guide operators performing difficult tasks, attract more customers, and even improve training techniques. In this book, you'll gain comprehensive insights into different aspects of developing AR-based apps for six different enterprise sectors, focusing on market needs and choosing the most suitable tool in each case.You'll delve into the basics of Unity and get familiar with Unity assets, materials, and resources, which will help you build a strong foundation for working on the different AR projects covered in the book. You'll build real-world projects for various industries such as marketing, retail, and automation in a step-by-step manner. This will give you hands-on experience in developing your own industrial AR apps. While building the projects, you'll explore various AR frameworks used in the enterprise environment such as Vuforia, EasyAR, ARCore, and ARKit, and understand how they can be used by themselves or integrated into the Unity 3D engine to create AR markers, 3D models, and components of an AR app.By the end of this book, you'll be well versed in using different commercial AR frameworks as well as Unity for building robust AR projects.