The Complete Xamarin Developer Course: iOS And Android!
- Description
- Curriculum
- FAQ
- Reviews
So you’ve learnt some programming, but are struggling to get an interview, let alone a job.
Or you are stuck in a low paying programming job, and want to move up to a better, more senior position.
Maybe you have never programmed before, and are looking for a way to get into programming for the first time.
But, just how do you get employers to notice you? How do you make your resume stand out of the crowd of programmers looking for work?
By learning to create cross platform applications targeting both iOS and Android from the one codebase, using Xamarin.
What is Xamarin?
Xamarin is a Microsoft owned company, that allows developers, using a C#-shared codebase, to write native Android, iOS (and even Windows and MacOS) apps with native user interfaces and share code.
This means you can create an application once, and deploy it to both Android and iOS, both which run natively on the platform. One codebase, two platforms.
Learning to create apps with Xamarin makes you more valuable to your employer or clients as a result.
What does Xamarin mean to you?
You can create native Android and iOS apps that share up to 100% code! No more writing separate versions of apps for both platforms.
This is especially useful for indie developers or small teams who may not have had the resources to target both platforms. Now they can code once, and deploy to both platforms.
Ongoing maintenance costs are reduced because you have one code base! It also means by learning one language (C#) you can now write apps for both platforms.
The Microsoft Visual Studio software package is available on Windows and Mac, and both are shown in the course. You can use and deploy Xamarin whether you have a Windows machine or a Mac.
Xamarin creates native apps unlike most other cross platform tools, meaning the code you write and deploy from Xamarin is faster, and more efficient because it can target the inbuilt features of each platform.
Because Xamarin was recently purchased by Microsoft, you can be sure that it is getting the attention of small and large companies alike, meaning more opportunities are available for developers who have learnt and can use this technology to build apps (and you will learn to do that in this course).
Some of the key Xamarin things you will learn and be able to put to use in your own apps after going through this course include Xamarin Forms, Xamarin Classic, Using Azure Mobile App Services, Consuming REST services, Implementing SQLite databases and using the MVVM pattern (very important to learn and understand).
Why enrolling in this course is the best decision you can make.
Most other Xamarin courses only focus on Xamarin.Forms or Xamarin classic. BOTH are covered in this course. Also this course teaches you all about Azure Mobile App services (cloud database integration), which no other course teaches.
Your instructor, Eduardo Rosas, is a certified Xamarin Mobile Developer with 3 years of experience using the platform, and 5 years of experience using C#. He started developing apps for Windows Phone 7 back in 2012, which, just like Windows 8 and Windows 10, use C# and XAML, and uses those two languages for building Xamarin.Forms apps.
This means you are learning from someone who has all the professional training, skills, and experience you need to teach you how to become proficient in Xamarin the right way, as fast as possible.
If you are ready to get that first paid programming job, or to move up to a more senior programming position, then this course is for you!
After completing this course, you will have the necessary skills to be able to use Xamarin and create your own apps that target both iOS and Android.
The sooner you sign up for this course, the sooner you will have the skills and knowledge you need to increase your job or consulting opportunities. Xamarin skills are in high demand, as are Azure Mobile App services, and you will understand and be able to use both after going through this course.
Your new job or consulting opportunity awaits!
Why not get started today?
Click the Signup button to sign up for the course!
-
1What is Xamarin?
In this lecture, you will learn what is Xamarin and what it allows you to do
-
2Why use Xamarin
In this lecture you will identify the key benefits of using Xamarin for developing mobile apps over native or other cross-platform alternatives
-
3The Apps we'll build
In this lecture you will get a glimpse at the apps you will be creating thrughtout the course, to get an idea of what you will be learning to do with Xamarin Forms and Classic
-
4Getting the Source Code
In this lecture I will show you the different ways that you have available to get the source code for the course and for each lecture, so that as you progress to the course you always have a reference.
-
5Requirements
In this video you will identify the minimum required setup for developing Android and iOS apps with Xamarin, and how you could build iOS apps without a Mac computer
-
6Installing Xcode on macOS
In this lecture you will install Xcode, which installs the latest iOS SDK needed to develop Xamarin apps that target the iOS platform.
-
7Installing Xamarin on macOS
In this lecture you will continue to prepare your mac setup by installing Visual Studio for mac along with the Xamarin tools we'll use
-
8Installing Xamarin on Windows
In this lecture you will prepare a Windows computer for Xamarin development by installing Visual Studio 2017 Community along with the Xamarin tools
-
9Setting the connection between Visual Studio and a Mac computer
In this lecture you will set up the connection between Visual Studio on Windows and a Mac computer so you can design, debug and deploy iOS apps from Windows
-
10Creating a Project on Windows
In this lecture you will follow the steps necessary to create a Xamarin.Forms project on Visual Studio 2019
-
11Creating a Project on Mac
In this lecture you will follow the steps necessary to create a Xamarin.Forms project that uses Shared Projects for sharing code, on Visual Studio for Mac
-
12The Structure of the Projects
In this lecture you will familiarize yourself with how the projects are structured and learn how the iOS and Android projects are related to the Shared Project
-
13Introduction to XAML
In this lecture you will start to use XAML, the language that we will use to define the interface for our Forms applications, by adding an Entry, a Button and an event handler
-
14Coding the functionality of a button
In this lecture you will add the functionality of the application inside the event handler for a button, using C# code
-
15Testing our app in an Android emulator (macOS)
In this lecture you will create a new Android emulator using the Android Virtual Device Manager as well as run our application for the first time so we can take a look at the results of our code
-
16Testing our app in an Android emulator (Windows)
In this lecture you will create a new Android emulator using the Android Virtual Device Manager on Windows, as well as run our application for the first time so we can take a look at the results of our code
-
17Testing on an iOS simulator
In this lecture you will test your Xamarin.Forms app with one of the iOs simulators that is installed with Xcode, so we take a look at the differences with the Android version of our app.
-
18Remote iOS Simulator to Windows
In this lecture you will learn how you can launch your iOS simulators directly on Windows, using the remoted iOS simulator, but still relying on a macOS computer
-
19XAML Hot Reload
In this lecture we are going to learn how to use XAML Hot Reload, which will help us see, in real time, the result of our XAML code on an iOS or Android simulator.
-
20Debugging your Xamarin Apps
Three ways of debugging your application that will be very helpful for you as you try to identify the errors that are causing your application to malfunction
-
21Creating a Login Page with better Event Handlers
In this lecture you will create the login page for a new app using XAML, and learn a better way of creating event handlers
-
22Defining better Entry elements
In this lecture you will improve the user experience of the entries by changing keyboard types and setting password entries
-
23The Login Logic
In this lecture you will learn about booleans, if else statements and how to know if a string is null or empty, to set a basic login in functionality
-
24Navigation Page
In this lecture you will learn how to implement navigation between pages in Xamarin Forms using the Navigation Page
-
25Tabbed Page
In this lecture you will learn how to create a page that uses tabs to navigate between pages by using a TabbedPage and adding multiple pages
-
26Toolbar Item
In this lecture you will add a button to the title bar in the form of a ToolbarItem, and implement a navigation from the TabbedPage to a new Page
-
27XAML Resources
In this lecture you will use XAML resources to reuse XAML code that defines a theme color to be applied throughout the entire application
-
28Implicit XAML Styles
In this lecture you will define styles that are applied to controls in the interface, and reuse the definition of the styles for a more efficient XAML definition
-
29Explicit XAML Styles
In this lecture you will define styles that you can applu to controls in the interface when needed, and reuse the definition for a more efficient XAML code
-
30Creating a Console App
In this section you will create a console application, learn how it works, and test it with a quick hello world project
-
31Methods
In this lecture you will learn to define methods, call them, and make them return values, as well ashow they receive arguments
-
32Variables and Scope
In this lectureyou will learn about variables, how they are defined and used, how you can define implicit type variables, and how scope has an effect on them
-
33Methods and Variables Challenge
Use what you have learned so far to create new methods that each perform different functionalities, use class level variables and call your methods inside this Console project
-
34Classes and Namespaces
In this lecture you will learn about classes and namespaces, and how you can reference those classes from other namespaces by implementing using directives
-
35Objects - Instances of a Class
In this lecture you will learn how to create objects, or instances of a class, and how constructors can be overloaded to change their functionality
-
36Properties
In this lecture we will use properties as a way of securing private data, but still allowing that private data to be accessible up to the point that we define
-
37Overloading Methods
In this lecture you will learn how to overload methods, so you canhave multiple methods that have the same name, but use different signatures
-
38Inheritance
In this lecture you will learn about the core of object oriented programming, which is inheritance, you will learn to create child classes and use the base keyboard to call base-class methods
-
39Method Overriding
In this lecture you will learn how to override methods, so you can implement new functionality to existing methods, from child classes
-
40Interfaces
In this lecture you will start using interfaces, you will define a new interface and learn the difference between defining and implementing a member
-
41Implementing an Interface
In this lecture you will implement the interface that you defined earlier in a new class, and you will learn about the benefits of using interfaces when defining variables
-
42Asynchronous Programming
In this lecture you will learn the basics of asynchronous programming using the async and await operators for defining and waiting for a task to end
-
43Adding SQLite
In this lecture you will get the PCL, the Android, and the iOS projects ready for them to use SQLite by adding references to a NuGet package
-
44New App Constructor
In this lecture you will get the App class ready to start getting the SQLite database path from the iOs and Android projects by creating a new constructor
-
45Database Paths
In this lecture you will add platform specific code so each project passes a different database path for the SQLite database
-
46The Model of a Database Table
In this lecture you will create a class that will add as the model for one of the tables that will be used within the SQLite Database, which will have to include a primary key
-
47SQLite Atributes
In this lecture you will use SQLite atributes to define the primary key of a C# class, as well as the maximum lenght of a string class and the autoincrement inside the primary key
-
48Inserting into the Database
In this lecture you will learn to insert objects into a SQLite database, as well as how to establish a connection to the database and create tables
-
49Read from the Database
In this lecture you will establish a connection to a SQLite database and read one of it's tables, as well as use breakpoints to explore the value of the variable that will hold the list and use the ToList Linw method
-
50The IDisposable interface and Using statements
In this lecture you will learn to use using statements and use features of the IDisposable interface to be able to create more elegant and secure SQLite connections
-
51Data Binding
In this lecture you will learn about Data Binding and how it can help you use XAML in a more efficient way when communicating with C# objects
-
52ListView
In this lecture you will use a ListView and DataBinding to display in a list the elements that had been previously read from the SQLite database
-
53Updating and Deleting from Table
-
54Getting iOS Project ready for Maps
In this lecture you will prepare the iOS project to start displaying maps and to be able to get the user's location
-
55Getting Android Project ready for Maps
In this lecture you will prepare the Android project to start displaying maps and to get the user's location by getting a Google Maps API key and setting permissions
-
56Restricting API Key
In this lecture we will go through the steps necessary to restrict the Google Maps API Key so that only our application can use it to access Google Maps.
-
57Displaying Maps from XAML
In this lecture you will learn to define native map controls for both Android and iOS while sharing XAML code that works on both platforms
-
58Displaying the User's Location
In this lecture you will learn how to display the user's location on a Xamarin Forms map for both Android and iOS projects
-
59Handling Location Changes
In this lecture you will learn to set the center of the map to a point as well as to respond to location changes
-
60Exploring the Foursquare API
In this lecture you will explore the Foursquare API, identify one endpoint that will be usefull inside the application, and get an account ready to start making REST requests to that API
-
61Creating URL for REST Request
In this lecture you will get a URL ready to start making requests to the Foursquare API, while you learn about String formatting and constants
-
62Preparing Projects
In this lecture you will add references to the projects that are needed for the applications to be able to perform http requests and to deserialize json into C# objects
-
63Making HTTP Get Requests
In this lecture you will learn how to make http requests using the url we have created before, and start to evaluate the JSON response from the service
-
64Venue model from JSON
In this lecture you will use a tool that will allow you to understand what it takes to convert a JSON file into a C# folder
-
65Deserializing Json strings into C# objects
In this lecture you will learn how to convert, or deserialize, a JSON string, into a C# object and start using the retrieven information from the Foursquare service
-
66Custom Cells
In this lecture you will create your own custom cell and use it to display the Venue information into a ListView, using ViewCells instead of the TextCell you used before
-
67Updating the Post Model
In this lecture you will update the model so it has more properties, you will also learn to use exceptions for handling errors
-
68Displaying pins on a map
In this lecture you will learn to add location pins into the map, by using the information that was requested from the Foursquare API
-
69Displaying shared images
In this lecture you will learn how to display images on both Android and iOS that are shared and referenced directly from a Portable Class Library project
-
70Android Images
In this lecture you will create images for the icons that will appear inside the Android app, with the correct resolutions for different screens
-
71iOS Images
In this lecture you will create the images for the icons that will be displayed on the iOS app, with the correct resolutions to support all iPhones
-
72Displaying Platform Specific Images
In this lecture you will learn how to display the images that are in platform-specific projects, by using them directly from the PCL project
-
73Profile Page
In this lecture you will define the elements that are going to be displayed on the profile page, as well as get the ammount of posts in a SQLite table with the help of Linq
-
74Linq Distinct - Unique values from a list
In this lecture you will learn how to get unique values from a list by executing pure Linq queries and using the Distrinct operations on a list
-
75Linq Where - Filtering a list
In this lectiure you will learn how to filter from a list by using a where operation on a list with the help of Linq
-
76ListViews and Dictionaries
In this lecture you will learn to list dictionaries (both the value and the key) in a ListView, as well as another syntax for the Linq operations