Index

Symbols

.NET

communication facilities 112, 113

dealing, with microservices 112

.NET 6

design patterns 250

interoperability with .NET 6 55

SOA, dealing with 312

tips and tricks, for coding 553, 554

used, for creating scalable web app 38-45

used, for enabling availability 32, 33

used, for enabling resiliency 32, 33

used, for enabling scalability 32, 33

using, for code reuse 287

.NET Core 162

.NET Core projects 59

.NET Generic Host

reference link 250

.NET HTTP clients 326, 327

.NET libraries

documenting, with DocFX 294

.NET MAUI 496-501

Blazor applications 502, 503

.NET Portability Analyzer

reference link 489

.NET SDK

gRPC support 313

.NET Standard

defining class libraries with 60

overview 287-288

reference link 288

.NET Upgrade Assistant

reference link 489

.NET worker services

used, for implementing microservices 361

.yaml files 132

A

A* algorithm 509

absurd 511

acceptance tests 622, 625

Access Control 76

action methods 316

action preconditions 512

aggregates 268

Agile

Manifesto 8

principles 9, 10

scaling 13, 14

software development models 8-10

Ahead-Of-Time (AOT) compilation 474

alpha-beta search 509

Analyze and Code Cleanup tool 557

anti-forgery token 433

API gateway 415

API key 310

API management systems 415

application architecture 416

application layer 418

data layer 417

defining 417-420

domain layer abstraction 417

flow of action 418, 419

Application Insights 585

software, monitoring 585-591

application layer 263-267

defining 427-432

Application Performance Management (APM) 221

Application Services 264

application specifications 416

defining 416

app, migrating from Xamarin.Forms

reference link 496

Artificial Intelligence (AI)

Azure Cognitive Services, using 91

introduction to 508

Artificial Intelligence (AI) techniques

Bayesian networks 513, 514

classification 508

first-order calculus 510, 511

heuristic rules 513, 514

heuristic search 509, 510

neural networks 513, 514

planners 512, 513

truth maintenance systems (TMSs) 514, 515

artificial neuron 521

ASP.NET Core 314-316

basics 374, 375

configuration data, using it with framework 379-383

controllers and ViewModels, defining 389-393

globalization 407-410

middleware 375-379

MVC and design principles 405

service authorization 319-322

support for OpenAPI 322-326

used, for implementing REST services 316-319

used, for implementing worker microservices 351

view code, reusing 401-404

ASP.NET Core MVC, with response HTML

Razor flow, of control statements 395-397

Razor tag helpers, using 397-401

Razor View properties 397

Razor Views 393-395

ASP.NET Core pipeline 375

advantages 405

client-side validation 406, 407

defining 384-389

server-side validation 406, 407

asynchronous programming

applying 22

ATMS algorithms 518

authentication 57, 58

automated integration test 623, 624

automated unit test 623, 624

autoscaling 153

Awesome Blazor project

reference link 469, 475

axioms 510

Azure 3

private Docker registry, defining 125-127

scalable web app, creating 33-36

support, for microservice orchestration 125

used, for enabling availability 32, 33

used, for enabling resiliency 32, 33

used, for enabling scalability 32, 33

Azure account

creating 3-6

Azure App Service 414

Azure Charts

reference link 4

Azure Cognitive Services 91

Azure Container Registry

reference link 107

Azure Cosmos DB 196

account, creating 196, 197

client 202

container, creating 197-199

data, accessing 199

database consistency, defining 199-201

destinations/packages database, implementing with 204-208

Entity Framework Core provider 203

reference link, for capacity modes 197

Azure database

creating 574

Azure DevOps 3, 63-67

continuous delivery 572

package feeds 71-73

pipelines 74

repository 68-71

system requirements managing 75

test plans 74

use cases, presenting 77-80

used, for organizing work 67, 68

Azure DevOps repository

connecting to 648-654

Azure Durable Functions 222

Azure Functions

implementing, to send emails 224

maintaining 220-222

pricing 213

programming, with C# 214-220

