SlideShare una empresa de Scribd logo
1 de 84
Descargar para leer sin conexión
Front end architecture patterns
INTRODUCTION TO
FRONT-END ARCHITECTURE
PATTERNS
Oleksandr Tryshchenko
Senior Front-end Developer, DataArt
tryshchenko.com
Agenda
• Classic Back-End architecture patterns
• Contemporary Front-End architecture patterns
18 May 2017 3
History
18 May 2017 4
Web 1.0
18 May 2017 5
• Server-side rendering
• Static pages
• ActiveX, java applets
JavaScript Usage In 2004
Usage,%
Snow Effect Blinking Effect Something Useful
18 May 2017 6
JavaScript Usage In 2004
18 May 2017 7
Why didn’t JS Evolve Earlier?
• Limited browser API’s
• Lack of protocols for client-server communication
• Slow and expensive internet connection
18 May 2017 8
Server-side Rendering
Browser
Rendering
Layer
Logic
Layer Data Layer
18 May 2017 9
Client Server
New HTML document – Page
needs to be reloaded.
User gets page
User performs action
(clicks link, submits
form, etc)
Browser sends
request to server
Server handles
request and
generates new page
Browser loads new
page
18 May 2017 10
SERVER-SIDE
RENDERING
User gets page
User performs action
(clicks link, submits
form, etc)
Browser sends
request to server
Server handles
request and
generates new page
Browser loads new
page
18 May 2017 11
SERVER-SIDE
RENDERING
What Changed?
18 May 2017 12
Game Changer: AJAX
• Microsoft Outlook Web Access
• Gmail
• Google Maps
18 May 2017 13
Game Changer: AJAX
18 May 2017 14
Game Changer: 3G, Smartphones
• iOS
• Android
• Windows Phone
18 May 2017 15
Client-side Rendering
• One common way to interact with a server for different
platforms.
• Performance expenses moved to client’s device.
• Separated delivery process.
18 May 2017 16
Client-side Rendering
Browser
Front-End
Application
Data
Exchange
Layer
Logic
Layer
Data Layer
18 May 2017 17
Client Server
Returns XML / JSON with data
Updates DOM Tree
Front-End Frameworks
• Huge amount of code which developers must support
• Spaghetti out of callbacks and events
• High coupling
• Awful encapsulation
18 May 2017 18
Model View Controller
18 May 2017 19
MVC (Model View Controller)
18 May 2017 20
Model
ControllerView
MVC?
18 May 2017 21
JavaScript is Asynchronous
18 May 2017 22
Sync / Async
18 May 2017 23
Synchronous
getData() modifyData() displayData()
18 May 2017 24
Asynchronous
getData()
WHATEVER
NEXT …
18 May 2017 25
modifyData() displayData() …
Waiting For Server
Response
18 May 2017 26
18 May 2017 27
Workarounds
• Callbacks
• Promises
• Generators
• Async / Await
• Streams (ReactiveX)*
18 May 2017 28
18 May 2017 29
Callbacks
18 May 2017 30
Promises
18 May 2017 31
ES6 Generators
18 May 2017 32
Async / Await
Data Exchange
• “Vertical” (through components’ composition)
• “Horizontal” (through singleton)
18 May 2017 33
Data Exchange Using Components
Composition
Main component
(Declares
variable)
Widget 1
(Uses variable)
Widget 2
(Uses variable)
Widget 3
(Uses variable)
Header
Component
(Uses variable)
18 May 2017 34
Data Exchange Using Components
Composition
Main component
(Declares
variable)
Widget 1
(Uses variable)
Widget 2
(Uses variable)
Widget 3
(Uses variable)
Header
Component
(Uses variable)
18 May 2017 35
Emits Change Event +
Value (any of the boxes)
Emits Change
Event + Value
Data Exchange Using Components’
Composition
Main component
(Declares
variable)
Widget 1
(Uses variable)
Widget 2
(Uses variable)
Widget 3
(Uses variable)
Header
Component
(Uses variable)
18 May 2017 36
Checks changes and
updates components
Checks changes and updates
components (each one)
Data Exchange Using Singleton
Main
component
(Uses variable)
Widget 1
(Uses variable)
Widget 2
(Uses variable)
Widget 3
(Uses variable)
Header
Component
(Uses variable)
18 May 2017 37
Data Service
(Declares
variable)
Difference?
18 May 2017 38
Data Exchange Using Singleton
18 May 2017 39
App User Data
Service
Transactions
Service
Products Service
Contacts Service
etc
Smart / Dumb Components
Contacts
Component
(Gets Data)
Dumb
Representation
Layer
Transactions
Component
(Gets Data)
Dumb
Representation
Layer
18 May 2017 40
Event-driven Architecture
• Many types of user input
• Messages from different system components
• Timeouts / intervals
18 May 2017 41
Model View ViewModel
18 May 2017 42
MVVM (Model View ViewModel)
View ViewModel Model
18 May 2017 43
Data Binding
Write
Read
Why MVVM?
• Fast interaction with representation layer
• Is suitable for events-oriented environment
• Close enough to classical MVC
18 May 2017 44
MVVM (Model View ViewModel)
18 May 2017 45
18 May 2017 46
Component / Template Communication (Angular 2)
18 May 2017 47
Component / Template Communication (Angular 2)
18 May 2017 48
Component / Template Communication (Angular 2)
18 May 2017 49
Component / Template Communication (Angular 2)
What’s Wrong With it?
18 May 2017 50
What’s Wrong With it?
18 May 2017 51
• State management
• Data mutations
Flux
18 May 2017 52
Flux
Action Dispatcher Store View
18 May 2017 53
User input or event
Flux isn’t only about Front-End
18 May 2017 54
Shortly
• Multiple stores
• Store has logic
• State can be mutable
18 May 2017 55
Flux Application Demo
18 May 2017 56
HTTPS://GITHUB.COM/S
COTCH-IO/REACT-FLUX-
CART
Flux
18 May 2017 57
Redux
18 May 2017 58
Redux is not a pattern itself!
18 May 2017 59
Redux is a library. A library which
partly implements Flux.
18 May 2017 60
Redux
View
Actions
ReducerStore
State
18 May 2017 61
What is State?
18 May 2017 62
What is Reducer?
18 May 2017 63
• It’s a pure function
Shortly
• State tree instead of multiple states
• Pure function as reducers
• Time Travel
• Redux has no dispatcher entity, its store exposes API to
dispatch actions
• The most logical are in reducers
18 May 2017 64
What Does React Components Look
Like
18 May 2017 65
HTTPS://GITHUB.COM/Q
UANGBUULE/REDUX-
EXAMPLE
Functional Programming
• No side-effects.
• Immutable data structures.
18 May 2017 66
Immutability
• No function should change anything outside it.
• Every function should return a new value.
• Function shouldn’t modify it’s arguments.
18 May 2017 67
18 May 2017 68
Mutable
18 May 2017 69
Mutable
18 May 2017 70
Mutable
18 May 2017 71
Mutable
18 May 2017 72
Immutable
18 May 2017 73
Immutable
What Are Pure and Impure Functions
18 May 2017 74
Redux
18 May 2017 75
18 May 2017 H T T P : / / W W W . J C H A P R O N . C O M / 2 0 1 5 / 0 8 / 1 4 / G E T T I N G - S T A R T E D - W I T H - R E D U X / 76
Different Patterns – Different
Workarounds
•MVC
•MVVM
•FLUX
•REDUX
18 May 2017 77
Object Oriented Programming
Functional Programming
But Technically You Can…
•MVC
•MVVM
•FLUX
•REDUX
18 May 2017 78
Object Oriented Programming
Functional Programming
And What Should We Use?
18 May 2017 79
Components
• Modular Architecture
• Scalable
18 May 2017 80
18 May 2017 F O O T E R H E R E 81
18 May 2017 F O O T E R H E R E 82
What’s the Idea?
18 May 2017 83
Questions?
18 May 2017 84

