C++ Software Design
Good software design is essential for the success of your project, but designing software is hard to do. You need to have a deep understanding of the consequences of design decisions and a good overview of available design alternatives. With this book, experienced C++ developers will get a thorough, practical, and unparalleled overview of software design with this modern language.
C++ trainer and consultant Klaus Iglberger explains how you can manage dependencies and abstractions, improve changeability and extensibility of software entities, and apply and implement modern design patterns to help you take advantage of today's possibilities. Software design is the most essential aspect of a software project because it impacts the software's most important properties: maintainability, changeability, and extensibility. ...
Snowflake: The Definitive Guide
Snowflake's ability to eliminate data silos and run workloads from a single platform creates opportunities to democratize data analytics, allowing users at all levels within an organization to make data-driven decisions. Whether you're an IT professional working in data warehousing or data science, a business analyst or technical manager, or an aspiring data professional wanting to get more hands-on experience with the Snowflake platform, this book is for you.
You'll learn how Snowflake users can build modern integrated data applications and develop new revenue streams based on data. Using hands-on SQL examples, you'll also discover how the Snowflake Data Cloud helps you accelerate data science by avoiding replatforming or migrating data unnecessarily. ...
Architecting and Building High-Speed SoCs
Modern and complex SoCs can adapt to many demanding system requirements by combining the processing power of ARM processors and the feature-rich Xilinx FPGAs. You'll need to understand many protocols, use a variety of internal and external interfaces, pinpoint the bottlenecks, and define the architecture of an SoC in an FPGA to produce a superior solution in a timely and cost-efficient manner.
This book adopts a practical approach to helping you master both the hardware and software design flows, understand key interconnects and interfaces, analyze the system performance and enhance it using the acceleration techniques, and finally build an RTOS-based software application for an advanced SoC design.
You'll start with an introduction to the FPGA SoCs technology fundamentals and their associated development design tools. Gradually, the book will guide you through building the SoC hardware and software, starting from the architecture definition to testing on a demo boa ...
Software Test Design
Software Test Design details best practices for testing software applications and writing comprehensive test plans. Written by an expert with over twenty years of experience in the high-tech industry, this guide will provide you with training and practical examples to improve your testing skills.
Thorough testing requires a thorough understanding of the functionality under test, informed by exploratory testing and described by a detailed functional specification. This book is divided into three sections, the first of which will describe how best to complete those tasks to start testing from a solid foundation.
Armed with the feature specification, functional testing verifies the visible behavior of features by identifying equivalence partitions, boundary values, and other key test conditions. This section explores techniques such as black- and white-box testing, trying error cases, finding security weaknesses, improving the user experience, and how to maintain your product ...
Responsive Web Design with HTML5 and CSS, 4th Edition
Responsive Web Design with HTML5 and CSS, Fourth Edition, is a fully revamped and extended version of one of the most comprehensive and bestselling books on the latest HTML5 and CSS techniques for responsive web design. It emphasizes pragmatic application, teaching you the approaches needed to build most real-life websites, with downloadable examples in every chapter.
Written in the author's friendly and easy-to-follow style, this edition covers all the newest developments and improvements in responsive web design including approaches for better accessibility, variable fonts and font loading, and the latest color manipulation tools making their way to browsers. You can enjoy coverage of bleeding-edge features such as CSS layers, container queries, nesting, and subgrid.
The book concludes by exploring some exclusive tips and approaches for front-end development from the author.
By the end of the book, you will not only have a comprehensive understanding of respons ...
Explainable AI for Practitioners
Most intermediate-level machine learning books focus on how to optimize models by increasing accuracy or decreasing prediction error. But this approach often overlooks the importance of understanding why and how your ML model makes the predictions that it does.
Explainability methods provide an essential toolkit for better understanding model behavior, and this practical guide brings together best-in-class techniques for model explainability. Experienced machine learning engineers and data scientists will learn hands-on how these techniques work so that you'll be able to apply these tools more easily in your daily workflow. ...
3D Deep Learning with Python
With this hands-on guide to 3D deep learning, developers working with 3D computer vision will be able to put their knowledge to work and get up and running in no time.
Complete with step-by-step explanations of essential concepts and practical examples, this book lets you explore and gain a thorough understanding of state-of-the-art 3D deep learning. You'll see how to use PyTorch3D for basic 3D mesh and point cloud data processing, including loading and saving ply and obj files, projecting 3D points into camera coordination using perspective camera models or orthographic camera models, rendering point clouds and meshes to images, and much more. As you implement some of the latest 3D deep learning algorithms, such as differential rendering, Nerf, synsin, and mesh RCNN, you'll realize how coding for these deep learning models becomes easier using the PyTorch3D library.
By the end of this deep learning book, you'll be ready to implement your own 3D deep learning models confidently. ...
SAP HANA Cloud in a Nutshell
This book introduces SAP HANA Cloud and helps you develop an understanding of its key features, including technology, architecture, and data modeling. SAP HANA Cloud in a Nutshell will help you develop the skills needed to use the core features of the completely managed and in-memory cloud-based data foundation available in the SAP Business Technology Platform.
The book covers modern modeling concepts and equips you with practical knowledge to unleash the best use of SAP HANA Cloud. As you progress, you will learn how to provision your own SAP HANA Cloud instance, understand how to work with different roles, and work with data modeling for analytical and transactional use cases. Additionally, you will learn how to pilot SAP BTP Cockpit and work with entitlements, quotas, account structure, spaces, instances, and cloud providers. You will learn how to perform administration tasks such as stop and start an SAP HANA Cloud instance and make it available for use.
To fully leverage th ...
Foundations of Scalable Systems
In many systems, scalability becomes the primary driver as the user base grows. Attractive features and high utility breed success, which brings more requests to handle and more data to manage. But organizations reach a tipping point when design decisions that made sense under light loads suddenly become technical debt. This practical book covers design approaches and technologies that make it possible to scale an application quickly and cost-effectively.
Author Ian Gorton takes software architects and developers through the principles of foundational distributed systems. You'll explore the essential ingredients of scalable solutions, including replication, state management, load balancing, and caching. Specific chapters focus on the implications of scalability for databases, microservices, and event-based streaming systems.
You will focus on:
Foundations of scalable systems: Learn basic design principles of scalability, its costs, and architectural tradeoff ...
API Marketplace Engineering
This is your hands-on guide to designing, building, and operating an API Marketplace to allow your organization to expose internal services and customer data securely for use by external developers. The book shows the mutual nature of a relationship in which organizations benefit from revenue and the reach of a new digital channel and third-party developers benefit from leveraging APIs to build unique applications.
Providing open access is a regulatory requirement in some sectors, such as financial services, and this book helps you to build a platform to comply with regulatory requirements while at the same time encouraging and supporting use by external development teams. The book provides the blueprints for assembling teams and systems to build and support an API ecosystem. It offers insight into how the Marketplace can be constructed in a way to allow agility and flexibility to meet aggressive startup developer timelines while balancing established enterprise requirements of stab ...
Design Patterns in Modern C++20, 2nd Edition
Apply the latest editions of the C++ standard to the implementation of design patterns. As well as covering traditional design patterns, this book fleshes out new design patterns and approaches that will be useful to modern C++ developers. Author Dmitri Nesteruk presents concepts as a fun investigation of how problems can be solved in different ways, along the way using varying degrees of technical sophistication and explaining different sorts of trade-offs.
Design Patterns in Modern C++20, 2nd Edition also provides a technology demo for modern C++, showcasing how some of its latest features (e.g., coroutines, modules and more) make difficult problems a lot easier to solve. The examples in this book are all suitable for putting into production, with only a few simplifications made in order to aid readability. ...