roadmap 223, 224

templates 220

triggers and bindings 220

Azure Functions app 212

App Service plan 213, 214

Consumption plan 213

creating 212, 213

Premium plan 213

Azure Functions, implementing to send emails

Azure queue storage, creating 225-227

Azure Storage Explorer, reference link 227

function, creating 227-229

queue trigger function, creating 229-231

Azure Kubernetes clusters

interacting with 142, 143

Azure Machine Learning Studio 528

Azure Monitor 585

Azure Pipelines

configuring 575-578

Azure Queue Storage

creating 225-227

output bindings reference link 228

Azure Service Bus 347

communication 113

Azure SQL database 189

creating 190

Azure storage accounts

creating 193

Azure Web App

creating 573, 574

B

B2B (Business to Business) 58

B2C (Business to Consumer) 58

back-propagation algorithm 522

bank language 254

Bayesian networks 513, 514

bearer token 310

BenchmarkDotNet

URL 46

best practices, for reliable Azure Functions

reference link 213

best practices, in coding 540

class coupling 546-548

cyclomatic complexity metric 541-544

depth of inheritance metric 545, 546

index, maintainability 541

number of lines metric 548

bi-dimensional maps 521

Binaron 362

binary serialization 338

Blazor

bindings 458-460

cascading parameters 454-456

error handling 456, 457

events 457

HTML, updating 460, 461

templates 453-455

validation 463-465

Blazor, advanced features 466

AOT compilation 474

authentication 470-472

authorization 470-472

communication, with server 472-474

globalization 469

JavaScript interoperability 467, 468

localization 469

references, to components and HTML elements 466, 467

Blazor components 448

HTML <head> content, modifying from 465, 466

lifecycle 461, 462

structure 449-452

Blazor Controls Toolkit

reference link 475

Blazor Forms 463-465

Blazorise project

reference link 475

Blazor pages 448

BlazorReview application

creating 444

loading 444, 445

root App component, using for simulating page changes 446-448

starting 445, 446

BlazorStrap

reference link 475

Blazor WebAssembly

architecture 442

third-party tools 475

Bounded Contexts 256

Builder pattern 237-240

bulkhead isolation 105

bUnit open source project

reference link 475

business layer 263

application layer 263

domain layer 263

C

C#

dealing, with code reuse 289

functional tests, automating 637

performance issues, considerations 46

safe code, writing 549

used, for programming Azure functions 214-220

caching 22

C# Azure Functions, in isolated process

reference link 224

C# code

evaluating, tools 555-559

C#, dealing with code reuse

generics 291

object-oriented analysis 289-291

C# test projects

defining, in Visual Studio 631

certificate manager 141

change detection 460

choreography 350

CI/CD challenges, techniques

automated testing, utilizing 615-617

continuous production deployment, disabling 610, 611

Pull Requests (PRs), using 611-615

claims 310

class coupling 546-548

clause resolution 510

clauses 511

cloud architecture availability patterns

reference link 33

cluster nodes 130

code analyze

extension tools, applying to 559

Code Metrics tool

in Visual Studio 540

code modularity 101

code quality

identifying 554

code reusability

principles 283

code reuse 286

.NET 6, using 287

advantages 284

bad implementation 284, 285

C#, dealing with 289

not ready for reuse considerations 292

use case 295, 296

Code Style option 556

command handlers 275-277

command pattern 246, 247

Command Query Responsibility Segregation (CQRS) 268, 272-275, 418

communication 336, 337

communication stack, factors

availability of tools and knowledge 301

compatibility constraints 301

development/deployment platform 301

flexibility versus available features 302

performance 301

service description 302

compiled models 174

composition files 107

connectors 161

constraint propagation 509

containers 106

Context Mapping 258

continuous delivery (CD) 583

with Azure DevOps 572

continuous feedback

defining 585

continuous integration (CI)

defining 571, 572

Continuous Integration and Continuous Deployment/Delivery (CI/CD) 46, 67, 606

GitHub Actions, using 607-609

