SlideShare ist ein Scribd-Unternehmen logo
1 von 33
© 2016 Sencha Inc
Build Modern WebApps with ECMAScript 2015
and Sencha Visual Studio Code Plugin
Sandeep Adwankar
Sr. Product Manager
© 2016 Sencha Inc
More developers use JavaScript (ECMAScript) than any
other language
0% 10% 20% 30% 40% 50% 60%
JavaScript
SQL
Java
C#
PHP
Python
C++
C
Node JS
Angular JS
Ruby
Objective-C
Stack Overflow Developer Survey, March 2016
© 2016 Sencha Inc
ECMAScript Evolution
© 2016 Sencha Inc
ES5 Compatibility
© 2016 Sencha Inc
ES2015 features
• Block scoped constructs
• Default parameters
• Template Literals
• Arrow functions
• For of loop
• Promises
• Classes
• Modules
• New Methods
• …
© 2016 Sencha Inc
ES2015 Compatibility
Windows 7http://kangax.github.io/compat-table/es6/
© 2016 Sencha Inc
Building ES2015 apps
Build Tools
Cmd 6.5
Dev
Environment
Sencha VS Code
Plugin
Build
JavaScript
Framework –
Ext JS 6.0
Create
© 2016 Sencha Inc
Building ES2015 apps with Cmd 6.5
Command Line
Tools
Cmd 6.5
Dev
Environment
Sencha VS Code
Plugin
Build
JavaScript
Framework
Ext JS 6.0
Create
© 2016 Sencha Inc
Sencha Cmd 6.5
• Support for ES 6
- Use new language features (arrow functions,
classes, default params, …)
- Works with ExtJS today
- Limitations (addressed in Ext JS Next):
• Can’t extend ExtJS components via native classes
• No support for import
- Implemented via Closure Compiler
• Support for Progressive Web Apps via
automatic service worker generation
9
© 2016 Sencha Inc
ES2015 support in Sencha Cmd 6.5
• This will require tooling. Our frameworks have to
deal with legacy browsers.
• Sencha will need a transpiler to compile back to
old fashioned ES5 code.
• Our goal is to let your ES2015 code run together
with the Sencha framework code.
• Cmd is Java based! With Sencha Cmd 6.5, code
gets transpiled! Under the hood, we will use
Google Closure Compiler. (We replaced Rhino)
© 2016 Sencha Inc
Building ES2015 apps with Sencha VS Code Plugin
Command Line
Tools
Dev
Environment
Sencha
VSCode Plugin
Build
JavaScript
Framework Create
© 2016 Sencha Inc
Visual Studio Code Plugin 1.0
Sencha plugin for the fastest growing
source editor – Microsoft’s VS Code
• Code generation
• Code completion
• Code navigation
• Inspection & refactoring
• Documentation lookup
12
© 2016 Sencha Inc
Sencha Visual Studio Code Plugin
• Intellisense
• Code Generation
• Code Navigation
• Command Line Tools
• Documentation Lookup
• Debugging
© 2016 Sencha Inc
TernJS
Eclipse Visual Studio IDE VS Code
Ext JS
Sencha Cmd
Sencha Visual Studio Code Plugin Architecture
Provides language services
© 2016 Sencha Inc
IntelliSense – Code Completion
• Properties
• Keys in Configs
• xtypes
• Events
© 2016 Sencha Inc
Code Navigation
Supports code navigation for
• class name
• xtypes and other type aliases
• methods and properties
• config keys
• events
© 2016 Sencha Inc
Documentation Lookup
Supports documentation lookup (F1)
for Ext JS
• class name
• xtypes and other type aliases
• methods and properties
• config keys
• events
© 2016 Sencha Inc
Code Generation - Create New Ext JS App
© 2016 Sencha Inc
Integration with Sencha Cmd
• Watch app source code for changes
• Rebuild outputs
• Web Server is started and hosts app
• See compilation errors as they happen
© 2016 Sencha Inc
Debugging Ext JS Apps
• Microsoft’s “Debugger for Chrome”
extension
• Launch Chrome browser with remote
debugging enabled
• Attach extension to the browser
• Start debugging F5
© 2016 Sencha Inc
Cmd 6.5 and VS Code
Demo
21
© 2016 Sencha Inc
Building ECMAScript 2015 apps on Mobile
Command Line
Tools
Cmd 6.5
Dev
Environment
Sencha VS Code
Plugin
Build
JavaScript
Framework
Ext JS 6.0
Create
Cordova
• HTML, CSS, JS
• Resources
• Configuration
• Platform code
• Plugin code
© 2016 Sencha Inc
What is Apache Cordova?
• Open-source framework
• Hosted webview
• Single, shared codebase
deployed to all targets
• Plugins provide a common JS
API to access device capabilities
• About 6% of apps in stores
(13% in enterprise)
Native Wrapper
<webview>
Your JavaScript App
Cordova Plugin JS API
© 2016 Sencha Inc
Sencha Cmd for Cordova Apps
24
• Build Profiles for hybrid apps
• Preparing Cordova platform builds
• Build, Emulate and run app on device
© 2016 Sencha Inc
ES2015 and Cordova
Demo
25
© 2016 Sencha Inc
Pushing ECMAScript 2015 Code to Mobile
Command Line
Tools
Cmd 6.5
Dev
Environment
Sencha VS Code
Plugin
Build
JavaScript
Framework
Ext JS 6.0
Create
Cordova
• HTML, CSS, JS
• Resources
• Configuration
• Platform code
• Plugin code
JavaScript
Code Push
• HTML, CSS, JS
NEW
CodePush uploads your JavaScript
package to the cloud (Azure)
After building your Sencha app, run:
$ cd cordova
$ code-push release-cordova [app] [platform]
Phone asks, “Hey, Azure! Do you
have an update for me?”
Azure says, “Yup! Here’s a ZIP
with all the web assets.”
Code-Push extracts ZIP and
replaces the contents of /www
Code Push Workflow
App Store Policy
© 2016 Sencha Inc
Code Push ES2015
Demo
29
© 2016 Sencha Inc
Q & A
30
© 2016 Sencha Inc
Building Ext JS Apps with ECMAScript 2015
Using Sencha Visual Studio Code Plugin
Sandeep Adwankar
Sr. Product Manager
© 2016 Sencha Inc
Code Generation - Template Creation
• Classes
• Views
• View Models
• View Controllers
• Models
• Controllers
• Stores
© 2016 Sencha Inc
Not all ES2015 features are new to Ext devs
Some of these new ES2015 features already exist for years in Ext JS, and
they are more advanced.
ES2015
Tagged Template Templates
Ext
Ext.XTemplate
Object.is() Ext.Object.equals()
Object.assign() Ext.apply()
Promises Ext.Promise
Classes Ext.Base
Modules Ext.Loader

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

