SlideShare a Scribd company logo
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 1
Introduction to C#
Lee Englestone, Developer Relations Lead
Audience: Women In Software Engineering (WISE)
Date: October 2023
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 2
Contents
2. What?
What is C#?
3. How?
How does it work?
4. Why?
Why use C#?
5. Try it!
Try it for yourself!
6. Summary
More information
and next steps
1. Introduction
Hi there 👋
3
About Me
VisualStudioTips.co.uk
Start-Coding.com
HackathonTips.com
GoodBusinessBooks.com
Many, many more..
Follow me on Engage!
Lee Englestone, Grp Mgr
Developer Relations Lead
20+ years Software Developer
4x Microsoft MVP
MSc Entrepreneurship Management & Innovation
4
EmTech &
Open Innovation
OCTO
(Office of the CTO)
EmTech
(Emerging Technology)
Open Innovation
Developer Relations
GSA (Global Solution Area)
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 5
What is C#?
• Programming language
• Free & easy (and tooling)
• Cross platform
• Wide range of uses https://try.dot.net/
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 6
.NET Framework
• Programming Languages
• Class Libraries
• Runtime
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 7
C# Everywhere
Gaming
Desktop/
Laptops
applications
Web & Cloud
IoT
Tablets
iOS & Android phones
Virtual Reality
Augmented Reality
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 8
Popularity
C# is a very popular programming language
https://survey.stackoverflow.co/2023/#technology
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 9
Example Application Types
Console Application
Simple, powerful, basic UI & Input
Web Application
Typical website
Windows Application
Think Calculator app
Windows Service
No UI, runs in the background
Azure Cloud Function
Simple scalable app in the cloud
Web API
Web Application Programming
Interface – A callable web service
Mobile App
To run on mobile phones / tables
Game
A 2D or 3D game
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 10
My example side projects that use C#
XamarinARKit.com
11
A look at C#
• Variables & data types
• Logic control
• Building blocks
• Namespaces
You can follow along on try.dot.net
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 12
Variables
Storing temporary items of information
Can use built-in data types or user defined data types
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 13
String
Declaration, manipulation and concatenation
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 14
Boolean
true or false
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 15
Numbers
Various min / max sizes and precision
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 16
Numbers Continued
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 17
DateTime
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 18
Control statements
Don’t always want..
Do A, then B, then C, then D
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 19
Collections, Lists, Arrays etc
Storing collections of variables in a variable
Array List Dictionary
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 20
Loops & Iterations
Doing things multiple times
foreach
for for while do do while
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 21
User defined types
Define your own types by combining existing types
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 22
Properties and Methods
Both built in types and user defined types
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 23
Common Namespaces
System
System.Math
System.Text
System.File
System.Globalisation
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 24
Exercise: How many Tuesdays are there in 2023?
• Start with a date on 1st of January 2023
• Have an int counter
• Loop until 2024
• Each day check if day is a Tuesday
• If so, increment a counter
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 25
Exercise: What are the dates of all the Tuesdays in 2023?
• Same, but add the date to a collection
• Iterate through collection and display them
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 26
Tooling
Visual Studio
https://visualstudio.microsoft.com/#vs-section
Visual Studio Code
https://visualstudio.microsoft.com/#vscode-section
LinqPad
https://www.linqpad.net/
Rider
https://www.jetbrains.com/rider/
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 27
In Browser Tutorial
https://dotnet.microsoft.com/en-us/learn/dotnet/in-browser-tutorial/1
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 28
Try it out yourself
Try .NET page
https://dotnet.microsoft.com/en-us/platform/try-dotnet
In browser tutorial
https://dotnet.microsoft.com/en-us/learn/dotnet/in-browser-tutorial/1
Try anything
https://try.dot.net/
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 29
Summary
2. What?
What is C#?
3. How?
How does it work?
4. Why?
Why use C#?
5. Try it!
Try it for yourself!
6. Summary
More information
and next steps
1. Introduction
Hi there 👋
©2022 Avanade Inc. All Rights Reserved. <Highly Confidential>
Questions?

More Related Content

Similar to Introduction to C#