Más contenido relacionado

La actualidad más candente

Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxGetting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxIlesh Mistry
 
Reactjs workshop (1)
Reactjs workshop (1)Reactjs workshop (1)
Reactjs workshop (1)Ahmed rebai
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitecturePaul Mooney
 
D2 domain driven-design
D2 domain driven-designD2 domain driven-design
D2 domain driven-designArnaud Bouchez
 
Lessons Learned from Using Next.js in Production
Lessons Learned from Using Next.js in ProductionLessons Learned from Using Next.js in Production
Lessons Learned from Using Next.js in ProductionPanjamapong Sermsawatsri
 
Implementing Domain Events with Kafka
Implementing Domain Events with KafkaImplementing Domain Events with Kafka
Implementing Domain Events with KafkaAndrei Rugina
 
APIs in a Microservice Architecture
APIs in a Microservice ArchitectureAPIs in a Microservice Architecture
APIs in a Microservice ArchitectureWSO2
 
Introduction to back-end
Introduction to back-endIntroduction to back-end
Introduction to back-endMosaab Ehab
 
Asp.net mvc basic introduction
Asp.net mvc basic introductionAsp.net mvc basic introduction
Asp.net mvc basic introductionBhagath Gopinath
 
An introduction to React.js
An introduction to React.jsAn introduction to React.js
An introduction to React.jsEmanuele DelBono
 
