Packed with real-world scenarios and solutions to help you build professional grade mobile apps with Xamarin.Forms
Includes design patterns and best practice techniques that every mobile developer should know
Description
Discover how to extend and build upon the components of the most recent version of Xamarin.Forms to develop an effective, robust mobile app architecture. This new edition features Xamarin.Forms 4 updates, including CollectionView and RefreshView, new coverage of client-side validation, and updates on how to implement user authentication.
Mastering Xamarin.Forms, Third Edition is one of the few Xamarin books structured around the development of a simple app from start to finish, beginning with a basic Xamarin.Forms app and going step by step through several advanced topics to create a solution architecture rich with the benefits of good design patterns and best practices.
This book introduces a core separation between the app's user interface and the app's business logic by applying the MVVM pattern and data binding, and then focuses on building a layer of plugin-like services that handle platform-specific utilities such as navigation and geo-location, as well as how to loosely use these services in the app with inversion of control and dependency injection. You’ll connect the app to a live web-based API and set up offline synchronization before testing the app logic through unit testing. Finally, you will learn how to add monitoring to your Xamarin.Forms projects to track crashes and analytics and gain a proactive edge on quality.
Who is this book for?
This book is intended for .NET developers who are familiar with Xamarin mobile application development and the open source Xamarin.Forms toolkit. If you have already started working with Xamarin.Forms and want to take your app to the next level, making it more maintainable, testable and flexible, then this book is for you.
What you will learn
Find out how, when, and why to use architecture patterns and best practices with Xamarin.Forms
Implement the Model-View-ViewModel (MVVM) pattern and data binding in Xamarin.Forms mobile apps
Incorporate client-side validation in Xamarin.Forms mobile apps
Extend the Xamarin.Forms navigation API with a custom ViewModel-centric navigation service
Leverage the inversion of control and dependency injection patterns in Xamarin.Forms mobile apps
Work with online and offline data in Xamarin.Forms mobile apps
Use platform-specific APIs to build rich custom user interfaces in Xamarin.Forms mobile apps
Explore how to monitor mobile app quality using Visual Studio App Center
If you have never tried Xamarin.Forms it can be very intimidating to jump in as a good Xamarin.Forms developer needs to understand iOS, Android and the Xamarin.Forms APIs. This book touches on every aspect of mobile app development from writing XAML, custom native renderers and app monitoring/analytics. I now recommend this book to Xamarin Developers and team members.Mastering Xamarin.Forms walks you through building a travel logging app from start to finish. This method of writing allows the app that is being written in each chapter to build on itself. There are detailed code samples for the reader to follow along using Visual Studio on windows or mac. I recommend to read the book chapter-to-chapter, but afterwards it is a great reference.I really enjoyed seeing the detailed code samples and explanations for all the popular topics. The author goes into detail about different open source projects in the Xamarin Ecosystem and shows the value of leveraging these libraries. Offline Data is a common troublesome topic in any mobile app, the chapter dedicated to offline data provides excellent advice for getting started in offline data.
Amazon Verified review
JshApr 20, 2020
5
The blurb on the back cover says “Master Xamarin.Forms, Third Edition is one of the few Xamarin books structured around the development of a simple app from start to finish, beginning with a basic Xamarin.Forms app and going step by step through several advanced topics to create a solution architecture rich with the benefits of good design patterns and best practices”. That’s a fair description. I’ve read a lot of Xamarin.Forms books (probably the majority of Xamarin.Forms books), having been working with Xamarin.Forms solidly for 5+ years, and this is the best example I have seen of building up an app from scratch using good design patterns and practices.Whilst there are parts of the book where I would have liked it to go a bit further, there are bits where I would have liked an explanation of the pros and cons of possible alternatives rather than immediately pursuing one choice, and there are bits that I would do differently in complex apps, for the most part I find myself very satisfied with this book. It’s good to see the way that experienced developers do things. I already make use of some of Ed Snider’s work, using a NuGet that he worked on in my current app, as well as having used some of his code as a starting point that I have then adapted. As a result, I knew that Ed knows his stuff, and this book confirms that.One thing that I am also appreciative of, is that this book is well written and proofread. Whilst I haven’t typed all of the code in to check it, what I haven’t done is highlight error after error in the text, which is what I find myself doing in many of the Xamarin.Forms books that I have read. This one has been written well, so I haven’t been distracted from the technical content by errors in use of language.Recommended for intermediate and advanced developers.
Amazon Verified review
Alexandre MalavasiJan 10, 2020
5
I just read a review copy of the this book written by Microsoft MVP Ed Snider and found it really easy to understand, even if the reader is not a Xamarin Developer, but is just familiar with .NET/C# platform.The book is absolutely worthwhile read for anyone who already knows and works with Xamarin, because it’s not only all of Xamarin.Forms 4' many features, it also takes you to the next level by showing you how to build high quality and standard enterprise mobile applications.I like the way the author explores the recommended approach for good and scalable architecture and the detailed explanation of the View-ViewModel (MVVM) framework. If you have never worked with this pattern, which is mandatory for a standard Xamarin app, the book is full of detailed examples that explain these patterns and show you how to put them to practical use.The book also contains a complete content reference to handling data between the App and external API’s Rest, covering local cache data, integrating with Azure Functions, HTTP requests and more.Given the breadth of its coverage from implementation from scratch with Authentication, to architecture design, API data service, unit tests, and dependency injection examples, I highly recommend this book for any mobile developers who want to learn Xamarin or go into it deeply. It is very well-written and offers lots of useful insights. Of all the books out there on Xamarin.Forms, this is the best one.
Amazon Verified review
Alvin AshcraftJan 19, 2020
5
There aren’t a lot of great Xamarin books available, but you can add this one to the shortlist. Mastering Xamarin.Forms by Ed Snider is a fantastic reference for mobile developers. If you’re a .NET developer with at least some exposure to Xamarin development, this book will give you the knowledge you need to build great mobile apps with Xamarin.Forms with Visual Studio on your Mac or Windows environment.Snider takes my favorite approach when writing the book. He builds an end-to-end sample app throughout the book, building onto it with the patterns and practices learned in each chapter. For me, getting hands-on and building a real-world app while reading a book or watching a video training course reinforces the lessons. The app in this book is a TripLog, which can be used as a travel log or diary.After creating the project and a couple of initial screens, Snider dives right into some patterns for mobile app development, starting with the MVVM (model-view-view model) pattern. With each pattern or practice, he explains the concept, how to implement it in Xamarin.Forms and .NET, and then explains how our apps benefit from the implementation. For MVVM, he goes into data binding and validation, which become trivial with the pattern.The next several chapters detail best practices for navigation, leveraging dependency injection to create platform-specific implementations across iOS, Android or UWP on Windows, and some UI tips for handling platform differences through custom renderers. Snider pulls some Azure concepts into the book with Azure Functions. Learn to make API calls from an app service into Azure Functions and then add authentication to Azure Functions and a login screen to the app. I’ve never used any data caching frameworks in my mobile apps, so the section on Akavache for caching was really helpful. It was pretty trivial to add some offline caching to the Xamarin app.The unit testing section is really thorough. I have seen many .NET books that just glance over the topic of unit testing and best practices for testing, but Snider really gives a solid base for readers here. Finally, in the final chapter, monitoring is covered. He mainly explains how to set up Visual Studio App Center to track some usage and the health of the app while it’s running out in the world. When optimally configured, this data can give the information developers need to keep their user base happy and engaged. Kudos to Ed Snider for a really well-written book for Xamarin.Forms developers. I strongly encourage you to check it out if you’re getting serious about building mobile apps.
Ed Snider is a senior software developer, speaker, author, and Microsoft MVP based in the Washington D.C./Northern Virginia area. He has a passion for mobile design and development and regularly speaks about Xamarin and Windows app development in the community. Ed works at InfernoRed Technology, where his primary role is working with clients and partners to build mobile and media focused products on iOS, Android, and Windows. He started working with the .NET framework in 2005 when .NET 2.0 came out and has been building mobile apps with .NET since 2011. Ed blogs at edsnider[dot]net and can be found on Twitter at twitter[dot]com/edsnider.
Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.
If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.
Please Note: Packt eBooks are non-returnable and non-refundable.
Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:
You may make copies of your eBook for your own use onto any machine
You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website?
If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:
Register on our website using your email address and the password.
Search for the title by name or ISBN using the search option.
Select the title you want to purchase.
Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title.
Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook?
If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
To view your account details or to download a new copy of the book go to www.packtpub.com/account
Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.
You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.
What are the benefits of eBooks?
You can get the information you need immediately
You can easily take them with you on a laptop
You can download them an unlimited number of times
You can print them out
They are copy-paste enabled
They are searchable
There is no password protection
They are lower price than print
They save resources and space
What is an eBook?
Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.
When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.
For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.