SlideShare ist ein Scribd-Unternehmen logo
1 von 31
#28 Baton ROuge .NET Fundamentals Mike Huguet
Solutions Architect for BRDNUG leader, http://brdnug.org  MS Patterns & Practices SP Guidance Advisor SQLSat28 Organizer http://twitter.com/mhuguet  http://geekswithblogs.com/mikehuguet Mike Huguet
A.K.A – “Huggy” Bear What does he do anyway? Favorite restaurant is any $5 Chinese Buffet He only quotes movies from the 80’s Alternate Intro
Introduce some of the “new” fundamentals Enhance knowledge of these fundamentals Objectives Face.Expression!=
Feature Timeline 2.0 3.0 3.5 4.0 3.5 SP1 2005 2006 2007 2010 2008 Generics ,[object Object]
Lambdas
LINQ,[object Object]
? Generics “Generics let you tailor a method, class, structure, or interface to the precise data type it acts upon.” - MSDN
Generics - MSDN
Native to the CLR Allow for better type safety increasing performance (no box, unbox, casting) ArrayList vs. List<T> IDE Magic What are Generics?
*200% perf gain value types (i.e.-string, int…) *100% perf gain ref types (i.e.-MyClass) Used throughout .NET Make great containers i.e.-List<T> Activator.CreateInstance<T>() Uses / Benefits * - #’s from MSDN
C# List<string> x = new List<string>(); String GetValueAsString<T>(T entity) {} VB.NET Dim x As New List(Of String) Function GetValueAsString(of T)(ByRef entity As T) As String Syntax
Demo
[object Object],class Repo<T> where T : BaseEntity class Repo<T> where T : BaseEntity, IComparable<T> class Repo<T, K> where T : BaseEntity where K : IValidator ,[object Object],class Repo<T> where T : class class Repo<T> where T : struct ,[object Object],class Repo<T> where T : class, new() Constraints (C#)
[object Object],Class Repo(Of T As BaseEntity) Class Repo(Of  T As {BaseEntity, IComparable(Of T)}) Class Repo(Of T As BaseEntity, K As IValidator)) ,[object Object],Class Repo(Of T As Class) Class Repo(Of T As Structure) ,[object Object],Class Repo(Of T As New, Class) Constraints (VB.NET)
? Extension Methods “Extension methods enable you to ‘add’ methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type.” -MSDN
Allows adding methods to an existing type No recompile needed Can extend framework classes (including sealed) Methods included in Intellisense Extension Methods
Demo
? Lamda Expressions “A lambda expression is an anonymous function that can contain expressions and statements, and can be used to create delegates or expression tree types.” -MSDN
[object Object]
A variable that points to function
Anonymous function (no name)
Returns a single value
Explicit or inferred types
Return
Parameter(s)What is a Lambda Anyway?
[object Object]
Arg list => expression
x => x + 1
(x, y) => x == y
VB.NET

Weitere ähnliche Inhalte

Was ist angesagt?

2CPP08 - Overloading and Overriding
2CPP08 - Overloading and Overriding2CPP08 - Overloading and Overriding
2CPP08 - Overloading and OverridingMichael Heron
 
Advanced Object-Oriented/SOLID Principles
Advanced Object-Oriented/SOLID PrinciplesAdvanced Object-Oriented/SOLID Principles
Advanced Object-Oriented/SOLID PrinciplesJon Kruger
 
OOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and InterfacesOOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and InterfacesHitesh-Java
 
Agile_goa_2013_clean_code_tdd
Agile_goa_2013_clean_code_tddAgile_goa_2013_clean_code_tdd
Agile_goa_2013_clean_code_tddSrinivasa GV
 
Exception Handling - Continued
Exception Handling - Continued Exception Handling - Continued
Exception Handling - Continued Hitesh-Java
 
1. Mini seminar intro
1. Mini seminar intro1. Mini seminar intro
1. Mini seminar introLeonid Maslov
 
C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...
C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...
C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...Simplilearn
 
Sharable of qualities of clean code
Sharable of qualities of clean codeSharable of qualities of clean code
Sharable of qualities of clean codeEman Mohamed
 
Basics of java (1)
Basics of java (1)Basics of java (1)
Basics of java (1)raj upadhyay
 
Object Oriented Programming With C++
Object Oriented Programming With C++Object Oriented Programming With C++
Object Oriented Programming With C++Vishnu Shaji
 
Journey's diary developing a framework using tdd
Journey's diary   developing a framework using tddJourney's diary   developing a framework using tdd
Journey's diary developing a framework using tddeduardomg23
 