Introduction to ThousandEyes
Introduction to ThousandEyesIntroduction to ThousandEyes
Introduction to ThousandEyes
ThousandEyes
 
Realise True Business Value .pdf
Realise True Business Value .pdfRealise True Business Value .pdf
Realise True Business Value .pdf
ThousandEyes
 
Getting Demo & POV Ready
Getting Demo & POV ReadyGetting Demo & POV Ready
Getting Demo & POV Ready
ThousandEyes
 
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Daniel Krook
 
Building Blocks of Secure Development: How to Make Open Source Work for You
Building Blocks of Secure Development: How to Make Open Source Work for YouBuilding Blocks of Secure Development: How to Make Open Source Work for You
Building Blocks of Secure Development: How to Make Open Source Work for You
SBWebinars
 
Full Spectrum Engineering – The New Full-stack
Full Spectrum Engineering – The New Full-stack Full Spectrum Engineering – The New Full-stack
Full Spectrum Engineering – The New Full-stack
Deborah Schalm
 
Go for Operations
Go for OperationsGo for Operations
Go for Operations
QAware GmbH
 
Infrastructure as Code in Large Scale Organizations
Infrastructure as Code in Large Scale OrganizationsInfrastructure as Code in Large Scale Organizations
Infrastructure as Code in Large Scale Organizations
XebiaLabs
 
Realize True Business Value With ThousandEyes
Realize True Business Value With ThousandEyesRealize True Business Value With ThousandEyes
Realize True Business Value With ThousandEyes
ThousandEyes
 
The LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelThe LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity Model
Lima Consulting Group
 
Introduction to ThousandEyes
Introduction to ThousandEyesIntroduction to ThousandEyes
Introduction to ThousandEyes
ThousandEyes
 
Docker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to DockerDocker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to Docker
Docker, Inc.
 
roomos_webinar_280923_v2.pptx
roomos_webinar_280923_v2.pptxroomos_webinar_280923_v2.pptx
roomos_webinar_280923_v2.pptx
ThousandEyes
 
Docker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - PresentationDocker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - Presentation
Alex Vranceanu
 
Tridens DevOps
Tridens DevOpsTridens DevOps
Tridens DevOps
Tridens
 
The As, Bs, and Four Cs of Testing Cloud-Native Applications
The As, Bs, and Four Cs of Testing Cloud-Native ApplicationsThe As, Bs, and Four Cs of Testing Cloud-Native Applications
The As, Bs, and Four Cs of Testing Cloud-Native Applications
Denim Group
 
Azure Functions
Azure Functions Azure Functions
Azure Functions
Gaurav Madaan
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
Sauce Labs
 
Optimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSOptimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWS
DevOps.com
 

Similar to Introduction to C# (20)

Introduction to ThousandEyes
Introduction to ThousandEyesIntroduction to ThousandEyes
Introduction to ThousandEyes
 
Realise True Business Value .pdf
Realise True Business Value .pdfRealise True Business Value .pdf
Realise True Business Value .pdf
 
Getting Demo & POV Ready
Getting Demo & POV ReadyGetting Demo & POV Ready
Getting Demo & POV Ready
 
Chandrasekharmeruva
ChandrasekharmeruvaChandrasekharmeruva
Chandrasekharmeruva
 
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
Commit to the Cause, Push for Change: Contributing to Call for Code Open Sour...
 
Building Blocks of Secure Development: How to Make Open Source Work for You
Building Blocks of Secure Development: How to Make Open Source Work for YouBuilding Blocks of Secure Development: How to Make Open Source Work for You
Building Blocks of Secure Development: How to Make Open Source Work for You
 
Full Spectrum Engineering – The New Full-stack
Full Spectrum Engineering – The New Full-stack Full Spectrum Engineering – The New Full-stack
Full Spectrum Engineering – The New Full-stack
 
Go for Operations
Go for OperationsGo for Operations
Go for Operations
 
Infrastructure as Code in Large Scale Organizations
Infrastructure as Code in Large Scale OrganizationsInfrastructure as Code in Large Scale Organizations
Infrastructure as Code in Large Scale Organizations
 
