SlideShare a Scribd company logo
WHAT'S NEW
IN THE FRONT-END DEVELOPMENT NOWADAYS?
KMS TECHNOLOGY VIETNAM
MAY 10TH, 2016
AN LP NGUYEN
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
AGENDA
Front-end
Foundations
SPA - Single Page Application
Modern Front-end Workflow
JavaScript Evolution
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
FRONT-END FOUNDATIONS
SPA - Single Page Application
Modern Front-end Workflow
JavaScript Evolution
FRONT-END FOUNDATIONS
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
FRONT-END FOUNDATIONS
SPA - Single Page Application
Modern Front-end Workflow
JavaScript Evolution
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
SPA - SINGLE PAGE APPLICATION
Modern Front-end Workflow
JavaScript Evolution
SPA - SINGLE PAGE APPLICATION
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
SPA - SINGLE PAGE APPLICATION
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
WebSocket
History
Animation
Transition
Gradient
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
SPA - SINGLE PAGE APPLICATION
Modern Front-end Workflow
JavaScript Evolution
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
MODERN FRONTEND WORKFLOW
JavaScript Evolution
MODERN FRONTEND WORKFLOW
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
MODERN FRONTEND WORKFLOW
JavaScript Evolution
MODERN FRONTEND WORKFLOW
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
MODERN FRONTEND WORKFLOW
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
MODERN FRONTEND WORKFLOW
JavaScript Evolution
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
JAVASCRIPT EVOLUTION
var today;
var now = new Date();
var days = new Array('Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday');
var months = new Array('January','February','March',
'April','May','June','July','August',
'September','October','November','December');
var date = ((now.getDate()<10) ? "0" : "") + now.getDate();
function fourdigits(number) {
return (number < 1000) ? number + 1900 : number;
}
today = days[now.getDay()] + ", " +
months[now.getMonth()] + " " +
date + ", " +
(fourdigits(now.getYear())) ;
console.log(today); //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
let today;
const now = new Date();
const days = new Array('Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday');
const months = new Array('January','February','March',
'April','May','June','July','August',
'September','October','November','December');
const date = ((now.getDate()<10) ? "0" : "") + now.getDate();
function fourdigits(number) {
return (number < 1000) ? number + 1900 : number;
}
today = days[now.getDay()] + ", " +
months[now.getMonth()] + " " +
date + ", " +
(fourdigits(now.getYear())) ;
console.log(today); //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
let today
const now = new Date()
const days = new Array('Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday')
const months = new Array('January','February','March',
'April','May','June','July','August',
'September','October','November','December')
const date = ((now.getDate()<10) ? "0" : "") + now.getDate()
function fourdigits(number) {
return (number < 1000) ? number + 1900 : number
}
today = days[now.getDay()] + ", " +
months[now.getMonth()] + " " +
date + ", " +
(fourdigits(now.getYear()))
console.log(today) //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
let today
const now = new Date()
const days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
const months = ['January','February','March',
'April','May','June','July','August',
'September','October','November','December']
const date = ((now.getDate()<10) ? "0" : "") + now.getDate()
function fourdigits(number) {
return (number < 1000) ? number + 1900 : number
}
today = days[now.getDay()] + ", " +
months[now.getMonth()] + " " +
date + ", " +
(fourdigits(now.getYear()))
console.log(today) //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
let today
const now = new Date()
const days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
const months = ['January','February','March',
'April','May','June','July','August',
'September','October','November','December']
const date = ((now.getDate()<10) ? "0" : "") + now.getDate()
function fourdigits(number) {
return (number < 1000) ? number + 1900 : number
}
const day = days[now.getDay()]
const months = months[now.getMonth()]
const year = fourdigits(now.getYear())
today = day + ", " + month + " " + date + ", " + year
console.log(today) //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
let today
const now = new Date()
const days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
const months = ['January','February','March',
'April','May','June','July','August',
'September','October','November','December']
const date = ((now.getDate()<10) ? "0" : "") + now.getDate()
function fourdigits(number) {
return (number < 1000) ? number + 1900 : number
}
const day = days[now.getDay()]
const months = months[now.getMonth()]
const year = fourdigits(now.getYear())
today = `${day}, ${month} ${date}, ${year}`
console.log(today) //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil {
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil {
constructor() {
}
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil {
constructor() {
this.days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
this.months = ['January','February','March',
'April','May','June','July','August',
'September','October','November','December']
}
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil {
constructor() {
this.days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
this.months = ['January','February','March',
'April','May','June','July','August',
'September','October','November','December']
}
fourDigits(number) {
return (number < 1000) ? number + 1900 : number
}
getToday() {
}
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil {
constructor() {
this.days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
this.months = ['January','February','March',
'April','May','June','July','August',
'September','October','November','December']
}
fourDigits(number) {
return (number < 1000) ? number + 1900 : number
}
getToday() {
const now = new Date()
const date = ((now.getDate()<10) ? "0" : "")+ now.getDate()
const day = this.days[now.getDay()]
const month = this.months[now.getMonth()]
const year = this.fourDigits(now.getYear())
return `${day}, ${month} ${date}, ${year}`
}
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
const dateUtil = new DateUtil()
const today = dateUtil.getToday()
console.log(today) //Tuesday, May 10, 2016
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil {
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil extends Util {
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil extends Util {
static days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
static getToday() {
}
}
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
class DateUtil extends Util {
static days = ['Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday','Saturday']
static getToday() {
}
}
// A way to use DateUtil
import DateUtil from 'date-util'
const dateUtil = new DateUtil()
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
This is only the beginning
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
JAVASCRIPT EVOLUTION
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
TAKEAWAYS
Front-end
Foundations
SPA - Single Page Application
Modern Front-end Workflow
JavaScript Evolution
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
IS IT A TREND?
WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
Any questions?
Q&A
anlpnguyen@kms-
technology.com
@crashbell
THANK YOU
© 2016 KMS Technology

More Related Content

Viewers also liked

Présentation spring data Matthieu Briend
Présentation spring data  Matthieu BriendPrésentation spring data  Matthieu Briend
Présentation spring data Matthieu BriendSOAT
 
Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014
KMS Technology
 
JavaScript No longer A “toy” Language
JavaScript No longer A “toy” LanguageJavaScript No longer A “toy” Language
JavaScript No longer A “toy” Language
KMS Technology
 
Technology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsTechnology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsKMS Technology
 
Technology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUITechnology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUI
KMS Technology
 
KMS' Stories
KMS' StoriesKMS' Stories
KMS' Stories
KMS Technology
 
KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...
KMS Technology
 
Cross platform mobile development with Corona
Cross platform mobile development with CoronaCross platform mobile development with Corona
Cross platform mobile development with Corona
KMS Technology
 
Caching and IPC with Redis
Caching and IPC with RedisCaching and IPC with Redis
Caching and IPC with Redis
KMS Technology
 
Git - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and ProductivityGit - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and Productivity
KMS Technology
 
About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013
KMS Technology
 
Amazon web services
Amazon web servicesAmazon web services
Amazon web services
KMS Technology
 
Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014
KMS Technology
 
Contributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarContributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project Seminar
KMS Technology
 
Mobile Development Career
Mobile Development CareerMobile Development Career
Mobile Development Career
KMS Technology
 
Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8
KMS Technology
 
Big Data Overview 2013-2014
Big Data Overview 2013-2014Big Data Overview 2013-2014
Big Data Overview 2013-2014
KMS Technology
 
Cross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinCross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and Xamarin
KMS Technology
 
Become Software Tester or Developer
Become Software Tester or DeveloperBecome Software Tester or Developer
Become Software Tester or Developer
KMS Technology
 

Viewers also liked (19)

Présentation spring data Matthieu Briend
Présentation spring data  Matthieu BriendPrésentation spring data  Matthieu Briend
Présentation spring data Matthieu Briend
 
Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014Technology Trends and Big Data in 2013-2014
Technology Trends and Big Data in 2013-2014
 
JavaScript No longer A “toy” Language
JavaScript No longer A “toy” LanguageJavaScript No longer A “toy” Language
JavaScript No longer A “toy” Language
 
Technology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsTechnology Application Development Trends For IT Students
Technology Application Development Trends For IT Students
 
Technology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUITechnology Trends 2013-2014 at HUI
Technology Trends 2013-2014 at HUI
 
KMS' Stories
KMS' StoriesKMS' Stories
KMS' Stories
 
KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...KMS story and How Vietnam to export software outsourcing services or build so...
KMS story and How Vietnam to export software outsourcing services or build so...
 
Cross platform mobile development with Corona
Cross platform mobile development with CoronaCross platform mobile development with Corona
Cross platform mobile development with Corona
 
Caching and IPC with Redis
Caching and IPC with RedisCaching and IPC with Redis
Caching and IPC with Redis
 
Git - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and ProductivityGit - Boost Your DEV Team Speed and Productivity
Git - Boost Your DEV Team Speed and Productivity
 
About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013About KMS Technology - Updated on July 2013
About KMS Technology - Updated on July 2013
 
Amazon web services
Amazon web servicesAmazon web services
Amazon web services
 
Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014
 
Contributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarContributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project Seminar
 
Mobile Development Career
Mobile Development CareerMobile Development Career
Mobile Development Career
 
Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8Developing Apps for Windows Phone 8
Developing Apps for Windows Phone 8
 
Big Data Overview 2013-2014
Big Data Overview 2013-2014Big Data Overview 2013-2014
Big Data Overview 2013-2014
 
Cross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and XamarinCross Platform Mobile Development with C# and Xamarin
Cross Platform Mobile Development with C# and Xamarin
 
Become Software Tester or Developer
Become Software Tester or DeveloperBecome Software Tester or Developer
Become Software Tester or Developer
 

More from KMS Technology

A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester
KMS Technology
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?
KMS Technology
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
KMS Technology
 
Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testing
KMS Technology
 
AWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkAWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic Beanstalk
KMS Technology
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
KMS Technology
 
KMS Introduction
KMS IntroductionKMS Introduction
KMS Introduction
KMS Technology
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberKMS Technology
 
Cross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin WebinarCross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin Webinar
KMS Technology
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
KMS Technology
 
Software Technology Trends
Software Technology TrendsSoftware Technology Trends
Software Technology Trends
KMS Technology
 
Framework For Automation Testing Practice Sharing
Framework For Automation Testing Practice SharingFramework For Automation Testing Practice Sharing
Framework For Automation Testing Practice Sharing
KMS Technology
 

More from KMS Technology (12)

A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
 
Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testing
 
AWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkAWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic Beanstalk
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
 
KMS Introduction
KMS IntroductionKMS Introduction
KMS Introduction
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
 
Cross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin WebinarCross-platform Mobile Development with C# and Xamarin Webinar
Cross-platform Mobile Development with C# and Xamarin Webinar
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
 
Software Technology Trends
Software Technology TrendsSoftware Technology Trends
Software Technology Trends
 
Framework For Automation Testing Practice Sharing
Framework For Automation Testing Practice SharingFramework For Automation Testing Practice Sharing
Framework For Automation Testing Practice Sharing
 

Recently uploaded

Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 

Recently uploaded (20)

Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 

What's new in the Front-end development nowadays?

  • 1. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? KMS TECHNOLOGY VIETNAM MAY 10TH, 2016 AN LP NGUYEN
  • 2. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? AGENDA Front-end Foundations SPA - Single Page Application Modern Front-end Workflow JavaScript Evolution
  • 3. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? FRONT-END FOUNDATIONS SPA - Single Page Application Modern Front-end Workflow JavaScript Evolution
  • 4. FRONT-END FOUNDATIONS WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 5. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? FRONT-END FOUNDATIONS SPA - Single Page Application Modern Front-end Workflow JavaScript Evolution
  • 6. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? SPA - SINGLE PAGE APPLICATION Modern Front-end Workflow JavaScript Evolution
  • 7. SPA - SINGLE PAGE APPLICATION WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 8. SPA - SINGLE PAGE APPLICATION WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? WebSocket History Animation Transition Gradient
  • 9. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? SPA - SINGLE PAGE APPLICATION Modern Front-end Workflow JavaScript Evolution
  • 10. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? MODERN FRONTEND WORKFLOW JavaScript Evolution
  • 11. MODERN FRONTEND WORKFLOW WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 12. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? MODERN FRONTEND WORKFLOW JavaScript Evolution
  • 13. MODERN FRONTEND WORKFLOW WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 14. MODERN FRONTEND WORKFLOW WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 15. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? MODERN FRONTEND WORKFLOW JavaScript Evolution
  • 16. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? JAVASCRIPT EVOLUTION
  • 17. JAVASCRIPT EVOLUTION var today; var now = new Date(); var days = new Array('Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'); var months = new Array('January','February','March', 'April','May','June','July','August', 'September','October','November','December'); var date = ((now.getDate()<10) ? "0" : "") + now.getDate(); function fourdigits(number) { return (number < 1000) ? number + 1900 : number; } today = days[now.getDay()] + ", " + months[now.getMonth()] + " " + date + ", " + (fourdigits(now.getYear())) ; console.log(today); //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 18. JAVASCRIPT EVOLUTION let today; const now = new Date(); const days = new Array('Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'); const months = new Array('January','February','March', 'April','May','June','July','August', 'September','October','November','December'); const date = ((now.getDate()<10) ? "0" : "") + now.getDate(); function fourdigits(number) { return (number < 1000) ? number + 1900 : number; } today = days[now.getDay()] + ", " + months[now.getMonth()] + " " + date + ", " + (fourdigits(now.getYear())) ; console.log(today); //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 19. JAVASCRIPT EVOLUTION let today const now = new Date() const days = new Array('Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday') const months = new Array('January','February','March', 'April','May','June','July','August', 'September','October','November','December') const date = ((now.getDate()<10) ? "0" : "") + now.getDate() function fourdigits(number) { return (number < 1000) ? number + 1900 : number } today = days[now.getDay()] + ", " + months[now.getMonth()] + " " + date + ", " + (fourdigits(now.getYear())) console.log(today) //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 20. JAVASCRIPT EVOLUTION let today const now = new Date() const days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] const months = ['January','February','March', 'April','May','June','July','August', 'September','October','November','December'] const date = ((now.getDate()<10) ? "0" : "") + now.getDate() function fourdigits(number) { return (number < 1000) ? number + 1900 : number } today = days[now.getDay()] + ", " + months[now.getMonth()] + " " + date + ", " + (fourdigits(now.getYear())) console.log(today) //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 21. JAVASCRIPT EVOLUTION let today const now = new Date() const days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] const months = ['January','February','March', 'April','May','June','July','August', 'September','October','November','December'] const date = ((now.getDate()<10) ? "0" : "") + now.getDate() function fourdigits(number) { return (number < 1000) ? number + 1900 : number } const day = days[now.getDay()] const months = months[now.getMonth()] const year = fourdigits(now.getYear()) today = day + ", " + month + " " + date + ", " + year console.log(today) //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 22. JAVASCRIPT EVOLUTION let today const now = new Date() const days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] const months = ['January','February','March', 'April','May','June','July','August', 'September','October','November','December'] const date = ((now.getDate()<10) ? "0" : "") + now.getDate() function fourdigits(number) { return (number < 1000) ? number + 1900 : number } const day = days[now.getDay()] const months = months[now.getMonth()] const year = fourdigits(now.getYear()) today = `${day}, ${month} ${date}, ${year}` console.log(today) //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 23. JAVASCRIPT EVOLUTION class DateUtil { } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 24. JAVASCRIPT EVOLUTION class DateUtil { constructor() { } } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 25. JAVASCRIPT EVOLUTION class DateUtil { constructor() { this.days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] this.months = ['January','February','March', 'April','May','June','July','August', 'September','October','November','December'] } } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 26. JAVASCRIPT EVOLUTION class DateUtil { constructor() { this.days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] this.months = ['January','February','March', 'April','May','June','July','August', 'September','October','November','December'] } fourDigits(number) { return (number < 1000) ? number + 1900 : number } getToday() { } } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 27. JAVASCRIPT EVOLUTION class DateUtil { constructor() { this.days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] this.months = ['January','February','March', 'April','May','June','July','August', 'September','October','November','December'] } fourDigits(number) { return (number < 1000) ? number + 1900 : number } getToday() { const now = new Date() const date = ((now.getDate()<10) ? "0" : "")+ now.getDate() const day = this.days[now.getDay()] const month = this.months[now.getMonth()] const year = this.fourDigits(now.getYear()) return `${day}, ${month} ${date}, ${year}` } } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 28. JAVASCRIPT EVOLUTION const dateUtil = new DateUtil() const today = dateUtil.getToday() console.log(today) //Tuesday, May 10, 2016 WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 29. JAVASCRIPT EVOLUTION class DateUtil { } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 30. JAVASCRIPT EVOLUTION class DateUtil extends Util { } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 31. JAVASCRIPT EVOLUTION class DateUtil extends Util { static days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] static getToday() { } } WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 32. JAVASCRIPT EVOLUTION class DateUtil extends Util { static days = ['Sunday','Monday','Tuesday', 'Wednesday','Thursday','Friday','Saturday'] static getToday() { } } // A way to use DateUtil import DateUtil from 'date-util' const dateUtil = new DateUtil() WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 33. JAVASCRIPT EVOLUTION This is only the beginning WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS?
  • 34. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? JAVASCRIPT EVOLUTION
  • 35. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? TAKEAWAYS Front-end Foundations SPA - Single Page Application Modern Front-end Workflow JavaScript Evolution
  • 36. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? IS IT A TREND?
  • 37. WHAT'S NEW IN THE FRONT-END DEVELOPMENT NOWADAYS? Any questions? Q&A anlpnguyen@kms- technology.com @crashbell
  • 38. THANK YOU © 2016 KMS Technology