Introduction to objective c
Introduction to objective cIntroduction to objective c
Introduction to objective cSunny Shaikh
 
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015Codemotion
 
Pursuing Domain-Driven Design practices in PHP
Pursuing Domain-Driven Design practices in PHPPursuing Domain-Driven Design practices in PHP
Pursuing Domain-Driven Design practices in PHPGiorgio Sironi
 
OOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and InterfacesOOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and InterfacesRatnaJava
 
Advanced OOP - Laws, Principles, Idioms
Advanced OOP - Laws, Principles, IdiomsAdvanced OOP - Laws, Principles, Idioms
Advanced OOP - Laws, Principles, IdiomsClint Edmonson
 

Was ist angesagt? (20)

2CPP08 - Overloading and Overriding
2CPP08 - Overloading and Overriding2CPP08 - Overloading and Overriding
2CPP08 - Overloading and Overriding
 
Advanced Object-Oriented/SOLID Principles
Advanced Object-Oriented/SOLID PrinciplesAdvanced Object-Oriented/SOLID Principles
Advanced Object-Oriented/SOLID Principles
 
Clean Code 2
Clean Code 2Clean Code 2
Clean Code 2
 
OOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and InterfacesOOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and Interfaces
 
Agile_goa_2013_clean_code_tdd
Agile_goa_2013_clean_code_tddAgile_goa_2013_clean_code_tdd
Agile_goa_2013_clean_code_tdd
 
Inner Classes
Inner Classes Inner Classes
Inner Classes
 
Exception Handling - Continued
Exception Handling - Continued Exception Handling - Continued
Exception Handling - Continued
 
1. Mini seminar intro
1. Mini seminar intro1. Mini seminar intro
1. Mini seminar intro
 
C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...
C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...
C# Interface | Interfaces In C# | C# Interfaces Explained | C# Tutorial For B...
 
Sharable of qualities of clean code
Sharable of qualities of clean codeSharable of qualities of clean code
Sharable of qualities of clean code
 
Basics of java (1)
Basics of java (1)Basics of java (1)
Basics of java (1)
 
Object Oriented Programming With C++
Object Oriented Programming With C++Object Oriented Programming With C++
Object Oriented Programming With C++
 
Journey's diary developing a framework using tdd
Journey's diary   developing a framework using tddJourney's diary   developing a framework using tdd
Journey's diary developing a framework using tdd
 
Introduction to objective c
Introduction to objective cIntroduction to objective c
Introduction to objective c
 
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
Functional Programming You Already Know - Kevlin Henney - Codemotion Rome 2015
 
Pursuing Domain-Driven Design practices in PHP
Pursuing Domain-Driven Design practices in PHPPursuing Domain-Driven Design practices in PHP
Pursuing Domain-Driven Design practices in PHP
 
OOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and InterfacesOOP with Java - Abstract Classes and Interfaces
OOP with Java - Abstract Classes and Interfaces
 
Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 
JavaScript Bootcamp
JavaScript BootcampJavaScript Bootcamp
JavaScript Bootcamp
 
Advanced OOP - Laws, Principles, Idioms
Advanced OOP - Laws, Principles, IdiomsAdvanced OOP - Laws, Principles, Idioms
Advanced OOP - Laws, Principles, Idioms
 

Andere mochten auch

Marketing plan (new)
Marketing plan (new)Marketing plan (new)
Marketing plan (new)charace
 
Parallel mechanisms of epigenetic reprogramming in the germline
Parallel mechanisms of epigenetic reprogramming in the germlineParallel mechanisms of epigenetic reprogramming in the germline
Parallel mechanisms of epigenetic reprogramming in the germlineLoki Stormbringer
 
CTC1 deletion results in defective telomere replication, leading to catastrop...
CTC1 deletion results in defective telomere replication, leading to catastrop...CTC1 deletion results in defective telomere replication, leading to catastrop...
CTC1 deletion results in defective telomere replication, leading to catastrop...Loki Stormbringer
 
Metabolic depression in hibernation and major depression: an explanatory theo...
Metabolic depression in hibernation and major depression: an explanatory theo...Metabolic depression in hibernation and major depression: an explanatory theo...
Metabolic depression in hibernation and major depression: an explanatory theo...Loki Stormbringer
 
Matrix rigidity controls endothelial differentiation and morphogenesis of car...
Matrix rigidity controls endothelial differentiation and morphogenesis of car...Matrix rigidity controls endothelial differentiation and morphogenesis of car...
Matrix rigidity controls endothelial differentiation and morphogenesis of car...Loki Stormbringer
 
