<

 

 

C# 8 & .NET CORE 6 MODERN CROSS-PLATFORM DEVELOPMENT

Build amazing cross-device and cross-platform applicationsโ€”web, mobile, and desktop alike with new C# and .NET Core

Request Curriculum      Get Advice

 

C# 8 and .NET Core 6 Modern Cross-Platform Development


  • Find out about the newest C# 10 features such as async streams and recursive patterns
  • Build an authentication service using ASP .NET Core Identity
  • Find out about XAML, the mark-up language behind native Windows apps
  • Create code-first migrations with Entity Framework Core
  • Understand Xamarin and Xamarin .Forms
  • Create a simple, comprehensive RESTFul API with ASP .NET Core 6.0 Web API
  • Build WPF desktop applications that utilize a Web API
  • Consume your Web API from a cross-platform mobile application

 


 

Live Sessions

1 Yr. Membership

Skill Level

Beginner

Career Coaching

Weekly Session

Course Durations

4 Weeks

Assignment

20 Hours

 

 

Instructor-led Live Online Classes


Our learn-by-building-project method enables you to build practical or coding experience that sticks. 95% of our learners say they have confidence and remember more when they learn by building real world projects which is required to work in your real life.

 

Cross-Platform Application Development Related Courses

 

Why Learn Cross-Platform Mobile Development?

Easy to Learn & Develop
Developing apps for multiple platforms is much easier than developing one app.
Keep Up With the Competition
If you want to keep up with the competition, cross platform app development is the way to go.
Essential For Successful Website
Cross-platform app development is a vital part of any website with an app.
Better Client-Side Development
Since these apps are developed for smartphones and tablet devices, the software needs to be compatible with both platforms.
Collaborative Environment
Collaborative development makes it easier for developers to work on the same project and share ideas with their peers & reduce time.
Build App for Multiple Platforms
You are be able to create an app that works across different platforms, available to users on more than one platform.

Different Platforms, Better Target Audience
Cross platform app development has helped developers to create apps that work efficiently with a wider audience.
Increased Visibility and Reach
The number of mobile users keeps increasing, which means more people are accessing the internet through their mobile devices.
Time savings For productivity
With cross-platform apps, you will have fewer hours spent on the front end of the process and increased productivity in the long run.
Reduced Costs
By developing an app for multiple platforms, youโ€™ll be using resources that are commonly available to all developers thus, reducing cost.
Leverage New Technologies
ew technologies like artificial intelligence, machine learning, and VR are driving cross-platform development.

C# & .NET Core Modern Cross-Platform Development Overview

Description
C# is rapidly approaching the third decade of its newest features. It helps in preventing the null reference exceptions that have riddled object-oriented programming. C# and .NET Core combined give developers a new sense of robustness, flexibility, and efficiency to build amazing applications inside and outside the MS ecosystem. There are several improvements and additions to the language and framework in this upcoming release.

After quickly taking you through C# 8 and how .NET Core 3.0 works, you'll explore topics such as packaging and deploying your own libraries, working with Visual Studio and other relevant tools, and using common libraries to work with collections, performance, databases, and encryption.

The course practically demonstrates the major types of applications that you can build and deploy cross-device and cross-platformโ€”web, mobile, and desktop alike.
Requirements
Who have some exposure to C# and .NET Core, and are able to pick up the basics quickly and are interested in learning how they can take advantage of the language and framework to build robust cross-platform applications.
Who this course is for?
This course is for programmers and developers.

 

Course Contents


Nullable reference types are a new feature in C# 8:

01. Compare the same with nullable value types
02. Activate NullableContextOptions in Visual Studio 2022
03. Demonstrate nullable reference types

Async/await is very powerful when it comes to managing async data, but it does not help with streams.

01. Introduce IAsyncEnumerable
02. Mock async streams with Task.Delay
03. Demonstrate await for each, with async streams

In C# 8, we can quickly create ranges of indices, when working with arrays and collections.

01. Introduce the range types
02. Introduce the from end operator and open-ended ranges
03. Demonstrate live code

C# 7 introduced patterns, but with C# 8 come recursive patterns have been introduced.