C++20 features
C++20 features C++20 features
C++20 features
 
Rest api and-crud-api
Rest api and-crud-apiRest api and-crud-api
Rest api and-crud-api
 
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry BuzdinModern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
 
Understanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple StepsUnderstanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple Steps
 
All you need to know about the JavaScript event loop
All you need to know about the JavaScript event loopAll you need to know about the JavaScript event loop
All you need to know about the JavaScript event loop
 
RPC에서 REST까지 간단한 개념소개
RPC에서 REST까지 간단한 개념소개RPC에서 REST까지 간단한 개념소개
RPC에서 REST까지 간단한 개념소개
 
Dynamically Generate a CRUD Admin Panel with Java Annotations
Dynamically Generate a CRUD Admin Panel with Java AnnotationsDynamically Generate a CRUD Admin Panel with Java Annotations
Dynamically Generate a CRUD Admin Panel with Java Annotations
 
엘라스틱서치, 로그스태시, 키바나
엘라스틱서치, 로그스태시, 키바나엘라스틱서치, 로그스태시, 키바나
엘라스틱서치, 로그스태시, 키바나
 
Spring Boot
Spring BootSpring Boot
Spring Boot
 
Advanced Json
Advanced JsonAdvanced Json
Advanced Json
 
Rest api with node js and express
Rest api with node js and expressRest api with node js and express
Rest api with node js and express
 
Running Apache Spark & Apache Zeppelin in Production
Running Apache Spark & Apache Zeppelin in ProductionRunning Apache Spark & Apache Zeppelin in Production
Running Apache Spark & Apache Zeppelin in Production
 
