SlideShare a Scribd company logo
1 of 36
Enterprise Software Development
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Enterprise Apps
with ASP.NET Core 2.1
.NET User Group Tour – June 2017
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
SSW Solution Architect
Jason Taylor
@JasonGtAu @SSW_TV
codingflow.net
github.com/JasonGT
Developer* Since 1992
1 MHz CPU
20 KB Memory
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Architecture & Design
Persistence Layer
Application Layer
Infrastructure Layer
Presentation Layer
Domain Layer
Agenda
Architecture & Design
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Independent of frameworks
Testable
Independent of UI
Independent of database
Independent of external agency
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Clean Architecture
Unit of Work and Repository Patterns
Should we implement these patterns?
It isn’t always the best choice, because:
• DbContext insulates your code from database changes
• DbContext acts as a unit of work
• DbSet acts as a repository
• EF Core has features for unit testing without repositories
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Independent of frameworks*
Testable
Independent of UI
Independent of database
Independent of external agency
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Clean Architecture
Key Points
Domain contains enterprise-wide types and logic
Application contains application-specific models and logic
Infrastructure (including Persistence) contain all external concerns
Presentation contains frontend apps
Infrastructure and Presentation components can be replaced with
minimal effort
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Domain Layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Overview
Entities
Value Objects
Enumerations
Logic
Exceptions
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Demo
Reviewing the Domain layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Key Points
Use data annotations sparingly
Always define foreign keys
Use value objects when appropriate
Initialise all collections
Create custom domain exceptions
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application Layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Overview
Interfaces
Models
Logic
Validators
Events
Exceptions
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Demo
Reviewing the Application layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Key Points
Use CQRS to simply your overall design
Use MediatR to simplify management of requests / responses,
commands, queries, notifications and events
Know the difference between View Models (VMs) and Data
Transfer Objects (DTOs)
Use FluentValidation for complex validation scenarios
Create custom application exceptions
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Persistence Layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Overview
DbContext
Configurations
Migrations
Seeding
Abstractions
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Demo
Reviewing the Persistence layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Key Points
Independent of the database
Conventions over configuration
Use Fluent API Configuration over Data Annotations
Use an extension to automatically apply all entity type
configurations
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Infrastructure Layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Overview
Clients
File Systems
Email / SMS
System Clock
Anything External
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Demo
Reviewing the Infrastructure layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Key Points
Contains classes for accessing external resources
Implements interfaces within the Application layer
Utilises DTOs defined within the Application layer
No layers depend on Infrastructure layer, e.g.
Presentation layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Presentation Layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Overview
Web Forms
MVC
Razor Pages
Web API
Single Page Apps
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Application
Domain
Presentation
Demo
Reviewing the Presentation layer
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Key Points
Controllers should not contain any application logic
All application logic belongs in the application layer
Utilising Open API bridges the gap between the
frontend and backend
Create and consume well defined view models
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Recommend Resources
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Northwind Traders
A sample application built
using ASP.NET Core and EF
Core.
bit.ly/northwind-traders
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Building Monoliths
Clean Architecture
Azure
aka.ms/webappebook
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Building Microservices
Microservices
Containers
DDD
Azure
aka.ms/microservicesebook
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Clean Architecture
Robert C. Martin
bit.ly/clean-architecture-book
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Questions?
Join the Conversation #EnterpriseApps #AspNetCore @JasonGtAu
Thank you!
info@ssw.com.au
www.ssw.com.au
Sydney | Melbourne | Brisbane

More Related Content

What's hot

Aspect-Oriented Software Development with Use Cases
Aspect-Oriented Software Development with Use CasesAspect-Oriented Software Development with Use Cases
Aspect-Oriented Software Development with Use Caseswww.myassignmenthelp.net
 
Integration testing
Integration testingIntegration testing
Integration testingqueen jemila
 
Observabilidade: Será que você está fazendo do jeito certo?
Observabilidade: Será que você está fazendo do jeito certo?Observabilidade: Será que você está fazendo do jeito certo?
Observabilidade: Será que você está fazendo do jeito certo?Janssen Lima
 
Event-driven architecture
Event-driven architectureEvent-driven architecture
Event-driven architectureAndrew Easter
 
Ch 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycleCh 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycleKittitouch Suteeca
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven DesignAndriy Buday
 
Non functional requirements - checklist
Non functional requirements - checklistNon functional requirements - checklist
Non functional requirements - checklistVu Hung Nguyen
 
Docker introduction
Docker introductionDocker introduction
Docker introductionGourav Varma
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture PatternsAssaf Gannon
 
The 4-Layer Architecture in Practice
The 4-Layer Architecture in PracticeThe 4-Layer Architecture in Practice
The 4-Layer Architecture in PracticeOutSystems
 