risks and challenges 610

risks and challenges, dealing with 610-617

trigger, enabling 606

controlled application 637

testing 640-643

controllers 316, 389-393

defining 432-438

control set 519

convolutionary 521

Cosmos DB emulator

reference link 208

Cosmos DB Entity Framework Core provider

use case 204

cross-platform technologies 493

.NET MAUI 496

Xamarin Forms 494-496

customer 255

cyclomatic complexity 541-544

D

database access

obtaining 23

database approach

advantages 195

disadvantages 195

database consistency levels

bounded staleness 200

consistent prefix 200

eventual 200

session 200

strong 200

Database Transaction Units (DTUs) model 189

data-driven asynchronous communication

implementing 347-349

data layer

defining 422-427

deploying 182, 183

data serialization 336, 337

data storage use case 204

Data Transfer Objects (DTOs) 179, 267, 273

DB entities

defining 164-166

DELETE operation 307

demo Guestbook application

deploying 145-148

Dependency Injection (DI) 374, 419, 553

Dependency Injection pattern 248, 249

Dependency Service 496

deployment modularity 101

Deployments 133

depth of inheritance 545, 546

design patterns 235-237

Builder pattern 237-240

challenge 236

Command pattern 246, 247

Dependency Injection pattern 248, 249

Factory pattern 240-242

in .NET 6 250

principles 236

Proxy pattern 244-246

Publisher/Subscriber pattern 248

purpose 235-237

Singleton pattern 242-244

Design Sprint 20, 21

design techniques

using 20

Design Thinking 20

destinations/packages database

implementing, with Cosmos DB 204-208

DevOps 570

principles 571

distributed transactions 349, 350

two-stage protocol 349

DocFX

used, for documenting .NET libraries 294

Docker 107

Docker Compose 107

Docker file

analyzing 121, 122

Domain-Driven Design (DDD) 256-259, 416

Domain-Driven Design (DDD) entities 259-262, 271, 272

domain events 258, 275-277

domain layer 263-265

domain layer abstraction

defining 420-422

domains

use case 278-281

dotnet-install scripts

reference link 55

dynamic link libraries (DLLs) 101, 287

E

elicitation 15

emails

sending, by Azure Functions implementation 224

Entity Framework Core 271, 272

advanced features 183-185

configuring 162, 163

data, querying 175-179

data, updating 175-179

migrations 171-174

entity functions 222

envelopes 303

Epic work items 76

Erlang 361

event sourcing 278, 350

exceptions 47, 48

exchanges 362

extension tools

applying, to analyze code 559

Extract-Transform-Load (ETL) 525

Extreme Programming (XP) 11, 12

TDD and Extreme Programming 626

URL 11

F

Factory pattern 240-242

feature work items 76

feedback

enabling, with Test and Feedback tool 592-596

Figma

URL 16

first-order calculus 510, 511

fixture class 633-635

FluentValidation 406

formatter 390

frontend microservices 414

function

creating, to send emails 227-229

functional tests 622, 625, 628-630

automating 645-648

automating, in C# 637

use case 643-645

writing 625, 626

function app timeout duration

reference link 214

Function as a Service (FaaS) 95

G

Gang of Four (GoF) 236

Garbage Collector (GC) 23

generic hosts

using 115-120

generics 291

GET operation 307

GitHub 3

GitHub Actions 607

GitHub flow 549

reference link 549

gRPC 313

reference link 314

GrpcMicroservice project

testing with fake purchase requests generator 358-361

H

headless Services 139

Helm

charts 154, 155

heuristic rules 513, 514

heuristic search 509, 510

horizontal scaling (scaling out) 37, 38

hosted services 115

HTML <head> content

modifying, from Blazor components 465, 466

HTML micro-frontends 415, 416

HTTPS certificates 141

HTTP trigger 215

hybrid applications

significance 95, 96

using 95

WWTravelClub architecture use case 96, 97

I

IDisposable interface 552, 553

image features 521

incremental model

analyzing 7, 8

