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.
A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content
How can I cancel my subscription?
To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.
What are credits?
Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.
What happens if an Early Access Course is cancelled?
Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.
Where can I send feedback about an Early Access title?
If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team.
Can I download the code files for Early Access titles?
We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.
When we publish the book, the code files will also be available to download from the Packt website.
How accurate is the publication date?
The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.
How will I know when new chapters are ready?
We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.
I am a Packt subscriber, do I get Early Access?
Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.
How is Early Access delivered?
Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.
How do I buy Early Access content?
Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.
What is Early Access?
Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.