Ch 6 development plan and quality plan
Ch 6 development plan and quality planCh 6 development plan and quality plan
Ch 6 development plan and quality planKittitouch Suteeca
 
Software Design
Software Design Software Design
Software Design Anas Bilal
 

What's hot (20)

Requirements Engineering - Goals
Requirements Engineering - GoalsRequirements Engineering - Goals
Requirements Engineering - Goals
 
Chapter 2 software process models
Chapter 2   software process modelsChapter 2   software process models
Chapter 2 software process models
 
Aspect-Oriented Software Development with Use Cases
Aspect-Oriented Software Development with Use CasesAspect-Oriented Software Development with Use Cases
Aspect-Oriented Software Development with Use Cases
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Observabilidade: Será que você está fazendo do jeito certo?
Observabilidade: Será que você está fazendo do jeito certo?Observabilidade: Será que você está fazendo do jeito certo?
Observabilidade: Será que você está fazendo do jeito certo?
 
Formal Methods
Formal MethodsFormal Methods
Formal Methods
 
Event-driven architecture
Event-driven architectureEvent-driven architecture
Event-driven architecture
 
Object modeling
Object modelingObject modeling
Object modeling
 
Ch 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycleCh 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycle
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
 
Functional modeling
Functional modelingFunctional modeling
Functional modeling
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
Non functional requirements - checklist
Non functional requirements - checklistNon functional requirements - checklist
Non functional requirements - checklist
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture Patterns
 
The 4-Layer Architecture in Practice
The 4-Layer Architecture in PracticeThe 4-Layer Architecture in Practice
The 4-Layer Architecture in Practice
 
Functional modeling
Functional modelingFunctional modeling
Functional modeling
 
Ch 5 contract review
Ch 5 contract reviewCh 5 contract review
Ch 5 contract review
 
Ch 6 development plan and quality plan
Ch 6 development plan and quality planCh 6 development plan and quality plan
Ch 6 development plan and quality plan
 
Software Design
Software Design Software Design
Software Design
 

Similar to Enterprise Software Development with ASP.NET Core 2.1

Clean Architecture By Jason Taylor
Clean Architecture By Jason TaylorClean Architecture By Jason Taylor
Clean Architecture By Jason Taylormaa77
 
Mix Tech Ed Update No Video
Mix Tech Ed Update No VideoMix Tech Ed Update No Video
Mix Tech Ed Update No VideoAllyWick
 
An agile approach to cloud infrastructure
An agile approach to cloud infrastructureAn agile approach to cloud infrastructure
An agile approach to cloud infrastructureRichard Seroter
 
Developing an Enterprise Architecture Capability
Developing an Enterprise Architecture CapabilityDeveloping an Enterprise Architecture Capability
Developing an Enterprise Architecture CapabilityAnthony Draffin
 
J2EE Performance And Scalability Bp
J2EE Performance And Scalability BpJ2EE Performance And Scalability Bp
J2EE Performance And Scalability BpChris Adkin
 
Asp.net Web Development.pdf
Asp.net Web Development.pdfAsp.net Web Development.pdf
Asp.net Web Development.pdfSonia Simi
 
What is ASP.NET and Why do we need it?
What is ASP.NET and Why do we need it?What is ASP.NET and Why do we need it?
What is ASP.NET and Why do we need it?Natural Group
 
Domain Modeling & Full-Stack Web Development F#
Domain Modeling & Full-Stack Web Development F#Domain Modeling & Full-Stack Web Development F#
Domain Modeling & Full-Stack Web Development F#Kevin Avignon
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamBrian Benz
 
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...MSDEVMTL
 
Resume: DevOps/Technology Architect - Satya Prakash
Resume: DevOps/Technology Architect   -  Satya PrakashResume: DevOps/Technology Architect   -  Satya Prakash
Resume: DevOps/Technology Architect - Satya PrakashSatyaPrakash454
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan
 
Elements of DDD with ASP.NET MVC & Entity Framework Code First
Elements of DDD with ASP.NET MVC & Entity Framework Code FirstElements of DDD with ASP.NET MVC & Entity Framework Code First
Elements of DDD with ASP.NET MVC & Entity Framework Code FirstEnea Gabriel
 
Visual Studio.NET
Visual Studio.NETVisual Studio.NET
Visual Studio.NETsalonityagi
 
Titanium presentation
Titanium presentationTitanium presentation
Titanium presentationaaltavas
 
All the amazing features of asp.net core
All the amazing features of asp.net coreAll the amazing features of asp.net core
All the amazing features of asp.net coreGrayCell Technologies
 
Soprex framework on .net in action
Soprex framework on .net in actionSoprex framework on .net in action
Soprex framework on .net in actionMilan Vukoje
 