Realize True Business Value With ThousandEyes
Realize True Business Value With ThousandEyesRealize True Business Value With ThousandEyes
Realize True Business Value With ThousandEyes
 
The LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelThe LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity Model
 
Introduction to ThousandEyes
Introduction to ThousandEyesIntroduction to ThousandEyes
Introduction to ThousandEyes
 
Docker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to DockerDocker Bday #5, SF Edition: Introduction to Docker
Docker Bday #5, SF Edition: Introduction to Docker
 
roomos_webinar_280923_v2.pptx
roomos_webinar_280923_v2.pptxroomos_webinar_280923_v2.pptx
roomos_webinar_280923_v2.pptx
 
Docker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - PresentationDocker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - Presentation
 
Tridens DevOps
Tridens DevOpsTridens DevOps
Tridens DevOps
 
The As, Bs, and Four Cs of Testing Cloud-Native Applications
The As, Bs, and Four Cs of Testing Cloud-Native ApplicationsThe As, Bs, and Four Cs of Testing Cloud-Native Applications
The As, Bs, and Four Cs of Testing Cloud-Native Applications
 
Azure Functions
Azure Functions Azure Functions
Azure Functions
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
 
Optimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSOptimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWS
 

More from Lee Englestone

Augmented Reality On iOS With ARKit Xamarin and C#
Augmented Reality On iOS With ARKit Xamarin and C#Augmented Reality On iOS With ARKit Xamarin and C#
Augmented Reality On iOS With ARKit Xamarin and C#
Lee Englestone
 
Reinventing Education Hackathon - LeARn
Reinventing Education Hackathon - LeARnReinventing Education Hackathon - LeARn
Reinventing Education Hackathon - LeARn
Lee Englestone
 
.NET Foundation website suggestions for improvement
.NET Foundation website suggestions for improvement.NET Foundation website suggestions for improvement
.NET Foundation website suggestions for improvement
Lee Englestone
 
25 Tips for Visual Studio
25 Tips for Visual Studio25 Tips for Visual Studio
25 Tips for Visual Studio
Lee Englestone
 
Tweet From Every Country Barcamp Manchester
Tweet From Every Country Barcamp ManchesterTweet From Every Country Barcamp Manchester
Tweet From Every Country Barcamp Manchester
Lee Englestone
 
Organisational Learning
Organisational LearningOrganisational Learning
Organisational Learning
Lee Englestone
 
Lincoln Hack 2018
Lincoln Hack 2018Lincoln Hack 2018
Lincoln Hack 2018
Lee Englestone
 
MVC Training Part 2
MVC Training Part 2MVC Training Part 2
MVC Training Part 2
Lee Englestone
 
MVC Training Part 1
MVC Training Part 1MVC Training Part 1
MVC Training Part 1
Lee Englestone
 
Familee bootstrapped-biz
Familee bootstrapped-bizFamilee bootstrapped-biz
Familee bootstrapped-bizLee Englestone
 
Unit Tests And Automated Testing
Unit Tests And Automated TestingUnit Tests And Automated Testing
Unit Tests And Automated Testing
Lee Englestone
 
Visual Studio 2010 and ASP.Net 4
Visual Studio 2010 and ASP.Net 4Visual Studio 2010 and ASP.Net 4
Visual Studio 2010 and ASP.Net 4
Lee Englestone
 

More from Lee Englestone (12)

Augmented Reality On iOS With ARKit Xamarin and C#
Augmented Reality On iOS With ARKit Xamarin and C#Augmented Reality On iOS With ARKit Xamarin and C#
Augmented Reality On iOS With ARKit Xamarin and C#
 
Reinventing Education Hackathon - LeARn
Reinventing Education Hackathon - LeARnReinventing Education Hackathon - LeARn
Reinventing Education Hackathon - LeARn
 
.NET Foundation website suggestions for improvement
.NET Foundation website suggestions for improvement.NET Foundation website suggestions for improvement
.NET Foundation website suggestions for improvement
 
25 Tips for Visual Studio
25 Tips for Visual Studio25 Tips for Visual Studio
25 Tips for Visual Studio
 