Microservices architecture overview v2
Microservices architecture overview v2Microservices architecture overview v2
Microservices architecture overview v2Dmitry Skaredov
 
Big Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingBig Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingAraf Karsh Hamid
 

La actualidad más candente (20)

Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptxGetting started with Next.js - IM Tech Meetup - Oct 2022.pptx
Getting started with Next.js - IM Tech Meetup - Oct 2022.pptx
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
React JS - Introduction
React JS - IntroductionReact JS - Introduction
React JS - Introduction
 
Micro-frontend
Micro-frontendMicro-frontend
Micro-frontend
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Reactjs workshop (1)
Reactjs workshop (1)Reactjs workshop (1)
Reactjs workshop (1)
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic Architecture
 
Reactjs
Reactjs Reactjs
Reactjs
 
D2 domain driven-design
D2 domain driven-designD2 domain driven-design
D2 domain driven-design
 
Intro to React
Intro to ReactIntro to React
Intro to React
 
Lessons Learned from Using Next.js in Production
Lessons Learned from Using Next.js in ProductionLessons Learned from Using Next.js in Production
Lessons Learned from Using Next.js in Production
 
Micro Frontends
Micro FrontendsMicro Frontends
Micro Frontends
 
Implementing Domain Events with Kafka
Implementing Domain Events with KafkaImplementing Domain Events with Kafka
Implementing Domain Events with Kafka
 
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS
 
APIs in a Microservice Architecture
APIs in a Microservice ArchitectureAPIs in a Microservice Architecture
APIs in a Microservice Architecture
 
Introduction to back-end
Introduction to back-endIntroduction to back-end
Introduction to back-end
 
Asp.net mvc basic introduction
Asp.net mvc basic introductionAsp.net mvc basic introduction
Asp.net mvc basic introduction
 
An introduction to React.js
An introduction to React.jsAn introduction to React.js
An introduction to React.js
 
Microservices architecture overview v2
Microservices architecture overview v2Microservices architecture overview v2
Microservices architecture overview v2
 
Big Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb ShardingBig Data Redis Mongodb Dynamodb Sharding
Big Data Redis Mongodb Dynamodb Sharding
 

Similar a Front end architecture patterns

How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)Oleksandr Tryshchenko
 
Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"Fwdays
 
MVC6 - NetConf UY 2017
MVC6 -  NetConf UY 2017MVC6 -  NetConf UY 2017
MVC6 - NetConf UY 2017David Revoledo
 
Mli 2017 technical backward compatibility
Mli 2017 technical backward compatibilityMli 2017 technical backward compatibility
Mli 2017 technical backward compatibilityHanoi MagentoMeetup
 
Automated tests in Magento
Automated tests in MagentoAutomated tests in Magento
Automated tests in MagentoYevhen Sentiabov
 
A Big Data Analysis Framework for Model-Based Web User Behavior Analytics
A Big Data Analysis Framework for Model-Based Web User Behavior AnalyticsA Big Data Analysis Framework for Model-Based Web User Behavior Analytics
A Big Data Analysis Framework for Model-Based Web User Behavior AnalyticsAndrea Mauri
 
Best Practices - By Lofi Dewanto
Best Practices - By Lofi DewantoBest Practices - By Lofi Dewanto
Best Practices - By Lofi DewantoGWTcon
 
Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I. Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I. Elogic Magento Development
 
MageConf 2017, Design API Best Practices
MageConf 2017, Design API Best PracticesMageConf 2017, Design API Best Practices
MageConf 2017, Design API Best PracticesIgor Miniailo
 
Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.Elogic Magento Development
 
Magento 2 ERP Integration Best Practices: Microsoft Dynamics
Magento 2 ERP Integration Best Practices: Microsoft DynamicsMagento 2 ERP Integration Best Practices: Microsoft Dynamics
Magento 2 ERP Integration Best Practices: Microsoft DynamicsJoshua Warren
 
Performance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React ApplicationsPerformance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React ApplicationsDenis Izmaylov
 
Multi Source Inventory (MSI) in Magento 2
Multi Source Inventory (MSI) in Magento 2 Multi Source Inventory (MSI) in Magento 2
Multi Source Inventory (MSI) in Magento 2 Igor Miniailo
 