Similar to Enterprise Software Development with ASP.NET Core 2.1 (20)

Clean Architecture By Jason Taylor
Clean Architecture By Jason TaylorClean Architecture By Jason Taylor
Clean Architecture By Jason Taylor
 
Mix Tech Ed Update No Video
Mix Tech Ed Update No VideoMix Tech Ed Update No Video
Mix Tech Ed Update No Video
 
An agile approach to cloud infrastructure
An agile approach to cloud infrastructureAn agile approach to cloud infrastructure
An agile approach to cloud infrastructure
 
Developing an Enterprise Architecture Capability
Developing an Enterprise Architecture CapabilityDeveloping an Enterprise Architecture Capability
Developing an Enterprise Architecture Capability
 
Resume_A_Vinod
Resume_A_VinodResume_A_Vinod
Resume_A_Vinod
 
J2EE Performance And Scalability Bp
J2EE Performance And Scalability BpJ2EE Performance And Scalability Bp
J2EE Performance And Scalability Bp
 
Asp.net Web Development.pdf
Asp.net Web Development.pdfAsp.net Web Development.pdf
Asp.net Web Development.pdf
 
Visual studio
Visual studioVisual studio
Visual studio
 
What is ASP.NET and Why do we need it?
What is ASP.NET and Why do we need it?What is ASP.NET and Why do we need it?
What is ASP.NET and Why do we need it?
 
Domain Modeling & Full-Stack Web Development F#
Domain Modeling & Full-Stack Web Development F#Domain Modeling & Full-Stack Web Development F#
Domain Modeling & Full-Stack Web Development F#
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure team
 
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
Stephane Lapointe & Alexandre Brisebois: Développer des microservices avec Se...
 
Resume: DevOps/Technology Architect - Satya Prakash
Resume: DevOps/Technology Architect   -  Satya PrakashResume: DevOps/Technology Architect   -  Satya Prakash
Resume: DevOps/Technology Architect - Satya Prakash
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
 
Elements of DDD with ASP.NET MVC & Entity Framework Code First
Elements of DDD with ASP.NET MVC & Entity Framework Code FirstElements of DDD with ASP.NET MVC & Entity Framework Code First
Elements of DDD with ASP.NET MVC & Entity Framework Code First
 
Visual Studio.NET
Visual Studio.NETVisual Studio.NET
Visual Studio.NET
 
Titanium presentation
Titanium presentationTitanium presentation
Titanium presentation
 
All the amazing features of asp.net core
All the amazing features of asp.net coreAll the amazing features of asp.net core
All the amazing features of asp.net core
 
.NET Overview & Roadmap
.NET Overview & Roadmap.NET Overview & Roadmap
.NET Overview & Roadmap
 
Soprex framework on .net in action
Soprex framework on .net in actionSoprex framework on .net in action
Soprex framework on .net in action
 

Recently uploaded

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 

Recently uploaded (20)

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 

Enterprise Software Development with ASP.NET Core 2.1

Editor's Notes

  1. Now I have an i7 with 16GB of RAM and it’s too slow. Plus there’s no tape drive so that kind of sucks.
  2. Todo: Talk about the dependency inversion principle. Todo: Talk about the interfaces within the core. Todo: Show alternative stacks.
  3. Todo: Talk about the dependency inversion principle. Todo: Talk about the interfaces within the core. Todo: Show alternative stacks.
  4. Todo: Mention how I have tried to break the application up by feature – products, orders, customers, and so on. I might not have it quite right yet – time will tell – but it’s a good start. Segregating the application this way make’s it obvious what’s important, and give me a logical starting pointing should I need to break it up into microservices.
  5. Todo: Mention how I have tried to break the application up by feature – products, orders, customers, and so on. I might not have it quite right yet – time will tell – but it’s a good start. Segregating the application this way make’s it obvious what’s important, and give me a logical starting pointing should I need to break it up into microservices.
  6. Todo: Mention how I have tried to break the application up by feature – products, orders, customers, and so on. I might not have it quite right yet – time will tell – but it’s a good start. Segregating the application this way make’s it obvious what’s important, and give me a logical starting pointing should I need to break it up into microservices.
  7. Todo: Mention how I have tried to break the application up by feature – products, orders, customers, and so on. I might not have it quite right yet – time will tell – but it’s a good start. Segregating the application this way make’s it obvious what’s important, and give me a logical starting pointing should I need to break it up into microservices.
  8. Todo: Mention how I have tried to break the application up by feature – products, orders, customers, and so on. I might not have it quite right yet – time will tell – but it’s a good start. Segregating the application this way make’s it obvious what’s important, and give me a logical starting pointing should I need to break it up into microservices.