01. Create a custom HttpException
02. Create a reporter that makes use of recursive patterns, to report HTTP exceptions

The ternary operator is great for choosing between two options, but what if we have more options, and a complex if/else structure does not help.

01. Improve the previous reporter with switch expressions

Target-typed new expressions are great at inferring the type from the supplied context.

01. Introduce target-typed new expressions
02 Use them with arrays

We need to create a new empty solution and install the required dependencies.

01. Create an ASP.NET Core web API project on an empty solution
02. Install Entity Framework Coreverview of Azure compute services
03. Install identity-related dependencies

Async/await is very powerful, when it comes to managing async data, but it does not help with streams.

01. Create an ApplicationUser model inheriting from IdentityUser
02. Run migrations

Some operations have different validation entries and different properties, than the ones that can be found in domain models.

01. Create a UserSignUpVM
02. Create a SignInVM
03. Map them with AutoMapper

Write an identity controller from scratch.

01. Write it using the GenerateAccessToken method
02. Write the sign up endpoint
03. Write the sign in endpoint

We have successfully created an account controller, but more testing is needed.

01. Test the sign up endpoint
02. Test the sign in endpoint

We need to begin working on our web API, by installing EF Core and other dependencies, and also by setting-up our models.

01. Install Entity Framework Core
02. Create a subscription and a plan model
03. Run migrations

Next step in our journey will be to write the controllers.

01. Auto-generate controllers using Visual Studio
02. Use EF Core lazy loading to load each subscription plan

Private routes need authentication.

01. Add the authorization attribute
02. Set-up authentication in the startup class
03. Extend all PlanController endpoints

We have the endpoints we now need to test that they work, and also that the authentication works.

01. Sign a user app
02. Use the userโ€™s token to create a plan
03. Retrieve the newly created plan

WPF was not available to .NET Core until version 3.0, which means most .NET Core only developers are not familiar with XAML, which is the markup language used to create the user interface.

01. Introduce WPF in the context of the whole .NET ecosystem
02. Describe code-behind files
03. Write a sign up form from scratch and run the new project

WPF was built to work perfectly with the MVVM pattern. We need to describe it before moving forward to apply it.

01. Theoretical presentation of the MVVM design pattern
02. Build the projectโ€™s directory structure

Our desktop app is going to be an online-only app. This means it needs to be able to communicate with the API we built in the previous section.

01. Create two interfaces: IAuthService and IPlansService
02. Implement the interfaces
03. Use static HttpClient to boost performance

We need to handle authentication state in our app, if we are to only allow logged in users to access certain states.

01. Go back to AuthService and add a GetAccessToken method
02. Store access token internally in AuthService
03. Create a GetRequest template method to keep the service DRY

We have four pages-states and we need to be able to navigate.

01. Create the views
02. Go to MainWindow and setup bindings between view models and views
03. Create click handlers in the code behind to handle navigation

We have some unfinished view models. We need to add more logic and bindings with the views.

01. Add dependencies to services inside all three view models
02. Implement the INotifyPropertyChanged interface
03. Create commands for signing in and up

During all previous videos, our desktop app was in no shape to be executed. Now is the time for its first run.

01. Run the app
02. Demonstrate a user sign up and how they are redirected to the dashboard
03. Sign in with a user that has a plan

There are two ways in which we can build mobile applications with Xamarin. We need to make the distinction clear.

01. Define Xamarin
02. Define Xamarin.Forms
03. Explain why we would be choosing Xamarin.Forms

Visual Studio does not come with Xamarin installed by default.

01. Open Visual Studio Installer
02. Install Xamarin
03. Create a new project and set-up an Android emulator

We want to achieve maximum code reuse between the mobile and desktop projects. Authentication is a major part of that process.

01. Create a new shared library for targeting the .NET standard
02. Set-up dependency injection
03. Handle authentication properly

We have three pages. A sign up page, a sign in page, and a dashboard. We want to be able to navigate between all of them.

01. Convert MainPage into a NavigationPage
02. Implement click handlers for the navigation buttons
03. Watch for changes in the access token and navigate accordingly

So far, our pages are in no way connected to the view models.