Tweet From Every Country Barcamp Manchester
Tweet From Every Country Barcamp ManchesterTweet From Every Country Barcamp Manchester
Tweet From Every Country Barcamp Manchester
 
Organisational Learning
Organisational LearningOrganisational Learning
Organisational Learning
 
Lincoln Hack 2018
Lincoln Hack 2018Lincoln Hack 2018
Lincoln Hack 2018
 
MVC Training Part 2
MVC Training Part 2MVC Training Part 2
MVC Training Part 2
 
MVC Training Part 1
MVC Training Part 1MVC Training Part 1
MVC Training Part 1
 
Familee bootstrapped-biz
Familee bootstrapped-bizFamilee bootstrapped-biz
Familee bootstrapped-biz
 
Unit Tests And Automated Testing
Unit Tests And Automated TestingUnit Tests And Automated Testing
Unit Tests And Automated Testing
 
Visual Studio 2010 and ASP.Net 4
Visual Studio 2010 and ASP.Net 4Visual Studio 2010 and ASP.Net 4
Visual Studio 2010 and ASP.Net 4
 

Recently uploaded

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
Sharepoint Designs
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
Peter Caitens
 

Recently uploaded (20)

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 

Introduction to C#

  • 1. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 1 Introduction to C# Lee Englestone, Developer Relations Lead Audience: Women In Software Engineering (WISE) Date: October 2023
  • 2. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 2 Contents 2. What? What is C#? 3. How? How does it work? 4. Why? Why use C#? 5. Try it! Try it for yourself! 6. Summary More information and next steps 1. Introduction Hi there 👋
  • 3. 3 About Me VisualStudioTips.co.uk Start-Coding.com HackathonTips.com GoodBusinessBooks.com Many, many more.. Follow me on Engage! Lee Englestone, Grp Mgr Developer Relations Lead 20+ years Software Developer 4x Microsoft MVP MSc Entrepreneurship Management & Innovation
  • 4. 4 EmTech & Open Innovation OCTO (Office of the CTO) EmTech (Emerging Technology) Open Innovation Developer Relations GSA (Global Solution Area)
  • 5. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 5 What is C#? • Programming language • Free & easy (and tooling) • Cross platform • Wide range of uses https://try.dot.net/
  • 6. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 6 .NET Framework • Programming Languages • Class Libraries • Runtime
  • 7. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 7 C# Everywhere Gaming Desktop/ Laptops applications Web & Cloud IoT Tablets iOS & Android phones Virtual Reality Augmented Reality
  • 8. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 8 Popularity C# is a very popular programming language https://survey.stackoverflow.co/2023/#technology
  • 9. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 9 Example Application Types Console Application Simple, powerful, basic UI & Input Web Application Typical website Windows Application Think Calculator app Windows Service No UI, runs in the background Azure Cloud Function Simple scalable app in the cloud Web API Web Application Programming Interface – A callable web service Mobile App To run on mobile phones / tables Game A 2D or 3D game
  • 10. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 10 My example side projects that use C# XamarinARKit.com
  • 11. 11 A look at C# • Variables & data types • Logic control • Building blocks • Namespaces You can follow along on try.dot.net
  • 12. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 12 Variables Storing temporary items of information Can use built-in data types or user defined data types
  • 13. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 13 String Declaration, manipulation and concatenation
  • 14. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 14 Boolean true or false
  • 15. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 15 Numbers Various min / max sizes and precision
  • 16. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 16 Numbers Continued
  • 17. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 17 DateTime
  • 18. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 18 Control statements Don’t always want.. Do A, then B, then C, then D
  • 19. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 19 Collections, Lists, Arrays etc Storing collections of variables in a variable Array List Dictionary
  • 20. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 20 Loops & Iterations Doing things multiple times foreach for for while do do while
  • 21. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 21 User defined types Define your own types by combining existing types
  • 22. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 22 Properties and Methods Both built in types and user defined types
  • 23. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 23 Common Namespaces System System.Math System.Text System.File System.Globalisation
  • 24. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 24 Exercise: How many Tuesdays are there in 2023? • Start with a date on 1st of January 2023 • Have an int counter • Loop until 2024 • Each day check if day is a Tuesday • If so, increment a counter
  • 25. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 25 Exercise: What are the dates of all the Tuesdays in 2023? • Same, but add the date to a collection • Iterate through collection and display them
  • 26. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 26 Tooling Visual Studio https://visualstudio.microsoft.com/#vs-section Visual Studio Code https://visualstudio.microsoft.com/#vscode-section LinqPad https://www.linqpad.net/ Rider https://www.jetbrains.com/rider/
  • 27. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 27 In Browser Tutorial https://dotnet.microsoft.com/en-us/learn/dotnet/in-browser-tutorial/1
  • 28. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 28 Try it out yourself Try .NET page https://dotnet.microsoft.com/en-us/platform/try-dotnet In browser tutorial https://dotnet.microsoft.com/en-us/learn/dotnet/in-browser-tutorial/1 Try anything https://try.dot.net/
  • 29. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> 29 Summary 2. What? What is C#? 3. How? How does it work? 4. Why? Why use C#? 5. Try it! Try it for yourself! 6. Summary More information and next steps 1. Introduction Hi there 👋
  • 30. ©2022 Avanade Inc. All Rights Reserved. <Highly Confidential> Questions?