Energy Saving Trust - Esri UK Annual Conference 2016
Energy Saving Trust - Esri UK Annual Conference 2016Energy Saving Trust - Esri UK Annual Conference 2016
Energy Saving Trust - Esri UK Annual Conference 2016Esri UK
 
Mongo DB Monitoring - Become a MongoDB DBA
Mongo DB Monitoring - Become a MongoDB DBAMongo DB Monitoring - Become a MongoDB DBA
Mongo DB Monitoring - Become a MongoDB DBASeveralnines
 

Similar a Front end architecture patterns (20)

How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
How To Tweak Angular 2 Performance (JavaScript Frameworks Day 2017 Kiev)
 
Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"Александр Трищенко "How to improve Angular 2 performance?"
Александр Трищенко "How to improve Angular 2 performance?"
 
MVC6 - NetConf UY 2017
MVC6 -  NetConf UY 2017MVC6 -  NetConf UY 2017
MVC6 - NetConf UY 2017
 
How To Tweak Angular 2 Performance
How To Tweak Angular 2 PerformanceHow To Tweak Angular 2 Performance
How To Tweak Angular 2 Performance
 
Mli 2017 technical backward compatibility
Mli 2017 technical backward compatibilityMli 2017 technical backward compatibility
Mli 2017 technical backward compatibility
 
Javascript
JavascriptJavascript
Javascript
 
Automated tests in Magento
Automated tests in MagentoAutomated tests in Magento
Automated tests in Magento
 
A Big Data Analysis Framework for Model-Based Web User Behavior Analytics
A Big Data Analysis Framework for Model-Based Web User Behavior AnalyticsA Big Data Analysis Framework for Model-Based Web User Behavior Analytics
A Big Data Analysis Framework for Model-Based Web User Behavior Analytics
 
[TestWarez 2017] Automated Testing for Common Errors and Difference Recogniti...
[TestWarez 2017] Automated Testing for Common Errors and Difference Recogniti...[TestWarez 2017] Automated Testing for Common Errors and Difference Recogniti...
[TestWarez 2017] Automated Testing for Common Errors and Difference Recogniti...
 
Best Practices - By Lofi Dewanto
Best Practices - By Lofi DewantoBest Practices - By Lofi Dewanto
Best Practices - By Lofi Dewanto
 
Ajax
AjaxAjax
Ajax
 
Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I. Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
Chernivtsi Magento Meetup&Contribution day. Miniailo.I.
 
MageConf 2017, Design API Best Practices
MageConf 2017, Design API Best PracticesMageConf 2017, Design API Best Practices
MageConf 2017, Design API Best Practices
 
A Look at TensorFlow.js
A Look at TensorFlow.jsA Look at TensorFlow.js
A Look at TensorFlow.js
 
Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.Chernivtsi Magento Meetup&Contribution day. Naida V.
Chernivtsi Magento Meetup&Contribution day. Naida V.
 
Magento 2 ERP Integration Best Practices: Microsoft Dynamics
Magento 2 ERP Integration Best Practices: Microsoft DynamicsMagento 2 ERP Integration Best Practices: Microsoft Dynamics
Magento 2 ERP Integration Best Practices: Microsoft Dynamics
 
Performance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React ApplicationsPerformance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React Applications
 
Multi Source Inventory (MSI) in Magento 2
Multi Source Inventory (MSI) in Magento 2 Multi Source Inventory (MSI) in Magento 2
Multi Source Inventory (MSI) in Magento 2
 
Energy Saving Trust - Esri UK Annual Conference 2016
Energy Saving Trust - Esri UK Annual Conference 2016Energy Saving Trust - Esri UK Annual Conference 2016
Energy Saving Trust - Esri UK Annual Conference 2016
 
Mongo DB Monitoring - Become a MongoDB DBA
Mongo DB Monitoring - Become a MongoDB DBAMongo DB Monitoring - Become a MongoDB DBA
Mongo DB Monitoring - Become a MongoDB DBA
 

Más de Oleksandr Tryshchenko

Más de Oleksandr Tryshchenko (9)

PWA to React Native migration
PWA to React Native migrationPWA to React Native migration
PWA to React Native migration
 
Web Scraping
Web ScrapingWeb Scraping
Web Scraping
 
2018 grai
2018 grai2018 grai
2018 grai
 
Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3Mobile Applications with Angular 4 and Ionic 3
Mobile Applications with Angular 4 and Ionic 3
 
