SlideShare uma empresa Scribd logo
1 de 27
VFP & AJAX

 Mike Feltman
F1 Technologies
Agenda
•   What is AJAX            •   AJAX in 5 Minutes
•   AJAX Technologies       •   Talking AJAX to VFP
•   Putting it Altogether   •   AJAX Resources
•   AJAX vs. Classic Web
    Apps
What is AJAX
• AJAX is not a technology, it’s an acronym for a
  collection of technologies.
• AJAX is a development technique that allows web
  apps to provide a desktop app like user experience
• AJAX = Asynchronous JavaScript + XML
• Also Referred to as Web 2.0 and RIA (Rich Internet
  Applications)
AJAX Technologies
•   HTML & XHTML
•   CSS
•   DOM
•   XML & XSLT
•   XMLHTTP
•   JavaScript
HTML
•   lingua franca of the web
•   HyperText Markup Language
•   The “Content Layer” of a well designed
    website
XHTML
•   eXtensible HyperText Markup Language
•   HTML coded as well-formed XML
•   Emerging, modernized HTML standard
    supported by most browsers
CSS
• Cascading Style Sheets
• Mechanism for adding style (fonts, colors,
  formatting, etc.) to web documents.
DOM
• Document Object Model
• Object model for
  documents, not specific
  to HTML, but rarely used
  outside of that context
• Supported by modern
  browsers
XML
• eXtensible Markup Language
• “Standard” data transport format for the web
XSLT
• Extensible Stylesheet Language
  Transformations
• Stylesheet Language for XML
• Formatting Language for XML data/documents
XMLHTTP
• Object that allows (asynchronous)
  communication with the server
• Native Object in Mozzila Browsers
• COM Object in Internet Exploder
JavaScript
•   Client Side Scripting Language
•   Supported by modern browsers
•   Dynamically Typed
•   Case Sensitive
Putting it altogether
•   HTML/XHTML – Content
•   CSS – Formatting
•   DOM & JavaScript – Client Side Code
•   XML – Data
The Missing Links
• Server Programming             • XML Enabled DBMS
  Language (SPL)                   –   VFP
  –   AFP, WebConnection, etc.     –   SQL Server
  –   PHP                          –   MySQL
  –   XUL                          –   Oracle
  –   RUBY                         –   DB2
  –   Java
  –   Classic ASP
  –   ASP.NET
AJAX Technologies Redux
•   HTML & XHTML    • Server Programming
•   CSS               Language
•   DOM             • DBMS
•   XML & XSTL
•   XMLHTTP
•   JavaScript
Classic Web Application Model
Synchronous Web Application Model
AJAX Web Application Model
Asynchronous Web Application Model
Talking AJAX to VFP
• AFP (Active FoxPro Pages), Web Connection or
  any other VFP server-side scripting
  technology will suffice
• Can use classic ASP or ASP.NET but both go
  through COM with no benefit
VFP is the Ideal AJAX Server Language
•   Fast
•   Great Text Handling
•   Native DBMS
•   Great Connectivity
•   Royalty Free Deployment
AJAX in 5 Minutes
1. Attach a JavaScript function call to an event
   on an HTML object
2. Get XMLHttp Request Object
3. Start an AJAX request
4. Respond to the request on completion
5. Update the web page
Talking AJAX to VFP
1. Retrieving Data & Updating the page
  a.   From a command button
  b.   From a textbox
  c.   Using XML
2. Putting it all together with VFP business
   objects
Real World Ajax
•   Glfc.net
•   Airset.com
•   http://script.aculo.us/
•   http://openrico.org/
•   http://dojotoolkit.org/
•   http://prototype.conio.net/
Conclusion
• AJAX can be used to provide desktop like user
  experiences
• AJAX is actually old technology, but its uses
  and usability are evolving rapidly
• VFP is well-suited for use in AJAX development
Resources
• Blogs/Websites                  • Frameworks & Toolkits
  –   adaptivepath.com              –   maxkiesler.com
  –   blogs.pathf.com/agileajax     –   dojotoolkit.org
  –   ajax.phpmagazine.net          –   prototype.conio.net
  –   ajaxpatterns.com              –   script.aculo.us
• Books                             –   zk1.sourceforge.net
  – The JavaScript Anthology        –   rubyonrails.org
  – Pragmatic AJAX
Thank You
• Please remember to fill out your evals

Mais conteúdo relacionado

Mais procurados

20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally
DERlab
 

Mais procurados (20)

Tech Stack Ideas
Tech Stack IdeasTech Stack Ideas
Tech Stack Ideas
 
Webservices: connecting Joomla! with other programs.
Webservices: connecting Joomla! with other programs.Webservices: connecting Joomla! with other programs.
Webservices: connecting Joomla! with other programs.
 
Amazon.com's Web Services Opportunity
Amazon.com's Web Services OpportunityAmazon.com's Web Services Opportunity
Amazon.com's Web Services Opportunity
 
Evolution of PHP
Evolution of PHPEvolution of PHP
Evolution of PHP
 