Editor's Notes

  1. A number of things not covered
  2. Websites Cloud services Games Machine Learning & AI VR & AR Windows Applications Mobile Apps IOT
  3. Stack Overflow survey
  4. Console Application Web Application Windows Application Windows Service Cloud Function Mobile App
  5. string mySentence = "Hello World"; Console.WriteLine(mySentence); Console.WriteLine(mySentence.Length); Console.WriteLine(mySentence.ToUpper()); Console.WriteLine(mySentence.ToLower()); Console.WriteLine(mySentence.Replace(" ", "-")); Console.WriteLine(mySentence + " it's sunny outside");
  6. string mySentence = "Hello World"; Console.WriteLine(mySentence); Console.WriteLine(mySentence.Length); Console.WriteLine(mySentence.ToUpper()); Console.WriteLine(mySentence.ToLower()); Console.WriteLine(mySentence.Replace(" ", "-")); Console.WriteLine(mySentence + " it's sunny outside");
  7. int number1 = 10; int number2 = 25; int number3 = number1 + number2; Console.WriteLine(number3); int whole1 = 13; int whole2 = 2; int whole3 = whole1/whole2; Console.WriteLine(whole3); Console.WriteLine(int.MaxValue); Console.WriteLine(long.MaxValue); nine quintillion two hundred twenty-three quadrillion three hundred seventy-two trillion thirty-six billion eight hundred fifty-four million seven hundred seventy-five thousand eight hundred seven
  8. DateTime date1 = new DateTime(); DateTime birthday = new DateTime(1982, 11, 8, 0, 0,0); DateTime now = DateTime.Now; DateTime thisTimeTomorrow = DateTime.Now.AddDays(1); Console.WriteLine(date1); Console.WriteLine(birthday); Console.WriteLine(now); Console.WriteLine(thisTimeTomorrow); Console.WriteLine(birthday.ToString("dd MMMM yyyy"));
  9. var today = DateTime.Now; Console.WriteLine(today.ToString("ddd dd MM yyyy")); if(today.DayOfWeek == DayOfWeek.Saturday || today.DayOfWeek == DayOfWeek.Sunday) {     Console.WriteLine("It's the weekend!"); } else {     Console.WriteLine("It's NOT the weekend"); }
  10. string[] names = new string[4]; names[0] = "Marie"; names[1] = "Amber"; names[2] = "Farooq"; names[3] = "Sam"; Console.WriteLine(names.Length); Console.WriteLine(names[1]); List<int> ages = new List<int>(); ages.Add(30); ages.Add(50); ages.Add(32); ages.Add(48); Console.WriteLine(ages.Count()); Console.WriteLine(ages[1]); Console.WriteLine(ages.Sum()); Console.WriteLine(ages.Average());
  11. A number of things not covered