FS_module_functions.pptx
FS_module_functions.pptxFS_module_functions.pptx
FS_module_functions.pptx
 
[NDC2015] C++11 고급 기능 - Crow에 사용된 기법 중심으로
[NDC2015] C++11 고급 기능 - Crow에 사용된 기법 중심으로[NDC2015] C++11 고급 기능 - Crow에 사용된 기법 중심으로
[NDC2015] C++11 고급 기능 - Crow에 사용된 기법 중심으로
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
 
Elasticsearch for beginners
Elasticsearch for beginnersElasticsearch for beginners
Elasticsearch for beginners
 
Security enforcement of Java Microservices with Apiman & Keycloak
Security enforcement of Java Microservices with Apiman & KeycloakSecurity enforcement of Java Microservices with Apiman & Keycloak
Security enforcement of Java Microservices with Apiman & Keycloak
 
FE로 취업 전에 알았으면 좋았을 것들
FE로 취업 전에 알았으면 좋았을 것들FE로 취업 전에 알았으면 좋았을 것들
FE로 취업 전에 알았으면 좋았을 것들
 
Naked Performance With Clojure
Naked Performance With ClojureNaked Performance With Clojure
Naked Performance With Clojure
 
API Design- Best Practices
API Design-   Best PracticesAPI Design-   Best Practices
API Design- Best Practices
 

Ähnlich wie Building ext js apps with ES2015 using sencha visual studio code plugin

Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu
 

Ähnlich wie Building ext js apps with ES2015 using sencha visual studio code plugin (20)

Sencha Tooling - Senchacon Conference
Sencha Tooling  - Senchacon ConferenceSencha Tooling  - Senchacon Conference
Sencha Tooling - Senchacon Conference
 
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Real World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure Services
 
Introduction to ASP.NET Core
Introduction to ASP.NET CoreIntroduction to ASP.NET Core
Introduction to ASP.NET Core
 
Collision 2018: CodeStar for CICD Pipelines
Collision 2018: CodeStar for CICD PipelinesCollision 2018: CodeStar for CICD Pipelines
Collision 2018: CodeStar for CICD Pipelines
 
BelTech 2017 - Building Quality in the Browser
BelTech 2017 - Building Quality in the BrowserBelTech 2017 - Building Quality in the Browser
BelTech 2017 - Building Quality in the Browser
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
MiM asp.net core
MiM asp.net coreMiM asp.net core
MiM asp.net core
 
Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25
 
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
 
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
 
ExtJS: La piattaforma vincente (tools)
ExtJS: La piattaforma vincente (tools)ExtJS: La piattaforma vincente (tools)
ExtJS: La piattaforma vincente (tools)
 
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 developmentSharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
 
Sr sofwareengineer muzafar
Sr sofwareengineer muzafarSr sofwareengineer muzafar
Sr sofwareengineer muzafar
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
 
Criando sua primeira App Service no Azure
Criando sua primeira App Service no AzureCriando sua primeira App Service no Azure
Criando sua primeira App Service no Azure
 
ASP .Net Core SPA Templates
ASP .Net Core SPA TemplatesASP .Net Core SPA Templates
ASP .Net Core SPA Templates
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVC
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 

Mehr von Sandeep Adwankar

Mehr von Sandeep Adwankar (20)

Building Products with Data at Core
Building Products with Data at Core Building Products with Data at Core
Building Products with Data at Core
 
PWA - ADT Magazine Webinar
PWA - ADT Magazine WebinarPWA - ADT Magazine Webinar
PWA - ADT Magazine Webinar
 
Sencha Products - Coderage Conference
Sencha Products - Coderage ConferenceSencha Products - Coderage Conference
Sencha Products - Coderage Conference
 
Adding powerful ext js components to react apps
Adding powerful ext js components to react appsAdding powerful ext js components to react apps
Adding powerful ext js components to react apps
 
Sencha Tooling Presentation at Senchacon Conference
Sencha Tooling Presentation at Senchacon ConferenceSencha Tooling Presentation at Senchacon Conference
Sencha Tooling Presentation at Senchacon Conference
 
Accelerating web application development
Accelerating web application development Accelerating web application development
Accelerating web application development
 
