Java 17 for Absolute Beginners, 2nd EditionWrite your first code in Java 17 using simple, step-by-step examples that model real-word objects and events, making learning easy. With Java 17 for Absolute Beginners you'll be able to pick up the concepts without fuss. It teaches Java development in language anyone can understand, giving you the best possible start.
You'll see clear code descriptions and layout so that you can get your code running as soon as possible. Author Iuliana Cosmina focuses on practical knowledge and getting you up to speed quickly - all the bits and pieces a novice needs to get started programming in Java.
First, you'll discover what type of language Java is, what it is good for, and how it is executed. With the theory out of the way, you'll install Java, choose an editor such as IntelliJ IDEA, and write your first simple Java program. Along the way you'll compile and execute this program so it can run on any platform that supports Java. As part of this tutorial you'll see how to write high-quality c ...
Pro ASP.NET Core 6, 9th EditionProfessional developers will produce leaner applications for the ASP.NET Core platform using the guidance in this best-selling book, now in its 9th edition and updated for ASP.NET Core for .NET 6. It contains detailed explanations of the ASP.NET Core platform and the application frameworks it supports. This cornerstone guide puts ASP.NET Core for .NET 6 into context and dives deep into the tools and techniques required to build modern, extensible web applications. New features and capabilities such as MVC, Razor Pages, Blazor Server, and Blazor WebAssembly are covered, along with demonstrations of how they are applied.
ASP.NET Core for .NET 6 is the latest evolution of Microsoft's ASP.NET web platform and provides a "host-agnostic" framework and a high-productivity programming model that promotes cleaner code architecture, test-driven development, and powerful extensibility.
Author Adam Freeman has thoroughly revised this market-leading book and explains how to get the most from ...
Fundamentals of Computer Programming with C#This open book aims to provide novice programmers solid foundation of basic knowledge regardless of the programming language. This book covers the fundamentals of programming that have not changed significantly over the last 10 years. Educational content was developed by an authoritative author team led by Svetlin Nakov from the Software University (SoftUni) and covers topics such as variables conditional statements, loops and arrays, and more complex concepts such as data structures (lists, stacks, queues, trees, hash tables, etc.), and recursion recursive algorithms, object-oriented programming and high-quality code. From the book you will learn how to think as programmers and how to solve efficiently programming problems. You will master the fundamental principles of programming and basic data structures and algorithms, without which you can't become a software engineer.
If you want to learn programming and software development and become a software engineer and start a job in a ...
Practical DoomsdayAs a leading security engineer, Michal Zalewski has spent his career methodically anticipating and planning for cyberattacks. In Practical Doomsday, Zalewski applies the same thoughtful, rational approach to preparing for disasters of all kinds. By sharing his research, advice, and a healthy dose of common sense, he'll help you rest easy knowing you have a plan for the worst - even if the worst never comes.
The book outlines a level-headed model for evaluating risks, one that weighs the probability of scenarios against the cost of preparing for them. You'll learn to apply that model to the whole spectrum of potential crises, from personal hardships like job loss or a kitchen fire, to large-scale natural disasters and industrial accidents, to recurring pop-culture fears like all-out nuclear war. You'll then explore how basic lifestyle adjustments, such as maintaining a robust rainy-day fund, protecting yourself online, and fostering good relationships with your neighbors, can boost y ...
The Hardware Hacking HandbookEmbedded devices are chip-size microcomputers small enough to be included in the structure of the object they control, and they're everywhere - in phones, cars, credit cards, laptops, medical equipment, even critical infrastructure. This means understanding their security is critical. The Hardware Hacking Handbook takes you deep inside different types of embedded systems, revealing the designs, components, security limits, and reverse-engineering challenges you need to know for executing effective hardware attacks.
Written with wit and infused with hands-on lab experiments, this handbook puts you in the role of an attacker interested in breaking security to do good. Starting with a crash course on the architecture of embedded devices, threat modeling, and attack trees, you'll go on to explore hardware interfaces, ports and communication protocols, electrical signaling, tips for analyzing firmware images, and more. Along the way, you'll use a home testing lab to perform fault-injecti ...
The Art of CyberwarfareCyber attacks are no longer the domain of petty criminals. Today, companies find themselves targeted by sophisticated nation state attackers armed with the resources to craft scarily effective campaigns. This book is a detailed guide to understanding the major players in these cyber wars, the techniques they use, and the process of analyzing their advanced attacks. Whether you're an individual researcher or part of a team within a Security Operations Center (SoC), you'll learn to approach, track, and attribute attacks to these advanced actors.
The first part of the book is an overview of actual cyber attacks conducted by nation-state actors and other advanced organizations. It explores the geopolitical context in which the attacks took place, the patterns found in the attackers' techniques, and the supporting evidence analysts used to attribute such attacks.
Dive into the mechanisms of: North Korea's series of cyber attacks against financial institutions, which resulted in billio ...
An Atypical ASP.NET Core 6 Design Patterns Guide, 2nd EditionAn Atypical ASP.NET Core 6 Design Patterns Guide, Second Edition approaches programming like playing with LEGO®: snapping small pieces together to create something beautiful. Thoroughly updated for ASP.NET Core 6, with further coverage of microservices patterns, data contracts, and event-driven architecture, this book gives you the tools to build and glue reliable components together to improve your programmatic masterpieces.
The chapters are organized based on scale and topic, allowing you to start small and build on a strong base, the same way that you would develop a program. You will begin by exploring basic design patterns, SOLID architectural principles, dependency injection, and other ASP.NET Core 6 mechanisms. You will explore component-scale patterns, and then move to higher level application-scale patterns and techniques to better structure your applications. Finally, you'll advance to the client side to connect the dots with tools like Blazor and make ASP.NET Core a viab ...
Blazor for ASP NET Web Forms DevelopersBlazor is a new web framework that changes what is possible when building web apps with .NET. Blazor is a client-side web UI framework based on C# instead of JavaScript. With Blazor you can write your client-side logic and UI components in C#, compile them into normal .NET assemblies, and then run them directly in the browser using a new open web standard called WebAssembly. Or alternatively, Blazor can run your .NET UI components on the server and handle all UI interactions fluidly over a real-time connection with the browser. When paired with .NET running on the server, Blazor enables full-stack web development with .NET. While Blazor shares many commonalities with ASP.NET Web Forms, like having a reusable component model and a simple way to handle user events, it also builds on the foundations of .NET to provide a modern and high-performance web development experience.
This book introduces ASP.NET Web Forms developers to Blazor in a way that is familiar and convenient. It introdu ...
Pro Serverless Data Handling with Microsoft AzureDesign and build architectures on the Microsoft Azure platform specifically for data-driven and ETL applications. Modern cloud architectures rely on serverless components more than ever, and this book helps you identify those components of data-driven or ETL applications that can be tackled using the technologies available on the Azure platform. The book shows you which Azure components are best suited to form a strong foundation for data-driven applications in the Microsoft Azure Cloud.
If you are a solution architect or a decision maker, the conceptual aspects of this book will help you gain a deeper understanding of the underlying technology and its capabilities. You will understand how to develop using Azure Functions, Azure Data Factory, Logic Apps, and to employ serverless databases in your application to achieve the best scalability and design. If you are a developer, you will benefit from the hands-on approach used throughout this book. Many practical examples and architectu ...
Effective Software TestingEffective Software Testing teaches you a systematic approach to software testing that will ensure the quality of your code. It's full of techniques drawn from proven research in software engineering, and each chapter puts a new technique into practice. Follow the real-world use cases and detailed code samples, and you'll soon be engineering tests that find bugs in edge cases and parts of code you'd never think of testing! Along the way, you'll develop an intuition for testing that can save years of learning by trial and error.
Effective testing ensures that you'll deliver quality software. For software engineers, testing is a key part of the development process. Mastering specification-based testing, boundary testing, structural testing, and other core strategies is essential to writing good tests and catching bugs before they hit production.
Effective Software Testing is a hands-on guide to creating bug-free software. Written for developers, it guides you through all the differe ...