Develop innovative architectural styles by analyzing and merging various approaches, focusing on making trade-offs and mitigating risks to solve real-world problems
Key Features
Learn how to analyze and dissect various architectural styles into building blocks
Combine existing ideas with your own to create custom solutions
Make informed decisions by navigating trade-offs and compromises
Purchase of the print or Kindle book includes a free PDF eBook
Book DescriptionSoftware Architecture with Kotlin explores the various styles of software architecture with a focus on using the Kotlin programming language. The author draws on their 20+ years of industry experience in developing large-scale enterprise distributed systems to help you grasp the principles, practices, and patterns that shape the architectural landscape of modern software systems.
The book establishes a strong foundation in software architecture, explaining key concepts such as architectural qualities and principles, before teaching you how architectural decisions impact the quality of a system, such as scalability, reliability, and extendability. The chapters address modern architecture topics such as microservices, serverless, and event-driven architectures, providing insights into the challenges and trade-offs involved in adopting these architectural styles. You'll also discover practical tools that'll help you make informed decisions and mitigate risks. All architectural patterns in this book are demonstrated using Kotlin.
By the end of this book, you'll have gained practical expertise by using real-world examples, along with a solid understanding of Kotlin, to become a more proficient and impactful software architect.What you will learn
Master the fundamental principles of architecture and design
Explore common architectural styles and their applicable scenarios
Analyze, break down, compare, and design architectural styles to solve practical problems
Reason, negotiate, and make difficult choices in the absence of ideal solutions
Mitigate risks when making compromises and trade-offs
Create scalable, sustainable, maintainable, and extendable software systems
Use the Kotlin programming language to achieve your architectural goals
Who this book is forThis book is for developers with basic Kotlin knowledge seeking a deeper understanding of architecture, Kotlin Android developers who are starting to get involved in backend development, and Java developers transitioning to Kotlin. It's also ideal for software architects who are less experienced in Kotlin and want to enhance their skills, as well as those who enjoy discussing and exploring unique architectural concepts.
Sprache
Verlagsort
Zielgruppe
Maße
Höhe: 235 mm
Breite: 191 mm
Dicke: 25 mm
Gewicht
ISBN-13
978-1-83546-186-0 (9781835461860)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Klassifikation
Jason (Tsz Shun) Chow has been working in the software industry since 2001. He is a Senior Vice President at CAIS, an alternative investment platform, with a focus on the complex domain modeling of private equity and hedge funds, combined with unified design and the use of artificial intelligence. Prior to this, Tsz Shun was a Principal Engineer at 11:FS, a digital fintech consultancy focused on building digital strategies and lovable products aimed at changing the fabric of financial services. In the early 2010s, Tsz Shun worked at IG Index on several latency-sensitive financial exchange services and authored the public APIs in the FIX protocol.
Table of Contents
The Essence of Software Architecture
Principles of Software Architecture
Polymorphism and Alternatives
Peer-to-Peer and Client-Server Architecture
Exploring MVC, MVP, and MVVM
Microservices, Serverless, and Microfrontends
Modular and Layered Architectures
Domain-Driven Design (DDD)
Event Sourcing and CQRS
Idempotency, Replication, and Recovery Models
Auditing and Monitoring Models
Performance and Scalability
Testing
Security
Beyond Architecture