Build great looking web app themes with themer 1.1
Build great looking web app themes with themer 1.1Build great looking web app themes with themer 1.1
Build great looking web app themes with themer 1.1
 
Create winning themes for your ext js apps
Create winning themes for your ext js appsCreate winning themes for your ext js apps
Create winning themes for your ext js apps
 
Innovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and Framework
 
Sencha Themer 1.2 and Architect 4.2
Sencha Themer 1.2 and Architect 4.2Sencha Themer 1.2 and Architect 4.2
Sencha Themer 1.2 and Architect 4.2
 
Ext JS 6.5 Launch Webinar
Ext JS 6.5 Launch WebinarExt JS 6.5 Launch Webinar
Ext JS 6.5 Launch Webinar
 
Froala - Code Rage Webinar
Froala - Code Rage WebinarFroala - Code Rage Webinar
Froala - Code Rage Webinar
 
Extreact 6.6 Launch
Extreact 6.6 LaunchExtreact 6.6 Launch
Extreact 6.6 Launch
 
Ext JS 6.6 Launch Webinar
Ext JS 6.6 Launch WebinarExt JS 6.6 Launch Webinar
Ext JS 6.6 Launch Webinar
 
Application Development Trends Webinar
Application Development Trends WebinarApplication Development Trends Webinar
Application Development Trends Webinar
 
Ext JS Upgrade Adviser EA Launch
Ext JS Upgrade Adviser EA LaunchExt JS Upgrade Adviser EA Launch
Ext JS Upgrade Adviser EA Launch
 
Ext Web Components - Dev Week 2019
Ext Web Components - Dev Week 2019Ext Web Components - Dev Week 2019
Ext Web Components - Dev Week 2019
 
Ext JS 6.7 Launch Webinar
Ext JS 6.7 Launch WebinarExt JS 6.7 Launch Webinar
Ext JS 6.7 Launch Webinar
 
Ext angular Launch webinar
Ext angular Launch webinarExt angular Launch webinar
Ext angular Launch webinar
 
Product Camp Silicon Valley 2018 - PM Technical Skills
Product Camp Silicon Valley 2018 - PM Technical SkillsProduct Camp Silicon Valley 2018 - PM Technical Skills
Product Camp Silicon Valley 2018 - PM Technical Skills
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM Integration
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
 
What need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java DevelopersWhat need to be mastered as AI-Powered Java Developers
What need to be mastered as AI-Powered Java Developers
 
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
The Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionThe Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion Production
 
10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf10 Essential Software Testing Tools You Need to Know About.pdf
10 Essential Software Testing Tools You Need to Know About.pdf
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024
 
AI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning Framework
 