induction-based learning 523, 524

Infrastructure as a Service (IaaS) 84

Azure opportunities 84-86

security responsibility 86

Infrastructure as Code (IaC) approach

reference link 574

infrastructure layer 265

Ingress Controller

installing 156

Ingresses 110, 139

HTTPS termination 140, 141

name-based virtual hosting 140

services 140

using as a web server and load balancing 414

integration tests 622

automating 623

interfaces

mocking, with Moq framework 635, 636

internal queues

replacing, with RabbitMQ 362-370

interoperability constraint 300

Inversion of Control (IoC) 249

isolated process model 223

iterative algorithm 519

J

Jasmine 630

K

Kanban 13

Karma 630

knowledge revision 516

Kolmogorov complexity 519

Kubectl

using 144

Kubelet 131

Kubernetes 130

.yaml files 132

advanced concepts 148

autoscaling 153

Deployments 133

liveness checks 151, 152

readiness checks 151, 152

ReplicaSets 133

requiring permanent storage 148, 149

secrets 150, 151

Services 136-139

StatefulSets 134, 135

Kubernetes cluster 130

L

labels 131

lazy loading 246

Lean principles 10

Lean software development 10

learning by being told 516

least commitment 509

Levenshtein algorithm 52

linear planners 512

Lines of Executable code 548

Lines of Source code 548

LINQ queries 161

Linux

service, creating 56

Lipschitz continuous 519

local queue 348

Lucidchart

URL 16

M

machine learning (ML) 508, 515

examples 518, 519

fundamentals 516-518

smooth functions 520, 521

working 515

machine learning solution, delivering steps

data, preparing 525

data, providing 525

goal, defining 525

model, deploying 526-528

model, training 526-528

model, tuning 526-528

trained model feed back 529

trained model, testing 529

Machine Learning Studio 526

maintainability index 541

mapped collections

defining 166

mapping configuration

completing 167-171

message brokers 347

used, for implementing microservices 361

Message Center 496

messages 338

micro-frontends 414

microservice orchestration

Azure support 125

Visual Studio support 125

microservices 100

application layer 353-355

architecture 351

communication channels 112

implementation of business and data layer, improving 110, 111

implementing, with message brokers 361

implementing, with .NET worker services 361

independence 100, 101

layered architectures 108, 109

presentation layer 109, 110

specifications 351

storage layer 352, 353

tools, requisites 125

microservices, design principles 102

independence, from deployment environment 103

independence, of design choices 102

loose coupling 103

no chained requests/responses 103-105

middleware 375

Minimal API 388

Minimal APIs overview

reference link 316

minimum viable product (MVP) 20

ML.NET 529

ML.NET Model Builder 530-536

ML project

software architect, role 525

modus ponens 510

Moq framework

used, for mocking interfaces 635, 636

Multi-Factor Authentication (MFA) 58

multistage environment 583

multi-tenant applications 195

multithreading environments

don’ts 48, 49

dos 48, 49

MVC framework 318

MVC pattern 410, 411

MySQL server

creating, on Azure 189

N

native development

technologies focused on 488

Windows Forms 488, 489

WPF Projects 489, 490

Xamarin 490, 491

neural networks 513, 514, 521, 522

nodes 105, 130

NoSQL databases 190, 191

Document-Oriented Database 190

Graph Database 190

Key-Value Database 190

versus SQL 193-195

Wide-Column Store Database 190

nullable reference types

reference link 553

NUnit 634

O

object allocation

dealing with 23

object-oriented analysis 289-291

Object-Relational Mapping (ORM)

basics 160-162

Ocelot 415

Onion architecture 264-267

Online GUID / UUID Generator

URL 565

OpenAPI 309, 310

ASP.NET Core support 322-326

Open Web Application Security Project® (OWASP)

URL 57

orchestration 350

orchestrator function 222

orchestrators 107

organization

adapting, to service scenario 597

outermost layer 265

P

PATCH operation 307

Pencil Project

reference link 16

performance 19, 21