01. Work with data binding
02. Create a list of plans in dashboard
03. Install ngrok, change the endpoints, and test the application

Two of the most important characteristics of reactive microservices are reactivity and isolation.

01. Describe the microservices architecture
02. Describe reactivity
03. Describe isolation

Reactive microservices should follow the no sharing rule, while also avoiding shared state. In this section, we need to describe the most well-known patterns in a microservices oriented architecture.

01. Describe API Gateways
02. Get introduced to CQRS and event sourcing
03. Get introduced to Service Fabric

In order to develop Service Fabric microservices, we need to install the Service Fabric SDK.

01. Download the Service Fabric SDK
02. Install the Service Fabric SDK
03. Start a new project

We need to move our code from the monolithic application to the new project.

01. Migrate the identity service
02. GMigrate the plans service

We need an API Gateway in order to provide unified access to our various microservice-based APIs.

01. Create a new API Gateway project
02. Install Ocelot
03. Set downstream and upstream paths

We need Docker in order to create containers.

01. Download Docker CE
02. Install Docker
03. Configure settings

Before we can deploy our APIs to the cloud, we have to containerize them.

01. Containerize identity service
02. Containerize API
03. Add a Docker Compose project

We need to create some resources on Azure to use, when deploying our app on Azure.

01. Create a database service
02. Work with new connection strings

Everything is ready for the deployments to begin.

01. Deploy to app service with Visual Studio

In this video, you'll learn about the summary of this course.

01. Discuss all the important points of the course
02. Learn about what should you do next

 


C# & NET CORE

SALARIES & JOBS AVAILABILITY For C# & NET CORE Jobs Pay per Year?

C# & NET CORE TRAINING COST


$300

GreaterHeight Academy Benefits

Unlimited Live Sessions
Live Training Membership give you unlimited access to all our live training and sessions recording from anywhere and using any device staying at home.

Expert-led Live Sessions
All sessions are led by our expert mentors who are well connected to the open-source communities. They explain complex technical concepts in an easy way.

Test and Quizzes
Each Module will be followed by mock-up tests and quizzes which help you to monitor your learning progress and evaluate yourself.

Build Real-Projects
All the sessions are delivered using real-life. You will learn how to build real projects using industry recommended principles & practices.

Personal Career Coach
Get career guidance from top experts as your personal coach, align your preparation strategy & learning resources to achieve your goal.

Interview Prep Sessions
Get career guidance and ask your questions & doubts live. Join to prepare yourself for next job interview to crack and get hired!

Resume Building
Optimize your resume with the help of our experienced experts to get your desired jobs.

Hands-on Assignments
Learn by doing hands-on to gain confidence to solve real-world challenges and assignments. Interview Prep Sessions.

Discord Community Accessh
Get access to Discord community to discuss doubts, access assignments and learning with peer interaction.

Technical Support
We have online support team available to help you with any technical queries you may have during the course.

Get Certified
Master in-demand job skills to become a technology expert, get certified, and accelerate your career.

FAQs

Q1. Who are your mentors?
All our mentors are highly qualified and experience professionals. All have at least 15-20 yrs. of development experience in various technologies and are trained by GreaterHeight Academy to deliver interactive training to the participants.
Q2. Do you provide training on latest technology version?
Yes, we do. As the technology upgrades, we do update our content and provide your training on latest version of that technology.
Q3. What If I miss my online training class?
All online training classes are recorded. You will get the recorded sessions so that you can watch the online classes when you want. Also, you can join other class to do your missing classes.
Q4. Do you prepare me for the job interview?
Yes, we do. We will discuss all possible technical interview questions and answers during the training program so that you can prepare yourself for interview.
Q5. Can I share my course with someone else?
In short, no. We track this stuff; any abuse of copyright is taken seriously. Thanks for your understanding on this one.
Q6. Do you offer certificate of completion?
Yes, we would be providing you with the certificate of completion of the program once you have successfully submitted all the assessment and it has been verified by our subject matter experts.

 

OUR CLIENTS


We Have Worked With Some Amazing Companies Around The World


Our awesome clients we've had the pleasure to work with!