Metal protein attenuating compounds for the treatment of alzheimer's dementia
Metal protein attenuating compounds for the treatment of alzheimer's dementiaMetal protein attenuating compounds for the treatment of alzheimer's dementia
Metal protein attenuating compounds for the treatment of alzheimer's dementiaLoki Stormbringer
 
Meta analysis of genome-wide association studies for personality
Meta analysis of genome-wide association studies for personalityMeta analysis of genome-wide association studies for personality
Meta analysis of genome-wide association studies for personalityLoki Stormbringer
 
No Feature Solutions with SharePoint
No Feature Solutions with SharePointNo Feature Solutions with SharePoint
No Feature Solutions with SharePointmikehuguet
 
Primary surface ruptures of the great himalayan
Primary surface ruptures of the great himalayanPrimary surface ruptures of the great himalayan
Primary surface ruptures of the great himalayanLoki Stormbringer
 
Mechanisms of white matter changes induced by meditation
Mechanisms of white matter changes induced by meditationMechanisms of white matter changes induced by meditation
Mechanisms of white matter changes induced by meditationLoki Stormbringer
 
Appeal from the united states district court for the eastern district of wisc...
Appeal from the united states district court for the eastern district of wisc...Appeal from the united states district court for the eastern district of wisc...
Appeal from the united states district court for the eastern district of wisc...Loki Stormbringer
 
Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...
Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...
Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...Loki Stormbringer
 
The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...
The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...
The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...Loki Stormbringer
 
Interventions to Improve Cognitive Functioning After TBI
Interventions to Improve Cognitive Functioning After TBIInterventions to Improve Cognitive Functioning After TBI
Interventions to Improve Cognitive Functioning After TBILoki Stormbringer
 

Andere mochten auch (16)

Marketing plan (new)
Marketing plan (new)Marketing plan (new)
Marketing plan (new)
 
Friend me? Putting the 'Social' back in 'Society' (PSCP)
Friend me? Putting the 'Social' back in 'Society' (PSCP)Friend me? Putting the 'Social' back in 'Society' (PSCP)
Friend me? Putting the 'Social' back in 'Society' (PSCP)
 
Parallel mechanisms of epigenetic reprogramming in the germline
Parallel mechanisms of epigenetic reprogramming in the germlineParallel mechanisms of epigenetic reprogramming in the germline
Parallel mechanisms of epigenetic reprogramming in the germline
 
CTC1 deletion results in defective telomere replication, leading to catastrop...
CTC1 deletion results in defective telomere replication, leading to catastrop...CTC1 deletion results in defective telomere replication, leading to catastrop...
CTC1 deletion results in defective telomere replication, leading to catastrop...
 
Metabolic depression in hibernation and major depression: an explanatory theo...
Metabolic depression in hibernation and major depression: an explanatory theo...Metabolic depression in hibernation and major depression: an explanatory theo...
Metabolic depression in hibernation and major depression: an explanatory theo...
 
Matrix rigidity controls endothelial differentiation and morphogenesis of car...
Matrix rigidity controls endothelial differentiation and morphogenesis of car...Matrix rigidity controls endothelial differentiation and morphogenesis of car...
Matrix rigidity controls endothelial differentiation and morphogenesis of car...
 
Metal protein attenuating compounds for the treatment of alzheimer's dementia
Metal protein attenuating compounds for the treatment of alzheimer's dementiaMetal protein attenuating compounds for the treatment of alzheimer's dementia
Metal protein attenuating compounds for the treatment of alzheimer's dementia
 
Meta analysis of genome-wide association studies for personality
Meta analysis of genome-wide association studies for personalityMeta analysis of genome-wide association studies for personality
Meta analysis of genome-wide association studies for personality
 
No Feature Solutions with SharePoint
No Feature Solutions with SharePointNo Feature Solutions with SharePoint
No Feature Solutions with SharePoint
 
Primary surface ruptures of the great himalayan
Primary surface ruptures of the great himalayanPrimary surface ruptures of the great himalayan
Primary surface ruptures of the great himalayan
 
Mechanisms of white matter changes induced by meditation
Mechanisms of white matter changes induced by meditationMechanisms of white matter changes induced by meditation
Mechanisms of white matter changes induced by meditation
 