Lesson1-How to migrate your Forms code and build HTM5 APP
Lesson1-How to migrate your Forms code and build HTM5 APPLesson1-How to migrate your Forms code and build HTM5 APP
Lesson1-How to migrate your Forms code and build HTM5 APP
 
Scaling Wordpress
Scaling WordpressScaling Wordpress
Scaling Wordpress
 
ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1
 
Why use Go for web development?
Why use Go for web development?Why use Go for web development?
Why use Go for web development?
 
Building a scalable infrastructure for social mobile web apps
Building a scalable infrastructure for social mobile web appsBuilding a scalable infrastructure for social mobile web apps
Building a scalable infrastructure for social mobile web apps
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiences
 
A 20 minute introduction to AngularJS for XPage developers
A 20 minute introduction to AngularJS for XPage developersA 20 minute introduction to AngularJS for XPage developers
A 20 minute introduction to AngularJS for XPage developers
 
Maine WordPress Meetup JSON REST API, 3/16/2016
Maine WordPress Meetup JSON REST API, 3/16/2016Maine WordPress Meetup JSON REST API, 3/16/2016
Maine WordPress Meetup JSON REST API, 3/16/2016
 
IBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with AngularjsIBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with Angularjs
 
Web forms and server side scripting
Web forms and server side scriptingWeb forms and server side scripting
Web forms and server side scripting
 
Adobe flex an overview
Adobe flex  an overviewAdobe flex  an overview
Adobe flex an overview
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.net
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
 
PHP, LAMP Stack & WordPress
PHP, LAMP Stack & WordPressPHP, LAMP Stack & WordPress
PHP, LAMP Stack & WordPress
 
Asp.net
 Asp.net Asp.net
Asp.net
 
20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally20120329 installing wordpress_3_3_1_locally
20120329 installing wordpress_3_3_1_locally
 

Semelhante a VFP & Ajax

Web Development Technologies
Web Development TechnologiesWeb Development Technologies
Web Development Technologies
Vignesh Prajapati
 
RIA with Flex & PHP - Tulsa TechFest 2009
RIA with Flex & PHP  - Tulsa TechFest 2009RIA with Flex & PHP  - Tulsa TechFest 2009
RIA with Flex & PHP - Tulsa TechFest 2009
Jason Ragsdale
 
End to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) EuropeEnd to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) Europe
Alexandre Morgaut
 
ARTDM 171, Week 2: A Brief History + Web Basics
ARTDM 171, Week 2: A Brief History + Web BasicsARTDM 171, Week 2: A Brief History + Web Basics
ARTDM 171, Week 2: A Brief History + Web Basics
Gilbert Guerrero
 

Semelhante a VFP & Ajax (20)

Ajax introduction
Ajax introductionAjax introduction
Ajax introduction
 
Web Development Technologies
Web Development TechnologiesWeb Development Technologies
Web Development Technologies
 
Ajax
AjaxAjax
Ajax
 
RIA with Flex & PHP - Tulsa TechFest 2009
RIA with Flex & PHP  - Tulsa TechFest 2009RIA with Flex & PHP  - Tulsa TechFest 2009
RIA with Flex & PHP - Tulsa TechFest 2009
 
PLAT-7 Spring Web Scripts and Spring Surf
PLAT-7 Spring Web Scripts and Spring SurfPLAT-7 Spring Web Scripts and Spring Surf
PLAT-7 Spring Web Scripts and Spring Surf
 
PLAT-7 Spring Web Scripts and Spring Surf
PLAT-7 Spring Web Scripts and Spring SurfPLAT-7 Spring Web Scripts and Spring Surf
PLAT-7 Spring Web Scripts and Spring Surf
 
High Voltage - Building Static Sites With Wordpress-Managed Content
High Voltage - Building Static Sites With Wordpress-Managed ContentHigh Voltage - Building Static Sites With Wordpress-Managed Content
High Voltage - Building Static Sites With Wordpress-Managed Content
 
End to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) EuropeEnd to-end W3C - JS.everywhere(2012) Europe
End to-end W3C - JS.everywhere(2012) Europe
 
Evolution of java script libraries
Evolution of java script librariesEvolution of java script libraries
Evolution of java script libraries
 
Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 
ARTDM 171, Week 2: A Brief History + Web Basics
ARTDM 171, Week 2: A Brief History + Web BasicsARTDM 171, Week 2: A Brief History + Web Basics
ARTDM 171, Week 2: A Brief History + Web Basics
 
Apache Content Technologies
Apache Content TechnologiesApache Content Technologies
Apache Content Technologies
 
End-to-end W3C APIs - tpac 2012
End-to-end W3C APIs - tpac 2012End-to-end W3C APIs - tpac 2012
End-to-end W3C APIs - tpac 2012
 
PLAT-8 Spring Web Scripts and Spring Surf
PLAT-8 Spring Web Scripts and Spring SurfPLAT-8 Spring Web Scripts and Spring Surf
PLAT-8 Spring Web Scripts and Spring Surf
 
Ajax
AjaxAjax
Ajax
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developers
 
