Book Image

Mastering Cross-Platform Development with Xamarin

Book Image

Mastering Cross-Platform Development with Xamarin

Overview of this book

The main goal of this book is to equip you with the required know-how to successfully analyze, develop, and manage Xamarin cross-platform projects using the most efficient, robust, and scalable implementation patterns. This book starts with general topics such as memory management, asynchronous programming, local storage, and networking, and later moves onto platform-specific features. During this transition, you will learn about key tools to leverage the patterns described, as well as advanced implementation strategies and features. The book also presents User Interface design and implementation concepts on Android and iOS platforms from a Xamarin and cross-platform perspective, with the goal to create a consistent but native UI experience. Finally, we show you the toolset for application lifecycle management to help you prepare the development pipeline to manage and see cross-platform projects through to public or private release.
Table of Contents (19 chapters)
Mastering Cross-Platform Development with Xamarin
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Architectural patterns


The user interface of an application can be described as the packaging over the sum of all the moving parts underneath. As applications get more complex, the responsibilities of the user interface increase and it gets harder to package the product underneath. Leaving aside the static parts of the UI (that is, assets described in the previous sections of this chapter), it is the most volatile part of an application. In order to counteract the entropy that builds up throughout the application's lifetime, solve recurring problem patterns, and re-use modules, developers often utilize certain design patterns in their development efforts. Especially in cross-platform projects, the importance of these architectural design patterns have been proven to be irrefutable.

For demonstration purposes, let's use a simple form-submit scenario. In this implementation, the users will be greeted with a form they will have to fill in. Once all the required text fields are populated by the...