In this course, you will build a real-world application three times, using three different Xamarin platforms, giving you tremendous insight into how Xamarin programs are created and how they relate to the underlying technologies. This course covers creating the user interface, the data model, and the logic of the program. Data and Event Handling are key parts of this course as is persistence to a SQLite database.
Introduction Hi, this is Jesse Liberty from Pluralsight and this course is Beginning Mobile Development with Xamarin. The first thing to check is whether this class is right for you. All we assume is a background in C-Sharp and possibly having taken a course or being familiar with XAML for Xamarin Forms. Pluralsight has a course on that and you may want to check that, or other sources, to become familiar with XAML.
Creating Your First Xamarin.Forms Application Hi, this is Jesse Liberty for Pluralsight, and this module is Creating Your First Xamarin Forms Application. A little background to help us get oriented, Xamarin Forms sits on top of Xamarin iOS, Xamarin Android, and directly on top of the WinPhone's SDK. Our focus, however, is just going to be on Xamarin iOS and Xamarin Android, each of which sit on the native SDK. So when you're working with Xamarin. Forms, it is ultimately translated into the native SDK, which gives you a powerful way to develop your UI and still take advantage of direct to the metal SDK code. So, just to review, we'll be working with Xamarin. Forms, and then later in this course, we'll be working with Xamarin for iOS and Xamarin for Android one level down, but let's start with Xamarin. Forms. Xamarin. Forms is a relatively new innovation from Xamarin. We're going to take a look at how we create an app. We're going to talk about why we would use forms, and then we'll look at pages, views, layouts, the building blocks of creating a UI. We'll gather data from the user, and we'll display that data as well. We start with the concept of a pafe, such as a content page, and in the page are layouts. The most common is the stack layout, which puts one thing on top of another, or next to another, but there are other layouts, and inside the layout are views. Views are what Xamarin calls controls. So these include labels, and sliders, and buttons, and so forth. Let's take a look at an extended demo.
Collections, Persistence, and MVVM Hi, this is Jesse Liberty from Pluralsight, and this module is Using Data Binding in ListView and Persisting Your Data. Data binding is one of the most important topics in XAML, and the way it works is that you start with a source object and you bind it to a target object. The source can be any object at all, the target must be a bindable object, and the magic between them is data binding. For example, you might bind a to do task to a label. With data binding in hand, we're going to talk about MVVM, which stands for Model, View, and ViewModel. The model is your data. The view is your UI, and the ViewModel is the logic of your program. A lot of folks are intimidated a bit by MVVM. Others are so sold on it that they might try to convince you subtly, to use it. Our experience is that once you're comfortable with MVVM, it is a very rewarding pattern. The secret of MVVM is that the view can see the view model. The view model can see the model, but don't look up. The model should never see the view model, the view model should never see the view. All of this depends on data binding. To get started, we're going to create three folders, one for each view, view model, and model, and put as much logic as we can in the view model. Views typically are one to one with their view model.
Creating Your First iOS Application Hi, this is Jesse Liberty from Pluralsight, and this module is Creating Your First iOS Application. As you know, iOS and Android are the foundations for Xamarin. Forms. However, in this module, we're going to be focusing just on the Xamarin iOS piece, which sits on top of the iOS SDK, but we're going to be focusing on the Xamarin iOS. To understand iOS, you really need to understand Model View Controller, MVC. That's the primary pattern of iOS development. In MVC, the Model is the data, the View is the screens, and the Controller manages the view. The Controller manages the View by way of the Model. That is, the Controller talks to the Model, and the Model talks to the View. In iOS, only one screen is visible at any given time, therefore, each new screen is stacked on the previous. The bottom-most screen is called the root controller. Remember that the navigation controller has no user interface. So, where do we go from here? We're going to create a bare-bones user interface, enter data, and pass it to a second screen, and then display that data as a list on the second screen.
Implementing Data Operations and Adding Persistence Hi, this is Jesse Liberty from Pluralsight, and this module is Implementing Data Operations and Adding Persistence. We're going to go right back to the code, make the UI look a little bit better, create a model class, and then go ahead and add persistence to our project.
Creating Your First Android Application Hi, this is Jesse Liberty from Pluralsight, and this module is Creating Your First Android Application. Previously, we've looked at Xamarin. Forms, and we've also looked at how they depend on Xamarin iOS and Xamarin Android. In the previous module, we looked at Xamarin iOS. In this module, we look at Xamarin Android. Xamarin Android is a bit different from Xamarin iOS, and has its own unique approach. For example, Xamarin Android uses Intents. Intents are a little bit abstract. They indicate an operation that should be performed, and a very common use of an intent is to do something or to navigate. Also somewhat abstract is the idea of an activity. An activity is virtually a stand alone application. Android applications consist of a set of activities. For today, the best way to think of an activity is as a page.
Implementing Event Handling and Persistence Hi, this is Jesse Liberty for Pluralsight, and this is Implementing Event Handling and Persistence. We already have experience with event handling. An even is when something happens. Typical events are the user pushing a button, or a system clock timing out, or any number of things where something has happened and must be responded to. An event handler is something that does that response, such as the code that is executed when you click a button. We'll also take a look at persistence, which is the ability to write your data to, among other things, a database so that they persist after the application closes, or is closed by the operating system. We'll look at saving to a database and retrieving from a database.