Techniki programowania
W kategorii Techniki programowania znajdziecie książki dobrane pod względem merytorycznym zarówno dla amatorów jak i profesjonalistów z dziedziny programowania.
Dowiecie się jak poprawnie napisać i udokumentować własny kod oraz przeczytacie o najskuteczniejszych metodach refaktoryzacji czyli w jaki sposób poprawiać i optymalizować kod napisany przez innych programistów. Poznacie sposoby optymalizacji algorytmów, analizy złożoności, kompresji danych czy elementy algorytmiki grafów. Zaznajomicie się nie tylko z najlepszymi wzorcami w wytwarzaniu oprogramowania ale także nauczycie się rozpoznawać najczęstsze błędy i czyhające na Was pułapki.
Faraz K. Kelhini, Butch Mayhew, Ben Fellows
Hands-On Automated Testing with Playwright draws from Faraz and Butch’s extensive experience to help you harness the full potential of Microsoft's Playwright framework.The book begins with a quick setup refresher, walking you through intermediate and advanced concepts such as dynamic content handling, accessibility testing, AI-generated test scripts, and parallel test execution. You'll explore real-world applications with end-to-end testing workflows for e-commerce and single-page applications. Alongside traditional topics such as accessibility, mobile, and visual regression testing, this book delves into modern trends such as CI/CD pipelines, DevOps integration, and AI-driven testing enhancements. Each chapter is packed with practical examples, expert techniques, and performance optimization tips, helping you gain a deep understanding of maintainable automation strategies. Whether you're transitioning from manual testing or expanding your automation toolbox, this Playwright book provides the skills and confidence to build future-proof testing systems in today's complex web development landscape.*Email sign-up and proof of purchase required
Ankur Roy
Python stands out as a powerhouse in DevOps, boasting unparalleled libraries and support, which makes it the preferred programming language for problem solvers worldwide. This book will help you understand the true flexibility of Python, demonstrating how it can be integrated into incredibly useful DevOps workflows and workloads, through practical examples.You'll start by understanding the symbiotic relation between Python and DevOps philosophies and then explore the applications of Python for provisioning and manipulating VMs and other cloud resources to facilitate DevOps activities. With illustrated examples, you’ll become familiar with automating DevOps tasks and learn where and how Python can be used to enhance CI/CD pipelines. Further, the book highlights Python’s role in the Infrastructure as Code (IaC) process development, including its connections with tools like Ansible, SaltStack, and Terraform. The concluding chapters cover advanced concepts such as MLOps, DataOps, and Python’s integration with generative AI, offering a glimpse into the areas of monitoring, logging, Kubernetes, and more.By the end of this book, you’ll know how to leverage Python in your DevOps-based workloads to make your life easier and save time.
Jim Yuill, Penn Linder
This updated edition of Hands-On RTOS with Microcontrollers is packed with cutting-edge content to help you expand your skills and stay ahead of the curve with embedded systems development. Written by senior engineers with decades of experience in embedded systems and related technologies, it covers the role of real-time OSs in today’s time-critical applications, and it covers FreeRTOS, including its key capabilities and APIs. You’ll find detailed descriptions of system design, hands-on system use, the hardware platform (dev-board, MCU, and debug-probe), and the development tools (IDE, build system, and debugging tools).This second edition teaches you how to implement over 20 real-world embedded applications, using FreeRTOS's primary features. The chapters include example programs on GitHub, with detailed instructions. You’ll create and install your own FreeRTOS system on the dev-board (purchased separately), and set up an IDE project with debugging tools.An ST dev-board is used with the book, and it is purchased separately (STM32 Nucleo-F767ZI - the dev-board is not required to read and understand the book).By the end of this book, you’ll have the hands-on skills to start designing, building, and optimizing embedded applications, using FreeRTOS, development boards, and debugging tools.
Brian Allbee
Software engineering is more than coding; it’s the strategic design and continuous improvement of systems that serve real-world needs. This newly updated second edition of Hands-On Software Engineering with Python expands on its foundational approach to help you grow into a senior or staff-level engineering role.Fully revised for today’s Python ecosystem, this edition includes updated tooling, practices, and architectural patterns. You’ll explore key changes across five minor Python versions, examine new features like dataclasses and type hinting, and evaluate modern tools such as Poetry, pytest, and GitHub Actions. A new chapter introduces high-performance computing in Python, and the entire development process is enhanced with cloud-readiness in mind.You’ll follow a complete redesign and refactor of a multi-tier system from the first edition, gaining insight into how software evolves—and what it takes to do that responsibly. From system modeling and SDLC phases to data persistence, testing, and CI/CD automation, each chapter builds your engineering mindset while updating your hands-on skills.By the end of this book, you'll have mastered modern Python software engineering practices and be equipped to revise and future-proof complex systems with confidence.
Nicolas Alejandro Borromeo
Unity is a cross-platform game engine that provides you with powerful but simple-to-use features to solve the most common problems in Game Development, such as rendering, animation, physics, sound, and effects. You’ll learn to use these features to create simple but complete games (and all the nuances needed to handle Unity).Complete with hands-on tutorials and projects, this book will teach you to use the Unity game engine, create C# and visual scripts, integrate graphics, sound, and animations, and manipulate physics to create interesting mechanics for your game. You’ll then code a simple AI agent to challenge the user and work with profiling tools to ensure code efficiency.Finally, you'll work with Unity's AR tools to create AR experiences for 3D apps and games before publishing them to the world.If you are interested in creating impressive, commercial-quality games that are playable on a variety of platforms, then you’ve come to the right place.
Miguel Angel Teheran Garcia, Hector Uriel Perez...
Visual Studio 2022 is the complete and ideal integrated development environment (IDE) for creating large, complex, and scalable applications. It is one of the most complete tools available for development, especially with Microsoft technologies.This book will teach you how to take advantage of the tools available with this IDE to write clean code faster. You’ll begin by learning how to set up and start Visual Studio 2022 and how to use all the tools provided by this IDE. You will then explore key combinations, tips, and additional utilities that can help you to code faster and review your code constantly. Next, you will see how to compile, debug, and inspect your project to analyze its current behavior using Visual Studio. The book also shows you how to insert reusable blocks of code writing simple statements. Later, you will learn about visual aids and artificial intelligence that will help you improve productivity and understand what is going on in the project.By the end of this book, you will be able to set up your development environment using Visual Studio 2022, personalize the tools and layout, and use shortcuts and extensions to improve your productivity.
John Boero
Creating machine images can be time-consuming and error-prone when done manually. HashiCorp Packer enables you to automate this process by defining the configuration in a simple, declarative syntax. This configuration is then used to create machine images for multiple environments and cloud providers.The book begins by showing you how to create your first manifest while helping you understand the available components. You’ll then configure the most common built-in builder options for Packer and use runtime provisioners to reconfigure a source image for desired tasks. You’ll also learn how to control logging for troubleshooting errors in complex builds and explore monitoring options for multiple logs at once. As you advance, you’ll build on your initial manifest for a local application that’ll easily migrate to another builder or cloud. The chapters also help you get to grips with basic container image options in different formats while scaling large builds in production. Finally, you’ll develop a life cycle and retention policy for images, automate packer builds, and protect your production environment from nefarious plugins.By the end of this book, you’ll be equipped to smoothen collaboration and reduce the risk of errors by creating machine images consistently and automatically based on your defined configuration.
Ryan Lemmer
Design patterns and idioms can widen our perspective byshowing us where to look, what to look at, and ultimatelyhow to see what we are looking at. At their best, patternsare a shorthand method of communicating better waysto code (writing less, more maintainable, and moreefficient code)This book starts with Haskell 98 and through the lens ofpatterns and idioms investigates the key advances andprogramming styles that together make modern Haskell.Your journey begins with the three pillars of Haskell.Then you'll experience the problem with Lazy I/O, togetherwith a solution. You'll also trace the hierarchy formedby Functor, Applicative, Arrow, and Monad. Next you'llexplore how Fold and Map are generalized by Foldableand Traversable, which in turn is unified in a broadercontext by functional Lenses. You'll delve more deeply intothe Type system, which will prepare you for an overviewof Generic programming. In conclusion you go to theedge of Haskell by investigating the Kind system andhow this relates to Dependently-typed programming