performance tests 622, 625

writing 626

PersistentVolumeClaim (PVC) 149

pipelines 74

pixel shaders 508

planners 512, 513

Platform as a Service (PaaS) 22, 84, 87

Azure Cognitive Services 91-94

SQL databases 88-91

web app 88

pods 130

Polly 360

possible world 515

POST operation 307

pre-deployment conditions

approval options 584, 585

defining 583, 584

presentation layer

data, returning to 179-181

private Docker registry

defining, in Azure 125-127

Probable Approximate Correct (PAC)

fundamentals 516

Product Backlog items/User Story work items 76

Product Owner 12

progressive web apps (PWA) 492, 493

project

publishing 122-124

proof of concept (POC) 488

ProtoBuf binary format 338

ProtoBuf data description language 339-343

ProtoBuf deserialization 344

ProtoBuf serialization 344

prototypes 16

providers 161

reference link 161

Proxy pattern 244-246

public registry, Docker

reference link 107

public web APIs 415

Publisher/Subscriber pattern 248

Pull Requests (PRs) 612

PUT operation 307

Q

queued requests

processing 355-357

queue trigger function

creating 229-231

R

RabbitMQ 113, 347

installing 361

messages 362

used, for replacing internal queues 362-370

Razor flow

of control statements 395-397

Razor tag helpers

using 397-401

Razor View

definition 393-395

properties 397

Redis 192

Redis cache

creating 192, 193

reductio ad absurdum 511

refactoring code

considering, reasons 292

relational databases 188

release

creating 580-582

manual approval, adding for 579, 580

Release Flow 549

reference link 549

release stages, Azure DevOps

development/tests 583

production 583

quality assurance 583

reliability patterns

reference link 59

Remote Desktop Protocol (RDP) 86

Remote Procedure Calls (RPC) 337

usage, in microservices 345-347

render tree 453

ReplicaSets 131, 133

repository pattern 269-271

Representational State Transfer (REST) 307

requirements

analyzing 16, 17

requirements engineering 15

requirements gathering process 15

cases impacting system results 21

requirements gathering process cases

usability of system not meeting user needs 24, 25

user needs not properly implemented 24

website is slow to open that page 21

requirements specification

reviewing 19

writing 18

resiliency

enabling, with Azure 32, 33

enabling, with .NET 6 32, 33

resiliency patterns

reference link 32

resilient task execution 114, 115

REST language

example of methods 308, 309

REST service

authentication 310-312

authorization 310-312

implementing, with ASP.NET Core 316-319

REST web services 304

type compatibility rules 305, 306

using, native HTTP features 306-308

reusability

in development life cycle 286, 287

reusable class library

creating 288, 289

robustness 19

route to code 388

S

SaaS solution

advantages 599

disadvantages 599

SAFe® 14

safe code

writing, in C# 549

saga pattern 350

saga transactions, using techniques

choreography 350

orchestration 350

scalability 19

enabling, with Azure 32, 33

enabling, with .NET 6 32, 33

scalable web app

creating, in Azure 33-36

creating, with .NET 6 38-45

scheduler 131

Scrum framework

URL 12

Scrum Master 12

Scrum model 12, 13

secrets 150, 151

security 19

achieving, by design 57

Selenium IDE

reference link 625

Selenium WebDriver

used, for testing staging application 639, 640

sensitive data 58

serverless solution 95

service

creating, in Linux 56

service design 300

service design thinking 597

Service-Oriented Architecture (SOA) 102, 598

.NET 6 deal with 312

Services, Kubernetes 131, 136-139

service scenario

organization, adapting to 597

solution, preparing for 599-601

technical implications 598

shard keys 194

simple application, in Blazor WebAssembly

ASP.NET Core REST APIs, implementing 477-479

business logic, implementing in service 479, 480

implementing 475

solution, preparing 476

user interface, implementing 480-483

Simple Object Access Protocol (SOAP) 303

client support 313

specifications 303, 304

single-page application (SPA) 374, 443