Building ext js apps with ES2015 using sencha visual studio code plugin

  • 1. © 2016 Sencha Inc Build Modern WebApps with ECMAScript 2015 and Sencha Visual Studio Code Plugin Sandeep Adwankar Sr. Product Manager
  • 2. © 2016 Sencha Inc More developers use JavaScript (ECMAScript) than any other language 0% 10% 20% 30% 40% 50% 60% JavaScript SQL Java C# PHP Python C++ C Node JS Angular JS Ruby Objective-C Stack Overflow Developer Survey, March 2016
  • 3. © 2016 Sencha Inc ECMAScript Evolution
  • 4. © 2016 Sencha Inc ES5 Compatibility
  • 5. © 2016 Sencha Inc ES2015 features • Block scoped constructs • Default parameters • Template Literals • Arrow functions • For of loop • Promises • Classes • Modules • New Methods • …
  • 6. © 2016 Sencha Inc ES2015 Compatibility Windows 7http://kangax.github.io/compat-table/es6/
  • 7. © 2016 Sencha Inc Building ES2015 apps Build Tools Cmd 6.5 Dev Environment Sencha VS Code Plugin Build JavaScript Framework – Ext JS 6.0 Create
  • 8. © 2016 Sencha Inc Building ES2015 apps with Cmd 6.5 Command Line Tools Cmd 6.5 Dev Environment Sencha VS Code Plugin Build JavaScript Framework Ext JS 6.0 Create
  • 9. © 2016 Sencha Inc Sencha Cmd 6.5 • Support for ES 6 - Use new language features (arrow functions, classes, default params, …) - Works with ExtJS today - Limitations (addressed in Ext JS Next): • Can’t extend ExtJS components via native classes • No support for import - Implemented via Closure Compiler • Support for Progressive Web Apps via automatic service worker generation 9
  • 10. © 2016 Sencha Inc ES2015 support in Sencha Cmd 6.5 • This will require tooling. Our frameworks have to deal with legacy browsers. • Sencha will need a transpiler to compile back to old fashioned ES5 code. • Our goal is to let your ES2015 code run together with the Sencha framework code. • Cmd is Java based! With Sencha Cmd 6.5, code gets transpiled! Under the hood, we will use Google Closure Compiler. (We replaced Rhino)
  • 11. © 2016 Sencha Inc Building ES2015 apps with Sencha VS Code Plugin Command Line Tools Dev Environment Sencha VSCode Plugin Build JavaScript Framework Create
  • 12. © 2016 Sencha Inc Visual Studio Code Plugin 1.0 Sencha plugin for the fastest growing source editor – Microsoft’s VS Code • Code generation • Code completion • Code navigation • Inspection & refactoring • Documentation lookup 12
  • 13. © 2016 Sencha Inc Sencha Visual Studio Code Plugin • Intellisense • Code Generation • Code Navigation • Command Line Tools • Documentation Lookup • Debugging
  • 14. © 2016 Sencha Inc TernJS Eclipse Visual Studio IDE VS Code Ext JS Sencha Cmd Sencha Visual Studio Code Plugin Architecture Provides language services
  • 15. © 2016 Sencha Inc IntelliSense – Code Completion • Properties • Keys in Configs • xtypes • Events
  • 16. © 2016 Sencha Inc Code Navigation Supports code navigation for • class name • xtypes and other type aliases • methods and properties • config keys • events
  • 17. © 2016 Sencha Inc Documentation Lookup Supports documentation lookup (F1) for Ext JS • class name • xtypes and other type aliases • methods and properties • config keys • events
  • 18. © 2016 Sencha Inc Code Generation - Create New Ext JS App
  • 19. © 2016 Sencha Inc Integration with Sencha Cmd • Watch app source code for changes • Rebuild outputs • Web Server is started and hosts app • See compilation errors as they happen
  • 20. © 2016 Sencha Inc Debugging Ext JS Apps • Microsoft’s “Debugger for Chrome” extension • Launch Chrome browser with remote debugging enabled • Attach extension to the browser • Start debugging F5
  • 21. © 2016 Sencha Inc Cmd 6.5 and VS Code Demo 21
  • 22. © 2016 Sencha Inc Building ECMAScript 2015 apps on Mobile Command Line Tools Cmd 6.5 Dev Environment Sencha VS Code Plugin Build JavaScript Framework Ext JS 6.0 Create Cordova • HTML, CSS, JS • Resources • Configuration • Platform code • Plugin code
  • 23. © 2016 Sencha Inc What is Apache Cordova? • Open-source framework • Hosted webview • Single, shared codebase deployed to all targets • Plugins provide a common JS API to access device capabilities • About 6% of apps in stores (13% in enterprise) Native Wrapper <webview> Your JavaScript App Cordova Plugin JS API
  • 24. © 2016 Sencha Inc Sencha Cmd for Cordova Apps 24 • Build Profiles for hybrid apps • Preparing Cordova platform builds • Build, Emulate and run app on device
  • 25. © 2016 Sencha Inc ES2015 and Cordova Demo 25
  • 26. © 2016 Sencha Inc Pushing ECMAScript 2015 Code to Mobile Command Line Tools Cmd 6.5 Dev Environment Sencha VS Code Plugin Build JavaScript Framework Ext JS 6.0 Create Cordova • HTML, CSS, JS • Resources • Configuration • Platform code • Plugin code JavaScript Code Push • HTML, CSS, JS
  • 27. NEW CodePush uploads your JavaScript package to the cloud (Azure) After building your Sencha app, run: $ cd cordova $ code-push release-cordova [app] [platform] Phone asks, “Hey, Azure! Do you have an update for me?” Azure says, “Yup! Here’s a ZIP with all the web assets.” Code-Push extracts ZIP and replaces the contents of /www Code Push Workflow
  • 29. © 2016 Sencha Inc Code Push ES2015 Demo 29
  • 30. © 2016 Sencha Inc Q & A 30
  • 31. © 2016 Sencha Inc Building Ext JS Apps with ECMAScript 2015 Using Sencha Visual Studio Code Plugin Sandeep Adwankar Sr. Product Manager
  • 32. © 2016 Sencha Inc Code Generation - Template Creation • Classes • Views • View Models • View Controllers • Models • Controllers • Stores
  • 33. © 2016 Sencha Inc Not all ES2015 features are new to Ext devs Some of these new ES2015 features already exist for years in Ext JS, and they are more advanced. ES2015 Tagged Template Templates Ext Ext.XTemplate Object.is() Ext.Object.equals() Object.assign() Ext.apply() Promises Ext.Promise Classes Ext.Base Modules Ext.Loader

