Real-World Software DevelopmentExplore the latest Java-based software development techniques and methodologies through the project-based approach in this practical guide. Unlike books that use abstract examples and lots of theory, Real-World Software Development shows you how to develop several relevant projects while learning best practices along the way.
With this engaging approach, junior developers capable of writing basic Java code will learn about state-of-the-art software development practices for building modern, robust and maintainable Java software. You'll work with many different software development topics that are often excluded from software develop how-to references.
Featuring real-world examples, this book teaches you techniques and methodologies for functional programming, automated testing, security, architecture, and distributed systems. ...
Architecture Patterns with PythonAs Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are taking an interest in high-level software design patterns such as hexagonal/clean architecture, event-driven architecture, and the strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Python isn't always straightforward.
With this hands-on guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity - and get the most value out of their test suites.
Each pattern is illustrated with concrete examples in beautiful, idiomatic Python, avoiding some of the verbosity of Java and C# syntax. Patterns include: Dependency inversion and its links to ports and adapters (hexagonal/clean architecture); Domain-driven design's distinction between Entities, Value Objects, and Aggregates; Repository and Unit of Work patterns for persistent storag ...
Programming AWS LambdaServerless revolutionizes the way organizations build and deploy software. With this hands-on guide, Java engineers will learn how to use their experience in the new world of serverless computing. You'll discover how this cloud computing execution model can drastically decrease the complexity in developing and operating applications while reducing costs and time to market.
Engineering leaders John Chapin and Mike Roberts guide you through the process of developing these applications using AWS Lambda, Amazon's event-driven, serverless computing platform. You'll learn how to prepare the development environment, program Lambda functions, and deploy and operate your serverless software. The chapters include exercises to help you through each aspect of the process.
Get an introduction to serverless, functions as a service, and AWS Lambda; Learn how to deploy working Lambda functions to the cloud; Program Lambda functions and learn how the Lambda platform integrates with other AWS serv ...
Practical Oracle Cloud InfrastructureUse this fast-paced and comprehensive guide to build cloud-based solutions on Oracle Cloud Infrastructure. You will understand cloud infrastructure, and learn how to launch new applications and move existing applications to Oracle Cloud. Emerging trends in software architecture are covered such as autonomous platforms, infrastructure as code, containerized applications, cloud-based container orchestration with managed Kubernetes, and running serverless workloads using open-source tools. Practical examples are provided.
This book teaches you how to self-provision the cloud resources you require to run and scale your custom cloud-based applications using a convenient web console and programmable APIs, and you will learn how to manage your infrastructure as code with Terraform. You will be able to plan, design, implement, deploy, run, and monitor your production-grade and fault-tolerant cloud software solutions in Oracle's data centers across the world, paying only for the resources you ...
Introducing Jakarta EE CDIDiscover the Jakarta EE Contexts and Dependency Injection (CDI 2.0) framework which helps you write better code through the use of well-defined enterprise Java-based components and beans (EJBs). If you have ever wanted to write clean Java EE code, this short book is your best guide for doing so: you will pick up valuable tips along the way from your author's years of experience teaching and coding. Introducing Jakarta EE CDI covers CDI 2.0 in detail and equips you with the theoretical underpinnings of Java EE, now Jakarta EE.
This book is packed with so much that by the end of it, you will feel confident to use your new-found knowledge to help you write better, readable, maintainable, and long-lived mission-critical software.
- Write better code with the Jakarta EE Contexts and Dependency Injection (CDI) framework
- Work with the powerful, extensible, and well-defined contextual life cycle for components
- Use CDI's mechanism for decoupling application components through a typ ...
The Java WorkshopYou already know you want to learn Java, and a smarter way to learn Java 12 is to learn by doing. The Java Workshop focuses on building up your practical skills so that you can develop high-performance Java applications that work flawlessly within the JVM across web, mobile and desktop. You'll learn from real examples that lead to real results.
Throughout The Java Workshop, you'll take an engaging step-by-step approach to understanding Java. You won't have to sit through any unnecessary theory. If you're short on time you can jump into a single exercise each day or spend an entire weekend learning about Reactive programming and Unit testing. It's your choice. Learning on your terms, you'll build up and reinforce key skills in a way that feels rewarding.
Every physical print copy of The Java Workshop unlocks access to the interactive edition. With videos detailing all exercises and activities, you'll always have a guided solution. You can also benchmark yourself against assessment ...
Building Secure and Reliable SystemsCan a system be considered truly reliable if it isn't fundamentally secure? Or can it be considered secure if it's unreliable? Security is crucial to the design and operation of scalable systems in production, as it plays an important part in product quality, performance, and availability. In this book, experts from Google share best practices to help your organization design scalable and reliable systems that are fundamentally secure.
Two previous O'Reilly books from Google - Site Reliability Engineering and The Site Reliability Workbook - demonstrated how and why a commitment to the entire service lifecycle enables organizations to successfully build, deploy, monitor, and maintain software systems. In this latest guide, the authors offer insights into system design, implementation, and maintenance from practitioners who specialize in security and reliability. They also discuss how building and adopting their recommended best practices requires a culture that's supportive of such c ...
High Performance Python, 2nd EditionYour Python code may run correctly, but you need it to run faster. Updated for Python 3, this expanded edition shows you how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. By exploring the fundamental theory behind design choices, High Performance Python helps you gain a deeper understanding of Python's implementation.
How do you take advantage of multicore architectures or clusters? Or build a system that scales up and down without losing reliability? Experienced Python programmers will learn concrete solutions to many issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and more.
Get a better grasp of NumPy, Cython, and profilers; Learn how Python abstracts the underlying computer architecture; Use profiling to find bottlenecks in CPU time and memory usage; Write efficient programs by choosing appropriate data structures; Speed up matrix ...
Learning Java, 5th EditionIf you're new to Java - or new to programming - this best-selling book will guide you through the language features and APIs of Java 11. With fun, compelling, and realistic examples, authors Marc Loy, Patrick Niemeyer, and Daniel Leuck introduce you to Java fundamentals - including its class libraries, programming techniques, and idioms - with an eye toward building real applications.
You'll learn powerful new ways to manage resources and exceptions in your applications - along with core language features included in recent Java versions.
Develop with Java, using the compiler, interpreter, and other tools; Explore Java's built-in thread facilities and concurrency package; Learn text processing and the powerful regular expressions API; Write advanced networked or web-based applications and services. ...
Knative CookbookEnterprise developers face several challenges when it comes to building serverless applications, such as integrating applications and building container images from source. With more than 60 practical recipes, this cookbook helps you solve these issues with Knative - the first serverless platform natively designed for Kubernetes. Each recipe contains detailed examples and exercises, along with a discussion of how and why it works.
If you have a good understanding of serverless computing and Kubernetes core resources such as deployment, services, routes, and replicas, the recipes in this cookbook show you how to apply Knative in real enterprise application development. Authors Kamesh Sampath and Burr Sutter include chapters on autoscaling, build and eventing, observability, Knative on OpenShift, and more.
With this cookbook, you'll learn how to: Efficiently build, deploy, and manage modern serverless workloads; Apply Knative in real enterprise scenarios, including advanced eventi ...