Appeal from the united states district court for the eastern district of wisc...
Appeal from the united states district court for the eastern district of wisc...Appeal from the united states district court for the eastern district of wisc...
Appeal from the united states district court for the eastern district of wisc...
 
Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...
Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...
Anatomical plasticity of adult brain is titrated by nogo receptor 1 (06 March...
 
Invalidation
InvalidationInvalidation
Invalidation
 
The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...
The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...
The next generation of glioma biomarkers: MGMT methylation, BRAF fusions and ...
 
Interventions to Improve Cognitive Functioning After TBI
Interventions to Improve Cognitive Functioning After TBIInterventions to Improve Cognitive Functioning After TBI
Interventions to Improve Cognitive Functioning After TBI
 

Ähnlich wie SQL Saturday 28 - .NET Fundamentals

Linq To The Enterprise
Linq To The EnterpriseLinq To The Enterprise
Linq To The EnterpriseDaniel Egan
 
Linq 1224887336792847 9
Linq 1224887336792847 9Linq 1224887336792847 9
Linq 1224887336792847 9google
 
TDD And Refactoring
TDD And RefactoringTDD And Refactoring
TDD And RefactoringNaresh Jain
 
Backend Development - Django
Backend Development - DjangoBackend Development - Django
Backend Development - DjangoAhmad Sakhleh
 
C#3.0 & Vb 9.0 New Features
C#3.0 & Vb 9.0 New FeaturesC#3.0 & Vb 9.0 New Features
C#3.0 & Vb 9.0 New Featurestechfreak
 
LINQ Inside
LINQ InsideLINQ Inside
LINQ Insidejeffz
 
Certification preparation - Net classses and functions.pptx
Certification preparation - Net classses and functions.pptxCertification preparation - Net classses and functions.pptx
Certification preparation - Net classses and functions.pptxRohit Radhakrishnan
 
Breaking down data silos with the open data protocol
Breaking down data silos with the open data protocolBreaking down data silos with the open data protocol
Breaking down data silos with the open data protocolWoodruff Solutions LLC
 
Whidbey old
Whidbey old Whidbey old
Whidbey old grenaud
 
.Net Classes and Objects | UiPath Community
.Net Classes and Objects | UiPath Community.Net Classes and Objects | UiPath Community
.Net Classes and Objects | UiPath CommunityRohit Radhakrishnan
 
Framework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users GroupFramework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users Groupbrada
 
Framework engineering JCO 2011
Framework engineering JCO 2011Framework engineering JCO 2011
Framework engineering JCO 2011YoungSu Son
 
Working Effectively With Legacy Perl Code
Working Effectively With Legacy Perl CodeWorking Effectively With Legacy Perl Code
Working Effectively With Legacy Perl Codeerikmsp
 
A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010Abram John Limpin
 
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersMSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersDave Bost
 

Ähnlich wie SQL Saturday 28 - .NET Fundamentals (20)

Linq To The Enterprise
Linq To The EnterpriseLinq To The Enterprise
Linq To The Enterprise
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Linq 1224887336792847 9
Linq 1224887336792847 9Linq 1224887336792847 9
Linq 1224887336792847 9
 
Vb essentials
Vb essentialsVb essentials
Vb essentials
 
TDD And Refactoring
TDD And RefactoringTDD And Refactoring
TDD And Refactoring
 
Backend Development - Django
Backend Development - DjangoBackend Development - Django
Backend Development - Django
 
C#3.0 & Vb 9.0 New Features
C#3.0 & Vb 9.0 New FeaturesC#3.0 & Vb 9.0 New Features
C#3.0 & Vb 9.0 New Features
 
VB.Net Mod1.pptx
VB.Net Mod1.pptxVB.Net Mod1.pptx
VB.Net Mod1.pptx
 
LINQ Inside
LINQ InsideLINQ Inside
LINQ Inside
 
Certification preparation - Net classses and functions.pptx
Certification preparation - Net classses and functions.pptxCertification preparation - Net classses and functions.pptx
Certification preparation - Net classses and functions.pptx
 
Breaking down data silos with the open data protocol
Breaking down data silos with the open data protocolBreaking down data silos with the open data protocol
Breaking down data silos with the open data protocol
 
Whidbey old
Whidbey old Whidbey old
Whidbey old
 
.Net Classes and Objects | UiPath Community
.Net Classes and Objects | UiPath Community.Net Classes and Objects | UiPath Community
.Net Classes and Objects | UiPath Community
 
Framework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users GroupFramework Design Guidelines For Brussels Users Group
Framework Design Guidelines For Brussels Users Group
 
Framework engineering JCO 2011
Framework engineering JCO 2011Framework engineering JCO 2011
Framework engineering JCO 2011
 
Modern Python Testing
Modern Python TestingModern Python Testing
Modern Python Testing
 
Working Effectively With Legacy Perl Code
Working Effectively With Legacy Perl CodeWorking Effectively With Legacy Perl Code
Working Effectively With Legacy Perl Code
 
A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010
 
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for DevelopersMSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers
 
T4 presentation
T4 presentationT4 presentation
T4 presentation
 

Kürzlich hochgeladen

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Kürzlich hochgeladen (20)

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

SQL Saturday 28 - .NET Fundamentals

  • 1. #28 Baton ROuge .NET Fundamentals Mike Huguet
  • 2. Solutions Architect for BRDNUG leader, http://brdnug.org MS Patterns & Practices SP Guidance Advisor SQLSat28 Organizer http://twitter.com/mhuguet http://geekswithblogs.com/mikehuguet Mike Huguet
  • 3. A.K.A – “Huggy” Bear What does he do anyway? Favorite restaurant is any $5 Chinese Buffet He only quotes movies from the 80’s Alternate Intro
  • 4. Introduce some of the “new” fundamentals Enhance knowledge of these fundamentals Objectives Face.Expression!=
  • 5.
  • 7.
  • 8. ? Generics “Generics let you tailor a method, class, structure, or interface to the precise data type it acts upon.” - MSDN
  • 10. Native to the CLR Allow for better type safety increasing performance (no box, unbox, casting) ArrayList vs. List<T> IDE Magic What are Generics?
  • 11. *200% perf gain value types (i.e.-string, int…) *100% perf gain ref types (i.e.-MyClass) Used throughout .NET Make great containers i.e.-List<T> Activator.CreateInstance<T>() Uses / Benefits * - #’s from MSDN
  • 12. C# List<string> x = new List<string>(); String GetValueAsString<T>(T entity) {} VB.NET Dim x As New List(Of String) Function GetValueAsString(of T)(ByRef entity As T) As String Syntax
  • 13. Demo
  • 14.
  • 15.
  • 16. ? Extension Methods “Extension methods enable you to ‘add’ methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type.” -MSDN
  • 17. Allows adding methods to an existing type No recompile needed Can extend framework classes (including sealed) Methods included in Intellisense Extension Methods
  • 18. Demo
  • 19. ? Lamda Expressions “A lambda expression is an anonymous function that can contain expressions and statements, and can be used to create delegates or expression tree types.” -MSDN
  • 20.
  • 21. A variable that points to function
  • 26. Parameter(s)What is a Lambda Anyway?
  • 27.
  • 28. Arg list => expression
  • 29. x => x + 1
  • 30. (x, y) => x == y
  • 33. Function(x, y) x = ySyntax Examples
  • 34. Summary - Wherever a delegate type can be used Event handlers LINQ Projection Extensions (Select, SelectMany) Find Extensions (Find, FindAll) When Can We Use Them?
  • 35. Demo
  • 36. ? Language Integrated Query (LINQ) “LINQ is a set of extensions to the .NET Framework that encompass language-integrated query, set, and transform operations. .” -MSDN
  • 37. Core functionality provided by extension methods (method based) Any() Where() OrderBy() ThenBy() Contains() Join() First() ... LINQ
  • 38. Expression based var results = from process in Process.GetProcesses() where process.ProcessName.Contains("WINWORD") orderbyprocess.MainWindowTitle descending select process; Method based varresults = Process.GetProcesses() .Where(process=>process.ProcessName .Contains("WINWORD")) .OrderBy(x=>x.MainWindowTitle); LINQ Options
  • 39. Demo
  • 40. LINQ C# VB Other Languages .NET Language – Integrated Query LINQ enabled data sources LINQ enabled ADO.NET LINQ to Objects LINQ to XML LINQ to Datasets LINQ to SQL LINQ to Entities Objects Relational Data XML
  • 41. LINQ to … LINQ to Objects LINQ to XML (XLINQ) LINQ to DataSets LINQ to SQL (DLINQ) LINQ to Entities (EF) LINQ to SharePoint LINQ to REST LINQ to NHibernate LINQ to Twitter LINQ to SQL Saturday???
  • 42.
  • 43. LINQ
  • 44.
  • 45.

Hinweis der Redaktion

  1. That big question mark is editable – use whatever character you want!
  2. That big question mark is editable – use whatever character you want!
  3. That big question mark is editable – use whatever character you want!
  4. That big question mark is editable – use whatever character you want!
  5. That big question mark is editable – use whatever character you want!
  6. That big question mark is editable – use whatever character you want!
  7. That big question mark is editable – use whatever character you want!
  8. That big question mark is editable – use whatever character you want!