QueryPath, Mash-ups, and Web Services
QueryPath, Mash-ups, and Web ServicesQueryPath, Mash-ups, and Web Services
QueryPath, Mash-ups, and Web Services
 
Web tech
Web techWeb tech
Web tech
 
Geek basics
Geek basicsGeek basics
Geek basics
 
The XML Forms Architecture
The XML Forms ArchitectureThe XML Forms Architecture
The XML Forms Architecture
 

Mais de Mike Feltman (7)

Drop acid
Drop acidDrop acid
Drop acid
 
Feltman collections
Feltman collectionsFeltman collections
Feltman collections
 
What’s new in x case 8
What’s new in x case 8What’s new in x case 8
What’s new in x case 8
 
Html and visual fox pro
Html and visual fox proHtml and visual fox pro
Html and visual fox pro
 
Error handling in visual fox pro 9
Error handling in visual fox pro 9Error handling in visual fox pro 9
Error handling in visual fox pro 9
 
Docking from a z in visual fox pro 9
Docking from a z in visual fox pro 9Docking from a z in visual fox pro 9
Docking from a z in visual fox pro 9
 
Client server
Client serverClient server
Client server
 

VFP & Ajax

  • 1. VFP & AJAX Mike Feltman F1 Technologies
  • 2. Agenda • What is AJAX • AJAX in 5 Minutes • AJAX Technologies • Talking AJAX to VFP • Putting it Altogether • AJAX Resources • AJAX vs. Classic Web Apps
  • 3. What is AJAX • AJAX is not a technology, it’s an acronym for a collection of technologies. • AJAX is a development technique that allows web apps to provide a desktop app like user experience • AJAX = Asynchronous JavaScript + XML • Also Referred to as Web 2.0 and RIA (Rich Internet Applications)
  • 4. AJAX Technologies • HTML & XHTML • CSS • DOM • XML & XSLT • XMLHTTP • JavaScript
  • 5. HTML • lingua franca of the web • HyperText Markup Language • The “Content Layer” of a well designed website
  • 6. XHTML • eXtensible HyperText Markup Language • HTML coded as well-formed XML • Emerging, modernized HTML standard supported by most browsers
  • 7. CSS • Cascading Style Sheets • Mechanism for adding style (fonts, colors, formatting, etc.) to web documents.
  • 8. DOM • Document Object Model • Object model for documents, not specific to HTML, but rarely used outside of that context • Supported by modern browsers
  • 9. XML • eXtensible Markup Language • “Standard” data transport format for the web
  • 10. XSLT • Extensible Stylesheet Language Transformations • Stylesheet Language for XML • Formatting Language for XML data/documents
  • 11. XMLHTTP • Object that allows (asynchronous) communication with the server • Native Object in Mozzila Browsers • COM Object in Internet Exploder
  • 12. JavaScript • Client Side Scripting Language • Supported by modern browsers • Dynamically Typed • Case Sensitive
  • 13. Putting it altogether • HTML/XHTML – Content • CSS – Formatting • DOM & JavaScript – Client Side Code • XML – Data
  • 14. The Missing Links • Server Programming • XML Enabled DBMS Language (SPL) – VFP – AFP, WebConnection, etc. – SQL Server – PHP – MySQL – XUL – Oracle – RUBY – DB2 – Java – Classic ASP – ASP.NET
  • 15. AJAX Technologies Redux • HTML & XHTML • Server Programming • CSS Language • DOM • DBMS • XML & XSTL • XMLHTTP • JavaScript
  • 20. Talking AJAX to VFP • AFP (Active FoxPro Pages), Web Connection or any other VFP server-side scripting technology will suffice • Can use classic ASP or ASP.NET but both go through COM with no benefit
  • 21. VFP is the Ideal AJAX Server Language • Fast • Great Text Handling • Native DBMS • Great Connectivity • Royalty Free Deployment
  • 22. AJAX in 5 Minutes 1. Attach a JavaScript function call to an event on an HTML object 2. Get XMLHttp Request Object 3. Start an AJAX request 4. Respond to the request on completion 5. Update the web page
  • 23. Talking AJAX to VFP 1. Retrieving Data & Updating the page a. From a command button b. From a textbox c. Using XML 2. Putting it all together with VFP business objects
  • 24. Real World Ajax • Glfc.net • Airset.com • http://script.aculo.us/ • http://openrico.org/ • http://dojotoolkit.org/ • http://prototype.conio.net/
  • 25. Conclusion • AJAX can be used to provide desktop like user experiences • AJAX is actually old technology, but its uses and usability are evolving rapidly • VFP is well-suited for use in AJAX development
  • 26. Resources • Blogs/Websites • Frameworks & Toolkits – adaptivepath.com – maxkiesler.com – blogs.pathf.com/agileajax – dojotoolkit.org – ajax.phpmagazine.net – prototype.conio.net – ajaxpatterns.com – script.aculo.us • Books – zk1.sourceforge.net – The JavaScript Anthology – rubyonrails.org – Pragmatic AJAX
  • 27. Thank You • Please remember to fill out your evals