.
NET Application
Development 101
Agenda
Agenda
Part 1
● Instructor
● Introduction to the course
● Recap of knowledge used in the course
● Description of course content
Part 2
● Use Case #1 : Development with Instructor
● Use Case #2 : Development with Instructor
Part 3
● Practice : Solo Development (with yourself)
● Conclusion
Instructor
Giorgio Desideri
● Born in Rome (Italy) on 1982
● Cloud Architect in Seven Peaks Software
● 19 years of experience in IT
○ Developer, Consultant, Technical Manager,
Cloud Architect
● PhD in Computer Science
Giorgio Desideri
Visit contact page to find all the contacts
of mine.
Follow for:
● New Courses
● Updates
● News & Feeds
Audience presentation
Please share your experience and knowledge with us
[Link]
HEx7sKHkp7Tm6
Course Introduction
Course Introduction
Training results:
● THE KARATE KID (1984) - Training Result scene
● THE KARATE KID (2010) - Training Result scene
Course progress is based on the concept:
● Theory is the “Wax On Wax Off exercise”
● Practice is the application of them
Course Introduction
Goals:
● Connect the theory, studied in University, with the practice of the real
world scenario
● Show-2-you how to do “Wax On and Wax Off”
○ Show-2-me your learning
● Of course, all it is based on .NET technology
○ Why .NET ? Because, together with Java, is the most used in EE
language
○ Why .NET ? Because the course is called in that way 😂
Knowledge Recap
Knowledge summary for audience alignment
Service-Oriented Architecture
● Concept of service separation ( Service-oriented architecture - Wikipedia )
○ Service Provider
○ Service Registry
○ Service Consumer
● Service separation introduces:
○ Simplification for the management & development
○ Output is produced by orchestration or composition of multiple
services
Knowledge summary for audience alignment
Communication Protocols
● Network OSI Stack - [Link]
● UDP & TCP
● RPC & Socket
● HTTP & HTTPS
○ REST / GraphQL API
○ WebSocket
○ gRPC
Knowledge summary for audience alignment
Database
● ER model - [Link] model
● Entity
○ Independent (unique) & contains data (tuples of values)
● Relationship
○ 1-1, 1-N, N-N ( with cardinality: 0-1, 0-N)
● Elaboration of a model
○ Logical data model ⇒ Physical data model
Knowledge summary for audience alignment
Database
● Single entity is a row of the table ( or record of the table)
○ Uniqueness ⇒ Primary Key
○ Contains data values ⇒ Columns
● Table represents the group of entities
○ For that reason the name is always plural: “Shoes”, “Prices”, etc.
● Relationships are established by constraints called “Foreign keys”
● All others are “tools” database dependent: indexes, unique keys, views,
checks …
Knowledge summary for audience alignment
Docker & Container
● Virtualization, all the Hardware
and all the Software is
virtualized.
● Containerization, use the
existing Hardware and OS layer
to run containers from specific
images
Knowledge summary for audience alignment
.NET
● 2002 ~ 2019, Microsoft introduces .NET Framework for C# and [Link]
● 2016 - Today, .NET Core as open source under .NET Community
● 2001, Cross-platform pioneer Mono
● Naming:
○ .NET Core - it is the platform
○ [Link] Core, it runs under .NET Core, and it keeps the original name of
[Link] (Active Server Page .NET) created to develop Web Application in
.NET Framework
Course Contents
Course contents
.NET Ecosystem
● .NET provides the base templates to develop different types of
applications
○ `dotnet new list`
● The common areas are:
○ Console application
○ Web Application
○ Desktop application
○ Test application
● Custom template can be added
Course contents
.NET Ecosystem
● In this course, we are going to focus over:
○ Backend application : REST API using Minimal API
■ Using a “webapi” template
○ Frontend application : Web application Client-side rendering
■ Using “blazor WASM” template
● “Backend” and “Frontend” terminology is used to decouple the UI from
the logic behind the services ( SOA concept ).
Let’s Start !!!!!!
Course Introduction
Course Materials
[Link]
rs/1gOpw6k2kZBXNQlob1fVoluCDXyY
f-5TZ?usp=sharing
Course Introduction
Instructions
● Download ZIP file
● Extract the file and copy the entire folder extracted out of “Downloads”
● Folder structure:
○ Tools , contains the instructions of which tools you have to install
○ [Link], it is the zip archive of the code
Use-Case #1
“Wax On - Wax Off”
Feedback Form
[Link]
/url/[Link]?70C8EDAB3231715202
Use-Case #2
“Jacket On - Jacket Off”
End