20 000 Leagues Under The Angular 4
20 000 Leagues Under The Angular 420 000 Leagues Under The Angular 4
20 000 Leagues Under The Angular 4
 
Angular 2 On Production (IT Talk in Dnipro)
Angular 2 On Production (IT Talk in Dnipro)Angular 2 On Production (IT Talk in Dnipro)
Angular 2 On Production (IT Talk in Dnipro)
 
ES6 Generators On Koa.js Example
ES6 Generators On Koa.js ExampleES6 Generators On Koa.js Example
ES6 Generators On Koa.js Example
 
Angular 2 On Production
Angular 2 On ProductionAngular 2 On Production
Angular 2 On Production
 
ES6 basics
ES6 basicsES6 basics
ES6 basics
 

Último

Watermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security ChallengesWatermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security ChallengesShyamsundar Das
 
eAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspectionseAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspectionsNirav Modi
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...OnePlan Solutions
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeNeo4j
 
Cybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadCybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadIvo Andreev
 
Why Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfWhy Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfBrain Inventory
 
Enterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze IncEnterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze Incrobinwilliams8624
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIIvo Andreev
 
Growing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesGrowing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesSoftwareMill
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfTobias Schneck
 
How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?AmeliaSmith90
 
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.Sharon Liu
 
AI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human BeautyAI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human BeautyRaymond Okyere-Forson
 
Introduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptxIntroduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptxIntelliSource Technologies
 
Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxJoão Esperancinha
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native BuildpacksVish Abrams
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampVICTOR MAESTRE RAMIREZ
 
Kawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies
 
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine HarmonyLeveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmonyelliciumsolutionspun
 

Último (20)

Watermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security ChallengesWatermarking in Source Code: Applications and Security Challenges
Watermarking in Source Code: Applications and Security Challenges
 
eAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspectionseAuditor Audits & Inspections - conduct field inspections
eAuditor Audits & Inspections - conduct field inspections
 
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
Transforming PMO Success with AI - Discover OnePlan Strategic Portfolio Work ...
 
IA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG timeIA Generativa y Grafos de Neo4j: RAG time
IA Generativa y Grafos de Neo4j: RAG time
 
Cybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and BadCybersecurity Challenges with Generative AI - for Good and Bad
Cybersecurity Challenges with Generative AI - for Good and Bad
 
Why Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdfWhy Choose Brain Inventory For Ecommerce Development.pdf
Why Choose Brain Inventory For Ecommerce Development.pdf
 
Enterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze IncEnterprise Document Management System - Qualityze Inc
Enterprise Document Management System - Qualityze Inc
 
JS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AIJS-Experts - Cybersecurity for Generative AI
JS-Experts - Cybersecurity for Generative AI
 
Growing Oxen: channel operators and retries
Growing Oxen: channel operators and retriesGrowing Oxen: channel operators and retries
Growing Oxen: channel operators and retries
 
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdfARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
ARM Talk @ Rejekts - Will ARM be the new Mainstream in our Data Centers_.pdf
 
How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?How Does the Epitome of Spyware Differ from Other Malicious Software?
How Does the Epitome of Spyware Differ from Other Malicious Software?
 
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
20240319 Car Simulator Plan.pptx . Plan for a JavaScript Car Driving Simulator.
 
AI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human BeautyAI Embracing Every Shade of Human Beauty
AI Embracing Every Shade of Human Beauty
 
Introduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptxIntroduction-to-Software-Development-Outsourcing.pptx
Introduction-to-Software-Development-Outsourcing.pptx
 
Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptx
 
Streamlining Your Application Builds with Cloud Native Buildpacks
Streamlining Your Application Builds  with Cloud Native BuildpacksStreamlining Your Application Builds  with Cloud Native Buildpacks
Streamlining Your Application Builds with Cloud Native Buildpacks
 
Deep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - DatacampDeep Learning for Images with PyTorch - Datacamp
Deep Learning for Images with PyTorch - Datacamp
 
Kawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in TrivandrumKawika Technologies pvt ltd Software Development Company in Trivandrum
Kawika Technologies pvt ltd Software Development Company in Trivandrum
 
Salesforce AI Associate Certification.pptx
Salesforce AI Associate Certification.pptxSalesforce AI Associate Certification.pptx
Salesforce AI Associate Certification.pptx
 
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine HarmonyLeveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
Leveraging DxSherpa's Generative AI Services to Unlock Human-Machine Harmony
 

Front end architecture patterns