frameworks 443

Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, or Dependency Inversion (SOLID) 623

Singleton pattern 242-244

smooth functions 520, 521

applying, situations 521

requirement 521

SOA approach

principles 300, 301

SOAP web services 303

issues, associated with standard 304

SOA solutions

fundamental features 302

software architect

ML project, software architect’s role 525

software architecture 2, 3

Software as a Service (SaaS) 63, 84, 94, 508, 596

software deployment models 83

software development process model 6

software development project

steps 6

software domains 254-256

software requirements

gathering to design high-quality software 14

SonarAnalyzer

applying 560, 561

Sonar Cloud

reference link 564, 565

SonarLint 560

source code analysis

reference link 560

Sprint 12

SQL

versus NoSQL document-oriented databases 193-195

SQL commands 174

issuing 181, 182

SQL configuration

reference link 91

SQLite.NET 496

StackExchange.Redis client

reference link 192

staging application 637

testing 637-639

testing, with Selenium WebDriver 639, 640

StatefulSets 131, 134, 135

static code analysis tools 554

stored procedures 174

string concatenation 46, 47

subcutaneous tests 625, 630

supervised learning 516

support vector algorithm 517, 523

Swagger

used, for documenting Web API 295

system requirements

managing in Azure DevOps 75

T

target framework moniker (TFM) 289

target frameworks, in SDK-style projects

reference link 289

Team Foundation Server (TFS) 95

tenants 195

Test and Feedback tool

using, to enable feedback 592-596

Test-Driven Development (TDD) 12, 626, 627

green stage 627

red stage 627

refactoring stage 627

test plans 74

theorem provers 510

third-party tools, Blazor WebAssembly 475

Timer trigger 215

traditional software development process models

reviewing 6

traditional software engineering 6

training set 516, 519

transactions

handling 182

truth maintenance systems (TMSs) 514, 515

try-catch statements 549, 550

try-finally statements 551, 552

turing test 508

U

Ubiquitous Language 256

Unified Modeling Language (UML) 16

Unit of Work pattern 269-271

unit tests 622

automating 623

use case 643-645

unsupervised learning 516

constraints 517

usability

huge number of items, selecting from 53-55

selection logic, designing 51-53

use cases 16

presenting, in Azure DevOps 77-80

use-identify-modify-design-build process 287

user interface (UI) 50, 51, 628

user needs

detecting 15, 16

user requirements techniques

interviews 16

observation 16

power of imagination 15

questionnaires 16

using statements 551, 552

V

value objects 262, 263

version control system

using 548

version control system, in teams

dealing with 548

vertical scaling (scaling up) 36, 37

view components 404

ViewModels 389-393

views

defining 432-438

Visual Studio

C# test projects, defining 631

support, for Docker 120, 121

support, for microservice orchestration 125

Visual Studio 2022 Preview

reference link 497

Visual Studio solution

configuring 574, 575

Visual Studio solution, projects

PackagesManagement 419

PackagesManagementDB 419

PackagesManagementDomain 419

W

waterfall model principles 6, 7

Web API

documenting, with Swagger 295

web applications

presentation layers 374

web development

technologies focused on 492

web security 58, 59

Windows Forms 488, 489

Windows Forms desktop app, migrating to .NET 5

reference link 489

Windows Presentation Foundation (WPF) 489, 490

work

organizing, with Azure DevOps 67, 68

worker microservices

implementing, with ASP.NET core 351

World Wild Travel Club (WWTravelClub) 25

requirements gathering process 25

system requirements 26, 27

user needs 26, 27

WWTravelClub architecture use case 96, 97

WWTravelClub packages

exploring 328-333

WWTravelClub project

approach 601, 602, 618

WWTravelClub sample project 563

C# code, evaluating before publishing application 564, 565

code writing, best practices 563

X

Xamarin 374, 490, 491

Xamarin Essentials 496

Xamarin Forms 494-496

XSD specification 304

xUnit 631

xUnit test framework

advanced test preparation 633

using 631-633

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.21.39.142