Building Modern SaaS Applications with C# and .NET: Build, deploy, and maintain professional SaaS applications
T**Y
Great Reference for SaaS
SaaS applications currently occupy a US market space of about $275 billion, with growth expected at about 20% per year over the next five years. If you are working in this space or have not even thought about the possibilities, then “Building Modern SaaS Applications with C# and .Net” (Packt, 2023) by Andy Watt should be a must-read. The book fills every chapter with detailed coding instructions, best practices, and comparative reviews of tools and functions. The learning begins with introductory chapters on SaaS, moves into back-end and front-end considerations, and finishes with deployment considerations. Overall, this was an excellent read on SaaS in general and even better if you already use Microsoft applications and languages. The first section hops right into the learning. After a quick review of Software-as-a-Service applications and principles, the next step builds directly into a demo app. There is the obligatory GitHub link but the code is also shown throughout for those inclined to more typing. I enjoyed that very little time was spent on the early stages with the book's meat devoted to learning. Of course, the first step of SaaS is building the backend to support all the needs. Beginning with multi-tenancy, the sections cover databases, REST-ful APIs and containerization. The multitenancy approach covers all those issues you wish you had known before. It delivers detailed information on working together in shared spaces and ensuring everyone gets what they want. The best metaphor would be as good to living with college roommates in dormitory halls before that process ever began. The rest follows with shared databases (Restrooms and common areas), RESTful APIs (Quiet hours and coed halls), and finishes up with containerization (shared suites and themed floors). Of course, after all those things are set as the initial structure, the challenge becomes interacting with those issues. Interaction with a SaaS requires a smooth front end. Front-ends depict the user interaction and then authorization. The user interaction piece is fairly straightforward, although, again, best practices for designing and employing are included. From a security mindset, the chapter on authentication and Authorization is great, depicting many of the shared access hurdles that quickly arise. Returning to a dorm mindset, who gets keys, whether those keys are physical or electronic, and how do you know someone in one of the hallways actually belongs in those hallways. My favorite section has to be the deploying piece. No matter how good one’s code, if it can’t be deployed, it just is not good enough. This section is heavily security-focused with an emphasis on monitoring and continuous operations. Out of every chapter in the book, the section on scaling was one of the best I’ve read. Every business that hopes to grow must be able to scale. This is perhaps the most dense, and most informative portion of the entire book. The lessons on scaling are tied to the author’s practical experience and include everything from the slow, progressive build to rapid expansion. I looked hard for something I didn’t like about this work and it was difficult to find. If anything, the length may have been a little excessive. It would have been good enough as either a SaaS reference or a specific volume on tools for C# and .Net applications. Having the two elements together could be a little much at times but it was still an excellent work. Overall, this one goes on the bookshelf. The samples, references, and definitions were precisely what the user needs to be able to build and maintain a SaaS environment. I recommend getting a copy of ““Building Modern SaaS Applications with C# and .Net” (Packt, 2023) by Andy Watt and placing it in a prominent desk position. All forms of cloud-native and other applications are using this approach, and your being intimately familiar with those approaches can only help whether you work in DevOps or some other technology interaction.
A**R
Good project based book with insightful SaaS planning
Overall the book was a good guide to understanding and planning a SaaS product using .Net. I gave it 4 stars as some information was missing making it a little difficult to follow. Chapter 8 was missing the entire section on implementing Authentication and Authorization in the example App. The GitHub code for each chapter is a helpful reference though.
L**N
Makes .NET supercool
Convinced I would never get another programming job, I randomly started cold calling recruiters in a panic.I am terrified all the time of being un-employed because I am awful at coding tests. The recruiter just kept repeating, "Learn Microservices!" It was obvious she did not know what a microservice was. Then I realized the horrible truth: I, a professional C# dev, did not know what a microservice was either.Enter:Building Modern SaaS Applications with C# and .NETSaaS applications are cool. Soooo cool. The 'Fonz' of the software world. Everyone I know, both developers and more often then not, non-developers, dreams of owning a SaaS application. Then we would finally be RICH. Monthly subscription revenue automatically appears in your bank account. You completely forget all about coding while you sip Muay Thais on the beach.You know what is not generally considered cool?.NET.NET is what you learn to get a job and work at a bank. If it is not cool, why do people learn .NET?I can give a three word answer which will hold true in absolutely every case: for the money.This book makes .NET cool. It brings you up to speed - on how to build modern SaaS applications.Front-end? the book uses Blazor. I'm going to be honest: I don't really like Blazor. I'm an Angular man myself (the author apparently is also an Angular dev). Still, it is quite amazing how far Blazor has come from when I first tried it.Speaking of front-end, the author believes, "The future is WebAssembly" but is it though?I enjoyed the refresher on Blazor WebAssembly (and Blazor server etc.)... but I still think it is pretty much a scam.Back to the reason I picked it up in the first place: microservices.Luckily, you don't have to jump right in to microservices. The author shows you how to carve off sections of the app into microservices when the need arises. So you can take your old fuddy duddy monothollithic architecture where all the functionality of the application is bundled into a single code base. and start small (start micro!).The author gives you four approaches for splitting your microservices:1. Functionality based approach2. Data-driven approach3. Domain-driven approach4. Micro-frontends.I am going to steal these and take credit for them.In theory this allows each service to be deployed and scaled independently - when use is low some resources can be turned off - when usage is high other resources can be turned on. The author's advice is "do not use microservices until you have to". Also, there is good general advice on designing for failure and using "circuit breakers', "Idempotence", and "health checks."I was not familiar with te various message borkers used in .NET microservice applications - but there is a good overview here, from RabbitMQ to NServiceBus.Apparently security is more challenging with microservices "There will often be multiple containers running all sorts of different software, each with its own set of attack vectors."Speaking of security: there is also an excellent overview of multi-tenancy for SaaS applications, and how to keep data secure and segregated. Tenant isolation is also covered of course. (The standard two levels of data segregation tenant vs user). Did you know you can even use only one entire database per tenant? Apparenlty you can! What a world.There is also a discussion of single-tenant SaaS applications - which I did not even know was possible.....And great little dev tips are sprinkled throughout the text.One little example is this. A neat little tip which I will try to trick my boss into thinking was his idea: allocate time each "sprint cycle" for chores. Small housekeeping tasks that might otherwise be left to grow into serious technical debt issues.Finally... it is nice that the code along project uses SQL Server Express.This is close enough to real SQL Server to count as valid practice. A lot of 'make a SaaS app with Blazor I see on the inter-webs use SQLite locally and then just upload the SQLITe database file to Azure. Naughty! This is how I learned. It seemed like a great plan until I got to a real programming job -- My actual SQL skills were no where close to a professional level.--LukeP.S. There is also a super cool image of a VAX terminal on page 7.P.P.S. The author's first online purchase ever was a Happy Gilmore DVD. LOL!
S**Y
Jumpstart your .Net Understanding by 6 YEARS
Where do I start other than, WOW?! I was not expecting there to be so much compacted into a single book. It's almost like a whole career of experience is in there. Having worked with SAAS applications leveraging .Net for the last 6+ years, this book will jump start the reader's understanding in the latest best practices and known methods for: TDD (Test Driven Development), Releases and Versioning, Multi-Tenancy, Database Design, RESTful APIs, Microservices, Front End UI/UX, Application Monitoring and Scaling, and much more! Basically everything that's taken me 6 years to learn on the job is in this book, and put together in a way that's easy to understand and learn conceptually. Save yourself the time and headache of learning on the job and being expected to output work simultaneously, and prepare for that interview with this book. It's definitely worth the read, IMO.
T**
A comprehensive read
This book is a must-have resource for anyone looking to master the art of building and maintaining professional SaaS applications. Author's expertise and comprehensive coverage of the subject make this book an essential reference for developers seeking to excel in the world of SaaS development. For developers and teams with expertise in traditional application development who want to transition to SaaS and produce sleek and contemporary applications, this book is ideal.
P**R
Ótimo para quem planeja construir um SaaS usando .NET C#
Direto ao ponto, sem enrolação. Explica bem o conceito de multi-tenancy e os exemplos são muito bons.
Trustpilot
4 days ago
2 months ago