Software Architecture MetricsSoftware architecture metrics are key to the maintainability and architectural quality of a software project and they can warn you about dangerous accumulations of architectural and technical debt early in the process. In this practical book, leading hands-on software architects share case studies to introduce metrics that every software architect should know.
This isn't a book about theory. It's more about practice and implementation, about what has already been tried and worked. Detecting software architectural issues early is crucial for the success of your software: it helps mitigate the risk of poor performance and lowers the cost of repairing those issues. Written by practitioners for software architects and software developers eager to explore successful case studies, this guide will help you learn more about decision and measurement effectiveness.
Through contributions from 10 prominent practitioners, this book shares key software architecture metrics to help you set the ...
Functional Programming in C#, 2nd EditionFunctional Programming in C# has helped thousands of developers apply functional thinking to C# code. Its practical examples and spot-on treatment of FP concepts makes it the perfect guide for proficient C# programmers. This second edition is fully revised to cover new functional-inspired features in the most recent releases of C#, including tuples, async streams, pattern matching, and records. Each chapter is packed with awesome perspectives and epiphany moments on how functional programming can change the way you code.
Turbocharge your C# code. Good functional techniques will improve concurrency, state management, event handling, and maintainability of your software. This book gives you practical answers to why, how, and where to add functional programing into your C# coding practice.
Functional Programming in C#, Second Edition teaches functional thinking for real-world problems. It reviews the C# language features that allow you to program functionally and through many practi ...
Python ChallengesAugment your knowledge of Python with this entertaining learning guide, which features 100 exercises and programming puzzles and solutions. Python Challenges will help prepare you for your next exam or a job interview, and covers numerous practical topics such as strings, data structures, recursion, arrays, and more.
Each topic is addressed in its own separate chapter, starting with an introduction to the basics and followed by 10 to 15 exercises of various degrees of difficulty, helping you to improve your programming skills effectively. Detailed sample solutions, including the algorithms used for all tasks, are included to maximize your understanding of each area. Author Michael Inden also describes alternative solutions and analyzes possible pitfalls and typical errors.
Three appendices round out the book: the first covers the Python command line interpreter, which is often helpful for trying out the code snippets and examples in the book, followed by an overview of Pytest for ...
SQL in a Nutshell, 4th EditionFor programmers, analysts, and database administrators, this Nutshell guide is the essential reference for the SQL language used in today's most popular database products. This new fourth edition clearly documents SQL commands according to the latest ANSI/ISO standard and details how those commands are implemented in Microsoft SQL Server 2019 and Oracle 19c, as well as in the MySQL 8, MariaDB 10.5, and PostgreSQL 14 open source database products.
You'll also get a concise overview of the relational database management system (RDBMS) model and a clear-cut explanation of foundational RDBMS concepts-all packed into a succinct, comprehensive, and easy-to-use format.
Sections include: Background on the relational database model, including current and previous SQL standards; Fundamental concepts necessary for understanding relational databases and SQL commands; An alphabetical command reference to SQL statements, according to the SQL:2016 ANSI standard; The implementation of each comma ...
Learn Enough Developer Tools to Be DangerousThree of the core tools needed for modern software development are the Unix command line, a text editor, and version control with Git. But you don't need to learn "everything" about them, just how to use them efficiently to solve real problems. In Learn Enough Developer Tools to Be Dangerous, renowned instructor Michael Hartl teaches the specific concepts, skills, and approaches you need so you can learn to write apps, get hired, collaborate, and maybe even launch your own company.
Even if you've never used (or even heard of) these tools before, Hartl helps you quickly build technical sophistication and master the lore you need to succeed. Focused exercises help you internalize what matters, without wasting time on details pros don't care about. Soon, it'll be like you were born knowing this stuff-and youll be suddenly, seriously dangerous.
Learn enough about: Running a terminal, entering and editing commands, and using man pages; Manipulating and inspecting files: from basic cop ...
WPF Debugging and Performance SuccinctlyWPF allows you to build modern desktop applications for Windows, and part of building an application is debugging code and optimizing performance. In Alessandro Del Sole's WPF Debugging and Performance Succinctly, you will learn how to debug a WPF application by leveraging all the powerful tools in Visual Studio, including the most recent additions that allow you to investigate the behavior of the UI at runtime. Also, you will learn how to analyze and improve an application's performance in order to provide your customers with the best possible experience and thereby make them happy. ...
Full Stack TestingTesting is a critical discipline for any organization looking to deliver high-quality software. This practical book provides software developers and QA engineers with a comprehensive one-stop guide to testing skills in 10 different categories. You'll learn appropriate strategies, concepts, and practical implementation knowledge you can apply from both a development and testing perspective for web and mobile applications.
Author Gayathri Mohan offers examples of more than 40 tools you can use immediately. You'll acquire the skills to conduct exploratory testing, test automation, cross-functional testing, data testing, mobile testing, and visual testing, as well as tests for performance, security, and accessibility. You'll learn to integrate them in continuous integration pipelines to gain faster feedback. Once you dive into this guide, you'll be able to tackle challenging development workflows with a focus on quality.
With this book, you will: Learn how to employ various testing t ...
Active Directory Administration Cookbook, 2nd EditionUpdated to the Windows Server 2022, this 2nd edition covers effective recipes for Active Directory administration that will help you leverage AD's capabilities for automating network, security, and access management tasks in the Windows infrastructure.
Starting with a detailed focus on forests, domains, trusts, schemas, and partitions, this book will help you manage domain controllers, organizational units, and default containers. You'll then explore Active Directory sites management as well as identify and solve replication problems. As you progress, you'll work through recipes that show you how to manage your AD domains as well as user and group objects and computer accounts, expiring group memberships, and Group Managed Service Accounts (gMSAs) with PowerShell. Once you've covered DNS and certificates, you'll work with Group Policy and then focus on federation and security before advancing to Azure Active Directory and how to integrate on-premise Active Directory with Azure AD. F ...
Linux for Small Business OwnersLearn how you can take complete control and run your small business with powerful, free open source software (FOSS). This book introduces small business owners to the power and security of Linux and other FOSS tools to manage any small business as well as the many advantages it has over expensive, proprietary software. While exploring the reasons for using Free Open Source Software, you'll investigate the assertion that, "The value of any software lies in its usefulness not in its price," set forth by Linux Torvalds, the creator of Linux.
This book examines the use of Linux and also the other Free Open Source Software you need to meet your business challenges including the usual accounting, Email, web browsing, word-processing tasks. You will be introduced to advanced tools such as those that enable you to create audio and video clips you can use to promote your business or that can even be your primary product, such as how-to instruction.
Most small business owners perform many ...
Azure AutomationThe second ebook in the series, Microsoft Azure Essentials: Azure Automation, introduces a fairly new feature of Microsoft Azure called Azure Automation. Using a highly scalable workflow execution environment, Azure Automation allows you to orchestrate frequent deployment and life cycle management tasks using runbooks based on Windows PowerShell Workflow functionality. These runbooks are stored in and backed up by Azure. By automating runbooks, you can greatly minimize the occurrence of errors when carrying out repeated tasks and process automation. ...