Hinweis der Redaktion

  1. This shows how code completion will work for Properties, xtypes, keys in configs as well as events. For instance, if you were to start typing “xtype: ” and on control space, you would be presented with a list of all available xtypes. As you continue typing, the suggestion list will filter until you arrive at the xtype you seek. At which point, you can simply select the item.
  2. This functionality enables users to quickly move throughout their application without the need for searching a tree or directory structure. With the Sencha Visual Studio Plugin installed, you can right-click (or use the standard F12 shortcut key) on any of the following and select “Go to Definition” to view an item’s definition.
  3. This functionality enables users to quickly move throughout their application without the need for searching a tree or directory structure. With the Sencha Visual Studio Plugin installed, you can right-click (or use the standard F12 shortcut key) on any of the following and select “Go to Definition” to view an item’s definition.
  4. You can create a basic project type containing an example of a Web API project configured to use Ext JS through the ‘New Project’ action.  Upon selecting it, the App Generation wizard will appear as you can see. It will be populated with Sencha Cmd location, ExtJS SDK location, theme and toolkit. You can change it as well. This will generate example application. This is an ASP.NET application utilizing Web API (for Web Services, for example), with an Ext JS application baked in the Sencha directory. You can click the ‘Run’ button (or press Control + F5) to launch the system web browser with the application hosted by IISExpress.
  5. Once an Application has been generated, you can easily start Sencha App Watch to begin development with the Sencha’s Cmd web server based on Jetty web server. To start/stop Sencha Cmd’s ‘app watch’ command at any time, simply right click on the root Ext JS application folder to display the context menu and select ‘Run Sencha App Watch’. One Cmd has started, you will see Sencha Cmd’s output in the console view and your application will be available at location provided Stop the process at any time by right clicking the Ext JS application root again and selecting ‘Stop Sencha App Watch’.
  6. Once an Application has been generated, you can easily start Sencha App Watch to begin development with the Sencha’s Cmd web server based on Jetty web server. To start/stop Sencha Cmd’s ‘app watch’ command at any time, simply right click on the root Ext JS application folder to display the context menu and select ‘Run Sencha App Watch’. One Cmd has started, you will see Sencha Cmd’s output in the console view and your application will be available at location provided Stop the process at any time by right clicking the Ext JS application root again and selecting ‘Stop Sencha App Watch’.
  7. Originally made by Nitobi and purchased by Adobe in 2011.
  8. Building great looking data-intensive web applications has never been easier with Ext JS 6.2, Themer 1.0, and Architect 4.0. Join us for our upcoming webinar where you’ll learn about: - New Calendar component that helps users easily view or manage schedules, and events - D3 Adapter, which enables you to use D3.js data visualizations in your Ext JS apps - New Material Design based theme for the Ext JS Modern Toolkit - Powerful new Grid and Pivot Grid Enhancements including the new data exporter - Sencha Themer which lets you create great-looking customized themes for your apps without writing a single line of code - Architect 4.0 which enables you to visually develop modern apps on both Ext JS Modern and Classic toolkits
  9. To add a new class (or a specific type of class: Model, Store, View, Controller, etc.) simply “right+click” on the location you want the new class to be created and select Add > New Item… > Sencha > Class (or specific type)  Enter in the name of your class and click continue. Here is an example of the output of a Model generated